1 #ifndef GCP_UTIL_REGDESCRIPTION_H
2 #define GCP_UTIL_REGDESCRIPTION_H
11 #include "gcp/util/common/ArrayMapBase.h"
12 #include "gcp/util/common/CoordAxes.h"
13 #include "gcp/util/common/CoordRange.h"
14 #include "gcp/util/common/Range.h"
15 #include "gcp/util/common/RegAxisRange.h"
17 #include "gcp/control/code/unix/libunix_src/common/genericregs.h"
76 void setTo(std::string regmap_name,
77 std::string board_name,
78 std::string block_name,
84 void setTo(std::string regmap_name,
85 std::string board_name,
86 std::string block_name,
104 friend std::ostream& gcp::util::operator<<(std::ostream& os,
211 std::string aspectName();
213 void setAspect(RegAspect aspect) {
221 std::string integName();
223 void setInteg(RegInteg integ) {
231 RegMapBlock*
block();
273 inline long oldestVisible() {
274 return oldestVisible_;
277 inline bool isFirst() {
281 void setFirst(
bool first);
282 void setOldestVisible(
long oldest);
283 void resetOldestVisible();
284 void decreaseOldestVisible(
long oldest);
285 void increaseOldestVisible(
long oldest);
291 friend class RegParser;
295 ArrayMapBase arrayMapBase_;
303 RegOutputMode outputMode_;
340 unsigned nBytePerEl_;
345 RegAxisRange* axisRange_;
360 #endif // End #ifndef GCP_UTIL_REGDESCRIPTION_H
void begin()
Definition: RegDescription.cc:634
RegMapBlock * block()
Definition: RegDescription.cc:585
Definition: CoordAxes.h:25
int startSlot(CoordRange *range=0)
Definition: RegDescription.cc:491
Coord currentCoord()
Definition: RegDescription.cc:539
std::vector< Range< unsigned > > getSlotRanges(CoordRange *range=0)
Definition: RegDescription.cc:416
CoordAxes axes()
Definition: RegDescription.h:148
void setOutputMode(RegOutputMode mode)
Definition: RegDescription.cc:380
const RegDescription & operator++()
Definition: RegDescription.cc:650
Definition: arraymap.h:63
CoordRange * getRangePtr()
Definition: RegDescription.h:141
void reset()
Definition: RegDescription.cc:169
Definition: CoordRange.h:20
ArrRegMap * regMap()
Definition: RegDescription.cc:573
int stopSlot(CoordRange *range=0)
Definition: RegDescription.cc:502
unsigned currentElement()
Definition: RegDescription.cc:666
std::string blockName()
Definition: RegDescription.cc:596
void clear()
Definition: RegDescription.cc:112
RegDescription & operator=(RegDescription &desc)
Definition: RegDescription.cc:124
void setCoord(Coord &coord)
Definition: RegDescription.cc:547
std::vector< Range< unsigned > > getElementRanges(CoordRange *range=0)
Definition: RegDescription.cc:407
void initialize()
Definition: RegDescription.cc:87
unsigned nEl(CoordRange *range=0)
Definition: RegDescription.cc:474
unsigned nByte(CoordRange *range=0)
Definition: RegDescription.cc:465
void output(OutputStream *stream, RegOutputMode mode)
Definition: RegDescription.cc:388
std::string regMapName()
Definition: RegDescription.cc:623
std::vector< Range< unsigned > > getByteRanges(CoordRange *range=0)
Definition: RegDescription.cc:433
unsigned currentSlot()
Definition: RegDescription.cc:658
bool isEnd()
Definition: RegDescription.cc:642
virtual ~RegDescription()
Definition: RegDescription.cc:161
Definition: RegDescription.h:26
unsigned fastestNel()
Definition: RegDescription.cc:705
unsigned nSlot(CoordRange *range=0)
Definition: RegDescription.cc:483
std::string boardName()
Definition: RegDescription.cc:612
RegDescription(bool archivedOnly_=false, ArrayMap *arrayMap=0)
Definition: RegDescription.cc:29
void setTo(std::string regmap_name, std::string board_name, std::string block_name, RegAspect aspect, RegInteg integ, Coord *coord=0, unsigned n=0)
Definition: arraymap.h:177
int iSlot()
Definition: RegDescription.h:186
CoordRange range()
Definition: RegDescription.h:134
bool rangeIsValid(CoordRange &range)
Definition: RegDescription.cc:513