3 #ifndef SZA_ANTENNA_CORBA_CARMADATAMAPPER_H
4 #define SZA_ANTENNA_CORBA_CARMADATAMAPPER_H
15 #include "carma/szaarrayutils/arraytemplate.h"
16 #include "carma/szaarrayutils/regtemplate.h"
24 class ArrayDataFrameManager;
33 ArrRegMap* arrRegMap_;
43 SzaRegister(
const SzaRegister& reg) {
47 SzaRegister(SzaRegister& reg) {
51 void operator=(
const SzaRegister& reg) {
52 *
this = (SzaRegister&)reg;
56 void operator=(SzaRegister& reg) {
57 arrRegMap_ = reg.arrRegMap_;
62 friend std::ostream& operator<<(std::ostream& os, SzaRegister& reg);
65 class CarmaDataMapper {
76 virtual ~CarmaDataMapper();
78 static const unsigned nSlAnt_;
79 static const unsigned nSlBase_;
80 static const unsigned nBandMax_;
81 static const unsigned nChan_;
82 static const unsigned nSlInput_;
83 static const unsigned nWbInput_;
84 static const unsigned nAntTotal_;
87 ArrayMap* newCarmaArrayMap(
void);
89 std::map<std::string, std::string> getCarmaToSzaMap();
90 void constructCarmaToSzaMap();
91 void constructCarmaToTagIdMap(std::string file);
92 std::map<unsigned, SzaRegister> getTagIdToSzaRegisterMap(sza::util::ArrayDataFrameManager* fm);
94 void addIndexedRegs(sza::util::ArrayDataFrameManager* fm,
95 std::map<unsigned, SzaRegister>& retMap);
97 void addFullyQualifiedRegs(sza::util::ArrayDataFrameManager* fm,
98 std::map<unsigned, SzaRegister>& retMap);
100 void addPartiallyQualifiedRegs(sza::util::ArrayDataFrameManager* fm,
101 std::map<unsigned, SzaRegister>& retMap);
103 void addTemplatizedRegs(sza::util::ArrayDataFrameManager* fm,
104 std::map<unsigned, SzaRegister>& retMap);
106 void addBlock(std::string carmaName, std::string szaName,
unsigned index,
107 sza::util::ArrayDataFrameManager* fm,
108 std::map<unsigned, SzaRegister>& retMap);
110 void getRanges(std::string str,
bool& oneRange,
111 sza::util::String& pref1,
unsigned& start1,
unsigned& stop1,
112 sza::util::String& pref2,
unsigned& start2,
unsigned& stop2,
113 sza::util::String& remainder);
117 std::map<std::string, std::string> carmaToSzaMap_;
119 bool tagIdToCarmaMapInitialized_;
120 std::map<unsigned, std::string> tagIdToCarmaMap_;
121 std::map<std::string, unsigned> carmaToTagIdMap_;
125 static RegBlockTemp carmaCommonDrive_[];
126 static RegBlockTemp carmaCommonLimit_[];
127 static RegBlockTemp carmaCommonLo_[];
128 static RegBlockTemp carmaCommonLocation_[];
129 static RegBlockTemp carmaCommonPoint_[];
130 static RegBlockTemp carmaCommonTrack_[];
131 static RegBlockTemp carmaCommonRx_[];
132 static RegBlockTemp carmaAntennaIf_[];
134 static RegBlockTemp szaTracker_[];
135 static RegBlockTemp szaCaltert_[];
136 static RegBlockTemp szaThermal_[];
137 static RegBlockTemp szaIfmod_[];
138 static RegBlockTemp szaYig_[];
139 static RegBlockTemp szaVaractor_[];
140 static RegBlockTemp szaRx_[];
141 static RegBlockTemp szaPmac_[];
143 static RegBoardTemp szaAntennaBoards_[];
144 static RegBoardTemp bimaAntennaBoards_[];
145 static RegBoardTemp ovroAntennaBoards_[];
153 static RegBlockTemp carmaInfo_[];
154 static RegBlockTemp carmaWeather_[];
155 static RegBlockTemp carmaDelays_[];
157 static RegBoardTemp carmaArrayBoards_[];
162 static RegBlockTemp carmaSldcBand_[];
163 static RegBoardTemp carmaSldcBoards_[];
168 static RegBlockTemp carmaWbdcBand_[];
169 static RegBoardTemp carmaWbdcBoards_[];
174 static RegBlockTemp carmaCorrBand_[];
175 static RegBlockTemp carmaCorrInfo_[];
176 static RegBoardTemp carmaCorrBoards_[];
181 static RegBlockTemp carmaSubarrayInfo_[];
182 static RegBoardTemp carmaSubarrayBoards_[];
187 static RegBlockTemp carmaAntennaInfo_[];
188 static RegBoardTemp carmaControlBoards_[];
193 static RegTemp carmaRegTemplates_[];
198 std::ostream& operator<<(std::ostream& os, SzaRegister& reg);
206 #endif // End #ifndef SZA_ANTENNA_CORBA_CARMADATAMAPPER_H
......................................................................
......................................................................
......................................................................
Tagged: Wed May 12 09:30:13 PDT 2004.