My Project
 All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
RegisterSet.h
Go to the documentation of this file.
1 #ifndef GCP_UTIL_REGISTERSET_H
2 #define GCP_UTIL_REGISTERSET_H
3 
11 #include "gcp/util/common/ArrayMapBase.h"
12 
13 #include "gcp/control/code/unix/libunix_src/common/regset.h"
14 
15 namespace gcp {
16  namespace util {
17 
18  // Wrapper class around gcp::control::RegSet for managing sets of
19  // registers
20 
21  class RegisterSet {
22  public:
23 
27  RegisterSet(ArrayMap* arrayMap=NULL, bool archivedOnly_=false);
28 
32  virtual ~RegisterSet();
33 
37  void addRegister(RegDescription& desc);
38  void addRegister(RegDescription* desc);
39 
43  void addRegisters(std::vector<RegDescription>& regs);
44 
48  inline RegSet* regSet() {
49  return regSet_;
50  }
51 
56 
60  void operator=(RegisterSet const& registerSet);
61 
65  void reset();
66 
67  inline bool archivedOnly() {
68  return archivedOnly_;
69  }
70 
71  private:
72 
73  // An array map
74 
75  ArrayMapBase arrayMap_;
76 
77  RegSet* regSet_;
78 
79  bool archivedOnly_;
80 
81  }; // End class RegisterSet
82 
83  } // End namespace util
84 } // End namespace gcp
85 
86 
87 
88 
89 #endif // End #ifndef GCP_UTIL_REGISTERSET_H
RegSet * regSet()
Definition: RegisterSet.h:48
Definition: RegisterSet.h:21
virtual ~RegisterSet()
Definition: RegisterSet.cc:21
void addRegisters(std::vector< RegDescription > &regs)
Definition: RegisterSet.cc:50
void reset()
Definition: RegisterSet.cc:60
RegisterSet(ArrayMap *arrayMap=NULL, bool archivedOnly_=false)
Definition: RegisterSet.cc:11
void operator=(RegisterSet const &registerSet)
Definition: RegisterSet.cc:79
bool operator==(RegisterSet &regSet)
Definition: RegisterSet.cc:69
Definition: RegDescription.h:26
void addRegister(RegDescription &desc)
Definition: RegisterSet.cc:30
Definition: regset.c:17
Definition: arraymap.h:177