21 #define ARRAYMAP_REVISION 1
41 int find_ArrRegMapReg(
ArrayMap* arraymap,
42 std::string regmap_name, std::string board_name, std::string block_name,
43 RegAspect facet,
unsigned index,
unsigned n,
46 int init_ArrRegMapReg(
ArrayMap* arraymap,
47 unsigned regmap,
unsigned board,
unsigned block,
48 unsigned index,
unsigned nreg, RegAspect aspect,
51 RegValidity input_ArrRegMapReg(
InputStream *stream,
int tell,
52 ArrayMap* arraymap, RegInputMode mode,
64 char name[REG_NAME_LEN+1];
65 std::string* comment_;
86 ArrRegMap(
ArrayMap* parent,
void* vregtemp,
unsigned iRegMap,
bool addDefaults=
true);
96 int byteOffsetInArcArrayMap() {
100 int byteOffsetInWholeArrayMap() {
106 int byteOffsetInArrayMap(
bool archivedOnly) {
107 return archivedOnly ? byteOffsetInArcArrayMap() :
108 byteOffsetInWholeArrayMap();
118 int byteOffsetInArrayMapOf(
bool archivedOnly,
127 int slotOffsetInArcArrayMap() {
131 int slotOffsetInWholeArrayMap() {
137 int slotOffsetInArrayMap(
bool archivedOnly) {
138 return archivedOnly ? slotOffsetInArcArrayMap() :
139 slotOffsetInWholeArrayMap();
149 int slotOffsetInArrayMapOf(
bool archivedOnly,
158 unsigned nByte() {
return regmap->nByte();};
159 unsigned nArcByte() {
return regmap->nArcByte();};
163 int nByte(
bool archivedOnly) {
164 return archivedOnly ? nArcByte() : nByte();
169 std::vector<RegMapBoard*> matchRegMapBoard(std::string regExpString);
170 std::vector<RegMapBoard*> matchRegMapBoard(std::string regExpString,
179 std::vector<ArrRegMap*> regmaps;
186 std::map<std::string, ArrRegMap*> mapOfRegmaps_;
196 ArrayMap(
void* vtmp,
bool addDefaults=
true);
205 int byteOffsetInArcArrayMapOf(std::string regmap, std::string board,
209 int byteOffsetInWholeArrayMapOf(std::string regmap, std::string board,
215 int byteOffsetOf(
bool archivedOnly, std::string regmap, std::string board,
219 return archivedOnly ?
220 byteOffsetInArcArrayMapOf(regmap, board, block, coord) :
221 byteOffsetInWholeArrayMapOf(regmap, board, block, coord);
226 int byteOffsetInArcArrayMapOf(
ArrRegMap* aregmap, RegMapBlock* block,
229 int byteOffsetInWholeArrayMapOf(
ArrRegMap* aregmap, RegMapBlock* block,
234 int byteOffsetOf(
bool archivedOnly,
ArrRegMap* aregmap, RegMapBlock* block,
237 return archivedOnly ? byteOffsetInArcArrayMapOf(aregmap, block, coord) :
238 byteOffsetInWholeArrayMapOf(aregmap, block, coord);
251 int slotOffsetOf(
bool archivedOnly,
ArrRegMap* aregmap, RegMapBlock* block,
268 int slotOffsetOf(
bool archivedOnly,
269 std::string regmap, std::string board, std::string block,
272 return archivedOnly ?
279 int nByte(
bool archivedOnly) {
280 return archivedOnly ? nArcByte_ : nByte_;
285 int nReg(
bool archivedOnly) {
286 return archivedOnly ? narchive : nreg;
292 std::string block_name,
297 std::string board_name,
314 void print(
bool archivedOnly);
316 std::vector<std::string> getRegisters(
bool archivedOnly);
335 RegMapBlock* find_ArrayMapBlock(
ArrayMap *arraymap, std::string regmap_name,
336 std::string board_name, std::string block_name);
ArrayMap(void *vtmp, bool addDefaults=true)
Definition: arraymap.c:30
int slotOffsetInWholeArrayMapOf(RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1567
Definition: arraymap.h:63
Definition: CoordRange.h:20
~ArrayMap()
Definition: arraymap.c:132
ArrRegMap * findArrRegMap(RegMap *regmapPtr)
Definition: arraymap.c:1327
ArrRegMap()
Definition: arraymap.c:1429
int byteOffsetInArcArrayMapOf(RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1540
int slotOffsetInArcArrayMapOf(ArrRegMap *aregmap, RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1222
std::vector< ArrRegMap * > matchArrRegMap(std::string regExpString)
Definition: arraymap.c:224
Definition: arraymap.h:36
RegMap * findRegMap(std::string regmap_name, bool doThrow=false)
Definition: arraymap.c:1351
int slotOffsetInArcArrayMapOf(RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1558
int slotOffsetInWholeArrayMapOf(ArrRegMap *aregmap, RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1238
RegMapBlock * findArrayMapBlock(std::string regmap_name, std::string board_name, std::string block_name, bool doThrow=false)
Definition: arraymap.c:1289
~ArrRegMap()
Definition: arraymap.c:1446
RegMapBoard * findArrayMapBoard(std::string regmap_name, std::string board_name, bool doThrow=false)
Definition: arraymap.c:1307
int byteOffsetInWholeArrayMapOf(RegMapBlock *block, gcp::util::Coord *coord=0)
Definition: arraymap.c:1549
Definition: arraymap.h:177