Changeset 4403 in ntrip
- Timestamp:
- Jul 8, 2012, 11:35:48 AM (13 years ago)
- Location:
- trunk/BNC/src
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/src/RTCM/GPSDecoder.cpp
r4401 r4403 92 92 // 93 93 ////////////////////////////////////////////////////////////////////////////// 94 void t_obs::setMeasdata(const QString& rnxStr, double value) { 95 int iEntry = -1; 96 measdata(rnxStr, &iEntry); 97 if (iEntry != -1) { 98 _measdata[iEntry] = value; 94 void t_obs::setMeasdata(const QString& rnxStr, float rnxVers, double value) { 95 int ie = iEntry(rnxStr, rnxVers); 96 if (ie != -1) { 97 _measdata[ie] = value; 99 98 } 100 99 } … … 102 101 // 103 102 ////////////////////////////////////////////////////////////////////////////// 104 double t_obs::measdata(const QString& rnxStr, int* p_iEntry) const { 105 106 int iEntry = -1; 103 double t_obs::measdata(const QString& rnxStr, float rnxVers) const { 104 int ie = iEntry(rnxStr, rnxVers); 105 if (ie != -1) { 106 return _measdata[ie]; 107 } 108 else { 109 return 0.0; 110 } 111 } 112 113 // 114 ////////////////////////////////////////////////////////////////////////////// 115 int t_obs::iEntry(const QString& rnxStr, float rnxVers) const { 116 117 int retVal = -1; 107 118 108 119 // GPS 109 120 // --- 110 121 if (satSys == 'G') { 111 if (rnxStr == "C1") iEntry= GNSSENTRY_C1NDATA;112 else if (rnxStr == "C1C") iEntry= GNSSENTRY_C1DATA;113 else if (rnxStr == "C1P" || rnxStr == "C1W") iEntry= GNSSENTRY_P1DATA;114 else if (rnxStr == "L1") iEntry= GNSSENTRY_L1NDATA;115 else if (rnxStr == "L1C") iEntry= GNSSENTRY_L1CDATA;116 else if (rnxStr == "L1P" || rnxStr == "L1W") iEntry= GNSSENTRY_L1PDATA;117 else if (rnxStr == "D1") iEntry= GNSSENTRY_D1NDATA;118 else if (rnxStr == "D1C") iEntry= GNSSENTRY_D1CDATA;119 else if (rnxStr == "D1P" || rnxStr == "D1W") iEntry= GNSSENTRY_D1PDATA;120 else if (rnxStr == "S1") iEntry= GNSSENTRY_S1NDATA;121 else if (rnxStr == "S1C") iEntry= GNSSENTRY_S1CDATA;122 else if (rnxStr == "S1P" || rnxStr == "S1W") iEntry= GNSSENTRY_S1PDATA;123 124 else if (rnxStr == "C2" || rnxStr == "C2X") iEntry= GNSSENTRY_C2DATA;125 else if (rnxStr == "C2P" || rnxStr == "C2W") iEntry= GNSSENTRY_P2DATA;126 else if (rnxStr == "L2" || rnxStr == "L2X") iEntry= GNSSENTRY_L2CDATA;127 else if (rnxStr == "L2P" || rnxStr == "L2W") iEntry= GNSSENTRY_L2PDATA;128 else if (rnxStr == "D2" || rnxStr == "D2X") iEntry= GNSSENTRY_D2CDATA;129 else if (rnxStr == "D2P" || rnxStr == "D2W") iEntry= GNSSENTRY_D2PDATA;130 else if (rnxStr == "S2" || rnxStr == "S2X") iEntry= GNSSENTRY_S2CDATA;131 else if (rnxStr == "S2P" || rnxStr == "S2W") iEntry= GNSSENTRY_S2PDATA;132 133 else if (rnxStr == "C5") iEntry= GNSSENTRY_C5DATA;134 else if (rnxStr == "D5") iEntry= GNSSENTRY_D5DATA;135 else if (rnxStr == "L5") iEntry= GNSSENTRY_L5DATA;136 else if (rnxStr == "S5") iEntry= GNSSENTRY_S5DATA;122 if (rnxStr == "C1") retVal = GNSSENTRY_C1NDATA; 123 else if (rnxStr == "C1C") retVal = GNSSENTRY_C1DATA; 124 else if (rnxStr == "C1P" || rnxStr == "C1W") retVal = GNSSENTRY_P1DATA; 125 else if (rnxStr == "L1") retVal = GNSSENTRY_L1NDATA; 126 else if (rnxStr == "L1C") retVal = GNSSENTRY_L1CDATA; 127 else if (rnxStr == "L1P" || rnxStr == "L1W") retVal = GNSSENTRY_L1PDATA; 128 else if (rnxStr == "D1") retVal = GNSSENTRY_D1NDATA; 129 else if (rnxStr == "D1C") retVal = GNSSENTRY_D1CDATA; 130 else if (rnxStr == "D1P" || rnxStr == "D1W") retVal = GNSSENTRY_D1PDATA; 131 else if (rnxStr == "S1") retVal = GNSSENTRY_S1NDATA; 132 else if (rnxStr == "S1C") retVal = GNSSENTRY_S1CDATA; 133 else if (rnxStr == "S1P" || rnxStr == "S1W") retVal = GNSSENTRY_S1PDATA; 134 135 else if (rnxStr == "C2" || rnxStr == "C2X") retVal = GNSSENTRY_C2DATA; 136 else if (rnxStr == "C2P" || rnxStr == "C2W") retVal = GNSSENTRY_P2DATA; 137 else if (rnxStr == "L2" || rnxStr == "L2X") retVal = GNSSENTRY_L2CDATA; 138 else if (rnxStr == "L2P" || rnxStr == "L2W") retVal = GNSSENTRY_L2PDATA; 139 else if (rnxStr == "D2" || rnxStr == "D2X") retVal = GNSSENTRY_D2CDATA; 140 else if (rnxStr == "D2P" || rnxStr == "D2W") retVal = GNSSENTRY_D2PDATA; 141 else if (rnxStr == "S2" || rnxStr == "S2X") retVal = GNSSENTRY_S2CDATA; 142 else if (rnxStr == "S2P" || rnxStr == "S2W") retVal = GNSSENTRY_S2PDATA; 143 144 else if (rnxStr == "C5") retVal = GNSSENTRY_C5DATA; 145 else if (rnxStr == "D5") retVal = GNSSENTRY_D5DATA; 146 else if (rnxStr == "L5") retVal = GNSSENTRY_L5DATA; 147 else if (rnxStr == "S5") retVal = GNSSENTRY_S5DATA; 137 148 } 138 149 … … 140 151 // ------- 141 152 else if (satSys == 'R') { 142 if (rnxStr == "C1C") iEntry= GNSSENTRY_C1DATA;143 else if (rnxStr == "C1P") iEntry= GNSSENTRY_P1DATA;144 else if (rnxStr == "L1C") iEntry= GNSSENTRY_L1CDATA;145 else if (rnxStr == "L1P") iEntry= GNSSENTRY_L1PDATA;146 else if (rnxStr == "D1C") iEntry= GNSSENTRY_D1CDATA;147 else if (rnxStr == "D1P") iEntry= GNSSENTRY_D1PDATA;148 else if (rnxStr == "S1C") iEntry= GNSSENTRY_S1CDATA;149 else if (rnxStr == "S1P") iEntry= GNSSENTRY_S1PDATA;150 151 else if (rnxStr == "C2C") iEntry= GNSSENTRY_C2DATA;152 else if (rnxStr == "C2P") iEntry= GNSSENTRY_P2DATA;153 else if (rnxStr == "L2C") iEntry= GNSSENTRY_L2CDATA;154 else if (rnxStr == "L2P") iEntry= GNSSENTRY_L2PDATA;155 else if (rnxStr == "D2C") iEntry= GNSSENTRY_D2CDATA;156 else if (rnxStr == "D2P") iEntry= GNSSENTRY_D2PDATA;157 else if (rnxStr == "S2C") iEntry= GNSSENTRY_S2CDATA;158 else if (rnxStr == "S2P") iEntry= GNSSENTRY_S2PDATA;153 if (rnxStr == "C1C") retVal = GNSSENTRY_C1DATA; 154 else if (rnxStr == "C1P") retVal = GNSSENTRY_P1DATA; 155 else if (rnxStr == "L1C") retVal = GNSSENTRY_L1CDATA; 156 else if (rnxStr == "L1P") retVal = GNSSENTRY_L1PDATA; 157 else if (rnxStr == "D1C") retVal = GNSSENTRY_D1CDATA; 158 else if (rnxStr == "D1P") retVal = GNSSENTRY_D1PDATA; 159 else if (rnxStr == "S1C") retVal = GNSSENTRY_S1CDATA; 160 else if (rnxStr == "S1P") retVal = GNSSENTRY_S1PDATA; 161 162 else if (rnxStr == "C2C") retVal = GNSSENTRY_C2DATA; 163 else if (rnxStr == "C2P") retVal = GNSSENTRY_P2DATA; 164 else if (rnxStr == "L2C") retVal = GNSSENTRY_L2CDATA; 165 else if (rnxStr == "L2P") retVal = GNSSENTRY_L2PDATA; 166 else if (rnxStr == "D2C") retVal = GNSSENTRY_D2CDATA; 167 else if (rnxStr == "D2P") retVal = GNSSENTRY_D2PDATA; 168 else if (rnxStr == "S2C") retVal = GNSSENTRY_S2CDATA; 169 else if (rnxStr == "S2P") retVal = GNSSENTRY_S2PDATA; 159 170 } 160 171 … … 162 173 // ------- 163 174 else if (satSys == 'E') { 164 if (rnxStr == "C1") iEntry= GNSSENTRY_C1DATA;165 else if (rnxStr == "L1") iEntry= GNSSENTRY_L1CDATA;166 else if (rnxStr == "D1") iEntry= GNSSENTRY_D1CDATA;167 else if (rnxStr == "S1") iEntry= GNSSENTRY_S1CDATA;168 169 else if (rnxStr == "C5") iEntry= GNSSENTRY_C5DATA;170 else if (rnxStr == "L5") iEntry= GNSSENTRY_L5DATA;171 else if (rnxStr == "D5") iEntry= GNSSENTRY_D5DATA;172 else if (rnxStr == "S5") iEntry= GNSSENTRY_S5DATA;173 else if (rnxStr == "C6") iEntry= GNSSENTRY_C6DATA;174 175 else if (rnxStr == "L6") iEntry= GNSSENTRY_L6DATA;176 else if (rnxStr == "D6") iEntry= GNSSENTRY_D6DATA;177 else if (rnxStr == "S6") iEntry= GNSSENTRY_S6DATA;178 179 else if (rnxStr == "C7") iEntry= GNSSENTRY_C5BDATA;180 else if (rnxStr == "L7") iEntry= GNSSENTRY_L5BDATA;181 else if (rnxStr == "D7") iEntry= GNSSENTRY_D5BDATA;182 else if (rnxStr == "S7") iEntry= GNSSENTRY_S5BDATA;183 184 else if (rnxStr == "C8") iEntry= GNSSENTRY_C5ABDATA;185 else if (rnxStr == "L8") iEntry= GNSSENTRY_L5ABDATA;186 else if (rnxStr == "D8") iEntry= GNSSENTRY_D5ABDATA;187 else if (rnxStr == "S8") iEntry= GNSSENTRY_S5ABDATA;175 if (rnxStr == "C1") retVal = GNSSENTRY_C1DATA; 176 else if (rnxStr == "L1") retVal = GNSSENTRY_L1CDATA; 177 else if (rnxStr == "D1") retVal = GNSSENTRY_D1CDATA; 178 else if (rnxStr == "S1") retVal = GNSSENTRY_S1CDATA; 179 180 else if (rnxStr == "C5") retVal = GNSSENTRY_C5DATA; 181 else if (rnxStr == "L5") retVal = GNSSENTRY_L5DATA; 182 else if (rnxStr == "D5") retVal = GNSSENTRY_D5DATA; 183 else if (rnxStr == "S5") retVal = GNSSENTRY_S5DATA; 184 else if (rnxStr == "C6") retVal = GNSSENTRY_C6DATA; 185 186 else if (rnxStr == "L6") retVal = GNSSENTRY_L6DATA; 187 else if (rnxStr == "D6") retVal = GNSSENTRY_D6DATA; 188 else if (rnxStr == "S6") retVal = GNSSENTRY_S6DATA; 189 190 else if (rnxStr == "C7") retVal = GNSSENTRY_C5BDATA; 191 else if (rnxStr == "L7") retVal = GNSSENTRY_L5BDATA; 192 else if (rnxStr == "D7") retVal = GNSSENTRY_D5BDATA; 193 else if (rnxStr == "S7") retVal = GNSSENTRY_S5BDATA; 194 195 else if (rnxStr == "C8") retVal = GNSSENTRY_C5ABDATA; 196 else if (rnxStr == "L8") retVal = GNSSENTRY_L5ABDATA; 197 else if (rnxStr == "D8") retVal = GNSSENTRY_D5ABDATA; 198 else if (rnxStr == "S8") retVal = GNSSENTRY_S5ABDATA; 188 199 } 189 200 … … 191 202 // ---- 192 203 else if (satSys == 'J') { 193 if (rnxStr == "C1" ) iEntry= GNSSENTRY_C1NDATA;194 else if (rnxStr == "C1C") iEntry= GNSSENTRY_C1DATA;195 else if (rnxStr == "C1Z") iEntry= GNSSENTRY_CSAIFDATA;196 else if (rnxStr == "L1" ) iEntry= GNSSENTRY_L1NDATA;197 else if (rnxStr == "L1C") iEntry= GNSSENTRY_L1CDATA;198 else if (rnxStr == "L1Z") iEntry= GNSSENTRY_LSAIFDATA;199 else if (rnxStr == "D1" ) iEntry= GNSSENTRY_D1NDATA;200 else if (rnxStr == "D1C") iEntry= GNSSENTRY_D1CDATA;201 else if (rnxStr == "D1Z") iEntry= GNSSENTRY_DSAIFDATA;202 else if (rnxStr == "S1" ) iEntry= GNSSENTRY_S1NDATA;203 else if (rnxStr == "S1C") iEntry= GNSSENTRY_S1CDATA;204 else if (rnxStr == "S1Z") iEntry= GNSSENTRY_SSAIFDATA;205 206 else if (rnxStr == "C2" ) iEntry= GNSSENTRY_C2DATA;207 else if (rnxStr == "L2" ) iEntry= GNSSENTRY_L2CDATA;208 else if (rnxStr == "D2" ) iEntry= GNSSENTRY_D2CDATA;209 else if (rnxStr == "S2" ) iEntry= GNSSENTRY_S2CDATA;210 211 else if (rnxStr == "C5" ) iEntry= GNSSENTRY_C5DATA;212 else if (rnxStr == "L5" ) iEntry= GNSSENTRY_L5DATA;213 else if (rnxStr == "D5" ) iEntry= GNSSENTRY_D5DATA;214 else if (rnxStr == "S5" ) iEntry= GNSSENTRY_S5DATA;215 216 else if (rnxStr == "C6" ) iEntry= GNSSENTRY_C6DATA;217 else if (rnxStr == "D6" ) iEntry= GNSSENTRY_D6DATA;218 else if (rnxStr == "L6" ) iEntry= GNSSENTRY_L6DATA;219 else if (rnxStr == "S6" ) iEntry= GNSSENTRY_S6DATA;204 if (rnxStr == "C1" ) retVal = GNSSENTRY_C1NDATA; 205 else if (rnxStr == "C1C") retVal = GNSSENTRY_C1DATA; 206 else if (rnxStr == "C1Z") retVal = GNSSENTRY_CSAIFDATA; 207 else if (rnxStr == "L1" ) retVal = GNSSENTRY_L1NDATA; 208 else if (rnxStr == "L1C") retVal = GNSSENTRY_L1CDATA; 209 else if (rnxStr == "L1Z") retVal = GNSSENTRY_LSAIFDATA; 210 else if (rnxStr == "D1" ) retVal = GNSSENTRY_D1NDATA; 211 else if (rnxStr == "D1C") retVal = GNSSENTRY_D1CDATA; 212 else if (rnxStr == "D1Z") retVal = GNSSENTRY_DSAIFDATA; 213 else if (rnxStr == "S1" ) retVal = GNSSENTRY_S1NDATA; 214 else if (rnxStr == "S1C") retVal = GNSSENTRY_S1CDATA; 215 else if (rnxStr == "S1Z") retVal = GNSSENTRY_SSAIFDATA; 216 217 else if (rnxStr == "C2" ) retVal = GNSSENTRY_C2DATA; 218 else if (rnxStr == "L2" ) retVal = GNSSENTRY_L2CDATA; 219 else if (rnxStr == "D2" ) retVal = GNSSENTRY_D2CDATA; 220 else if (rnxStr == "S2" ) retVal = GNSSENTRY_S2CDATA; 221 222 else if (rnxStr == "C5" ) retVal = GNSSENTRY_C5DATA; 223 else if (rnxStr == "L5" ) retVal = GNSSENTRY_L5DATA; 224 else if (rnxStr == "D5" ) retVal = GNSSENTRY_D5DATA; 225 else if (rnxStr == "S5" ) retVal = GNSSENTRY_S5DATA; 226 227 else if (rnxStr == "C6" ) retVal = GNSSENTRY_C6DATA; 228 else if (rnxStr == "D6" ) retVal = GNSSENTRY_D6DATA; 229 else if (rnxStr == "L6" ) retVal = GNSSENTRY_L6DATA; 230 else if (rnxStr == "S6" ) retVal = GNSSENTRY_S6DATA; 220 231 } 221 232 … … 223 234 // ---- 224 235 else if (satSys == 'S') { 225 if (rnxStr == "C1C") iEntry= GNSSENTRY_C1DATA;226 else if (rnxStr == "C1W") iEntry= GNSSENTRY_P1DATA;227 else if (rnxStr == "L1C") iEntry= GNSSENTRY_L1CDATA;228 else if (rnxStr == "L1W") iEntry= GNSSENTRY_L1PDATA;229 else if (rnxStr == "D1C") iEntry= GNSSENTRY_D1CDATA;230 else if (rnxStr == "D1W") iEntry= GNSSENTRY_D1PDATA;231 else if (rnxStr == "S1C") iEntry= GNSSENTRY_S1CDATA;232 else if (rnxStr == "S1W") iEntry= GNSSENTRY_S1PDATA;233 234 else if (rnxStr == "C5" ) iEntry= GNSSENTRY_C5DATA;235 else if (rnxStr == "L5" ) iEntry= GNSSENTRY_L5DATA;236 else if (rnxStr == "D5" ) iEntry= GNSSENTRY_D5DATA;237 else if (rnxStr == "S5" ) iEntry= GNSSENTRY_S5DATA;236 if (rnxStr == "C1C") retVal = GNSSENTRY_C1DATA; 237 else if (rnxStr == "C1W") retVal = GNSSENTRY_P1DATA; 238 else if (rnxStr == "L1C") retVal = GNSSENTRY_L1CDATA; 239 else if (rnxStr == "L1W") retVal = GNSSENTRY_L1PDATA; 240 else if (rnxStr == "D1C") retVal = GNSSENTRY_D1CDATA; 241 else if (rnxStr == "D1W") retVal = GNSSENTRY_D1PDATA; 242 else if (rnxStr == "S1C") retVal = GNSSENTRY_S1CDATA; 243 else if (rnxStr == "S1W") retVal = GNSSENTRY_S1PDATA; 244 245 else if (rnxStr == "C5" ) retVal = GNSSENTRY_C5DATA; 246 else if (rnxStr == "L5" ) retVal = GNSSENTRY_L5DATA; 247 else if (rnxStr == "D5" ) retVal = GNSSENTRY_D5DATA; 248 else if (rnxStr == "S5" ) retVal = GNSSENTRY_S5DATA; 238 249 } 239 250 … … 241 252 // ------- 242 253 else if (satSys == 'C') { 243 if (rnxStr == "C2I") iEntry = GNSSENTRY_CB1DATA; 244 else if (rnxStr == "L2I") iEntry = GNSSENTRY_LB1DATA; 245 else if (rnxStr == "D2I") iEntry = GNSSENTRY_DB1DATA; 246 else if (rnxStr == "S2I") iEntry = GNSSENTRY_SB1DATA; 247 248 else if (rnxStr == "C6I") iEntry = GNSSENTRY_CB3DATA; 249 else if (rnxStr == "L6I") iEntry = GNSSENTRY_LB3DATA; 250 else if (rnxStr == "D6I") iEntry = GNSSENTRY_DB3DATA; 251 else if (rnxStr == "S6I") iEntry = GNSSENTRY_SB3DATA; 252 253 else if (rnxStr == "C7I") iEntry = GNSSENTRY_CB2DATA; 254 else if (rnxStr == "L7I") iEntry = GNSSENTRY_LB2DATA; 255 else if (rnxStr == "D7I") iEntry = GNSSENTRY_DB2DATA; 256 else if (rnxStr == "S7I") iEntry = GNSSENTRY_SB2DATA; 257 } 258 259 // Set iEntry pointer if required 260 // ------------------------------ 261 if (p_iEntry) { 262 *p_iEntry = iEntry; 263 } 264 265 // Return the value if found 266 // ------------------------- 267 if (iEntry != -1) { 268 return _measdata[iEntry]; 269 } 270 else { 271 return 0.0; 272 } 273 } 274 254 if (rnxStr == "C2I") retVal = GNSSENTRY_CB1DATA; 255 else if (rnxStr == "L2I") retVal = GNSSENTRY_LB1DATA; 256 else if (rnxStr == "D2I") retVal = GNSSENTRY_DB1DATA; 257 else if (rnxStr == "S2I") retVal = GNSSENTRY_SB1DATA; 258 259 else if (rnxStr == "C6I") retVal = GNSSENTRY_CB3DATA; 260 else if (rnxStr == "L6I") retVal = GNSSENTRY_LB3DATA; 261 else if (rnxStr == "D6I") retVal = GNSSENTRY_DB3DATA; 262 else if (rnxStr == "S6I") retVal = GNSSENTRY_SB3DATA; 263 264 else if (rnxStr == "C7I") retVal = GNSSENTRY_CB2DATA; 265 else if (rnxStr == "L7I") retVal = GNSSENTRY_LB2DATA; 266 else if (rnxStr == "D7I") retVal = GNSSENTRY_DB2DATA; 267 else if (rnxStr == "S7I") retVal = GNSSENTRY_SB2DATA; 268 } 269 270 return retVal; 271 } 272 -
trunk/BNC/src/RTCM/GPSDecoder.h
r4393 r4403 50 50 _dataflags = 0; 51 51 _dataflags2 = 0; 52 for (int i Entry = 0; iEntry < GNSSENTRY_NUMBER; iEntry++) {53 _measdata[i Entry] = 0.0;54 _codetype[i Entry] = 0;52 for (int ie = 0; ie < GNSSENTRY_NUMBER; ie++) { 53 _measdata[ie] = 0.0; 54 _codetype[ie] = 0; 55 55 } 56 56 slip_cnt_L1 = -1; … … 61 61 ~t_obs() {} 62 62 63 double measdata(const QString& rnxStr, int* iEntry = 0) const;64 void setMeasdata(const QString& rnxStr, double value);63 double measdata(const QString& rnxStr, float rnxVer) const; 64 void setMeasdata(const QString& rnxStr, float rnxVer, double value); 65 65 66 66 char StatID[20+1]; // Station ID … … 79 79 unsigned int _dataflags2; // GNSSDF2_xxx */ 80 80 const char* _codetype[GNSSENTRY_NUMBER]; 81 82 private: 83 int iEntry(const QString& rnxStr, float rnxVer) const; 81 84 }; 82 85 -
trunk/BNC/src/RTCM/RTCM2Decoder.cpp
r4391 r4403 148 148 obs.GPSWeek = epochWeek; 149 149 obs.GPSWeeks = epochSecs; 150 obs.setMeasdata("C1", _ObsBlock.rng_C1[iSat]);151 obs.setMeasdata("P1", _ObsBlock.rng_P1[iSat]);152 obs.setMeasdata("P2", _ObsBlock.rng_P2[iSat]);153 obs.setMeasdata("L1", _ObsBlock.resolvedPhase_L1(iSat));154 obs.setMeasdata("L2", _ObsBlock.resolvedPhase_L2(iSat));150 obs.setMeasdata("C1", 2.0, _ObsBlock.rng_C1[iSat]); 151 obs.setMeasdata("P1", 2.0, _ObsBlock.rng_P1[iSat]); 152 obs.setMeasdata("P2", 2.0, _ObsBlock.rng_P2[iSat]); 153 obs.setMeasdata("L1", 2.0, _ObsBlock.resolvedPhase_L1(iSat)); 154 obs.setMeasdata("L2", 2.0, _ObsBlock.resolvedPhase_L2(iSat)); 155 155 obs.slip_cnt_L1 = _ObsBlock.slip_L1[iSat]; 156 156 obs.slip_cnt_L2 = _ObsBlock.slip_L2[iSat]; … … 368 368 switch (ii) { 369 369 case 0: // --- L1 --- 370 new_obs->setMeasdata("L1", *obsVal / LAMBDA_1);370 new_obs->setMeasdata("L1", 2.0, *obsVal / LAMBDA_1); 371 371 new_obs->slip_cnt_L1 = corr->lock1; 372 372 break; 373 373 case 1: // --- L2 --- 374 new_obs->setMeasdata("L2", *obsVal / LAMBDA_2);374 new_obs->setMeasdata("L2", 2.0, *obsVal / LAMBDA_2); 375 375 new_obs->slip_cnt_L2 = corr->lock2; 376 376 break; 377 377 case 2: // --- C1 / P1 --- 378 378 if ( corr->Pind1 ) 379 new_obs->setMeasdata("P1", *obsVal);379 new_obs->setMeasdata("P1", 2.0, *obsVal); 380 380 else 381 new_obs->setMeasdata("C1", *obsVal);381 new_obs->setMeasdata("C1", 2.0, *obsVal); 382 382 break; 383 383 case 3: // --- C2 / P2 --- 384 384 if ( corr->Pind2 ) 385 new_obs->setMeasdata("P2", *obsVal);385 new_obs->setMeasdata("P2", 2.0, *obsVal); 386 386 else 387 new_obs->setMeasdata("C2", *obsVal);387 new_obs->setMeasdata("C2", 2.0, *obsVal); 388 388 break; 389 389 default: -
trunk/BNC/src/bncpppclient.cpp
r4391 r4403 160 160 // -------------------- 161 161 if (obs.satSys == 'G') { 162 double C1C = obs.measdata("C1C"); 163 double C1P = obs.measdata("C1P"); 164 double C2C = obs.measdata("C2C"); 165 double C2P = obs.measdata("C2P"); 166 double L1 = obs.measdata("L1"); 167 double L2 = obs.measdata("L2"); 168 if ( (C1P || C1C) && (C2P || C2C) && L1 && L2 ) { 162 double C1 = obs.measdata("C1", 2.0); 163 double P1 = obs.measdata("P1", 2.0); 164 double P2 = obs.measdata("P2", 2.0); 165 double L1 = obs.measdata("L1", 2.0); 166 double L2 = obs.measdata("L2", 2.0); 167 if ( (C1 || P1) && P2 && L1 && L2 ) { 169 168 double f1 = t_CST::freq1; 170 169 double f2 = t_CST::freq2; 171 170 double c1 = f1 * f1 / (f1 * f1 - f2 * f2); 172 171 double c2 = - f2 * f2 / (f1 * f1 - f2 * f2); 173 if ( C1P) {174 satData->P1 = C1P+ (bb ? bb->p1 : 0.0);172 if (P1) { 173 satData->P1 = P1 + (bb ? bb->p1 : 0.0); 175 174 } 176 175 else { 177 satData->P1 = C1C + (bb ? bb->c1 : 0.0); 178 } 179 if (C2P) { 180 satData->P2 = C2P + (bb ? bb->p2 : 0.0); 181 } 182 else { 183 satData->P2 = C2C; 184 } 176 satData->P1 = C1 + (bb ? bb->c1 : 0.0); 177 } 178 satData->P2 = P2 + (bb ? bb->p2 : 0.0); 179 185 180 satData->L1 = L1 * t_CST::c / f1; 186 181 satData->L2 = L2 * t_CST::c / f2; … … 199 194 // ------------------------ 200 195 else if (obs.satSys == 'R') { 201 double C1 C = obs.measdata("C1C");202 double C1P = obs.measdata("C1P");203 double C2 C = obs.measdata("C2C");204 double C2P = obs.measdata("C2P");205 double L1 = obs.measdata("L1");206 double L2 = obs.measdata("L2");207 if ( ( C1P || C1C) && (C2P || C2C) && L1 && L2 ) {196 double C1 = obs.measdata("C1", 2.0); 197 double P1 = obs.measdata("P1", 2.0); 198 double C2 = obs.measdata("C2", 2.0); 199 double P2 = obs.measdata("P2", 2.0); 200 double L1 = obs.measdata("L1", 2.0); 201 double L2 = obs.measdata("L2", 2.0); 202 if ( (P1 || C1) && (P2 || P2) && L1 && L2 ) { 208 203 double f1 = t_CST::f1(obs.satSys, obs.slotNum); 209 204 double f2 = t_CST::f2(obs.satSys, obs.slotNum); 210 205 double c1 = f1 * f1 / (f1 * f1 - f2 * f2); 211 206 double c2 = - f2 * f2 / (f1 * f1 - f2 * f2); 212 if ( C1P) {213 satData->P1 = C1P+ (bb ? bb->p1 : 0.0);207 if (P1) { 208 satData->P1 = P1 + (bb ? bb->p1 : 0.0); 214 209 } 215 210 else { 216 satData->P1 = C1 C+ (bb ? bb->c1 : 0.0);217 } 218 if ( C2P) {219 satData->P2 = C2P+ (bb ? bb->p2 : 0.0);211 satData->P1 = C1 + (bb ? bb->c1 : 0.0); 212 } 213 if (P2) { 214 satData->P2 = P2 + (bb ? bb->p2 : 0.0); 220 215 } 221 216 else { 222 satData->P2 = C2 C;217 satData->P2 = C2; 223 218 } 224 219 satData->L1 = L1 * t_CST::c / f1; … … 238 233 // ------------------------ 239 234 else if (obs.satSys == 'E') { 240 double C1 = obs.measdata("C1" );241 double L1 = obs.measdata("L1" );242 double C5 = obs.measdata("C5" );243 double L5 = obs.measdata("L5" );235 double C1 = obs.measdata("C1", 3.0); 236 double L1 = obs.measdata("L1", 3.0); 237 double C5 = obs.measdata("C5", 3.0); 238 double L5 = obs.measdata("L5", 3.0); 244 239 if ( C1 && C5 && L1 && L5) { 245 240 double f1 = t_CST::freq1; -
trunk/BNC/src/bncrinex.cpp
r4402 r4403 698 698 // --------------- 699 699 else { 700 _out << setw(14) << setprecision(3) << obs.measdata("C1" ) << ' ' << ' '701 << setw(14) << setprecision(3) << obs.measdata("P1" ) << ' ' << ' '702 << setw(14) << setprecision(3) << obs.measdata("L1" ) << lli1 << ' '703 << setw(14) << setprecision(3) << obs.measdata("S1" ) << ' ' << ' '704 << setw(14) << setprecision(3) << obs.measdata("C2" ) << ' ' << ' ' << endl705 << setw(14) << setprecision(3) << obs.measdata("P2" ) << ' ' << ' '706 << setw(14) << setprecision(3) << obs.measdata("L2" ) << lli2 << ' '707 << setw(14) << setprecision(3) << obs.measdata("S2" ) << endl;700 _out << setw(14) << setprecision(3) << obs.measdata("C1", _rinexVers) << ' ' << ' ' 701 << setw(14) << setprecision(3) << obs.measdata("P1", _rinexVers) << ' ' << ' ' 702 << setw(14) << setprecision(3) << obs.measdata("L1", _rinexVers) << lli1 << ' ' 703 << setw(14) << setprecision(3) << obs.measdata("S1", _rinexVers) << ' ' << ' ' 704 << setw(14) << setprecision(3) << obs.measdata("C2", _rinexVers) << ' ' << ' ' << endl 705 << setw(14) << setprecision(3) << obs.measdata("P2", _rinexVers) << ' ' << ' ' 706 << setw(14) << setprecision(3) << obs.measdata("L2", _rinexVers) << lli2 << ' ' 707 << setw(14) << setprecision(3) << obs.measdata("S2", _rinexVers) << endl; 708 708 } 709 709 } … … 743 743 const QVector<QString>& types = _rnxTypes[obs.satSys]; 744 744 for (int ii = 0; ii < types.size(); ii++) { 745 str << setw(14) << setprecision(3) << obs.measdata(types[ii] ) << ' ';745 str << setw(14) << setprecision(3) << obs.measdata(types[ii], _rinexVers) << ' '; 746 746 } 747 747 … … 779 779 } 780 780 781 float rnxVers = 3.0; 782 781 783 if (obs.satSys == 'G') { // GPS 782 784 str << " 1C " 783 << obsToStr(obs.measdata("C1C" )) << ' '784 << obsToStr(obs.measdata("L1C" )) << ' '785 << obsToStr(obs.measdata("D1C" )) << ' '786 << obsToStr(obs.measdata("S1C" ), 8, 3) << ' '785 << obsToStr(obs.measdata("C1C", rnxVers)) << ' ' 786 << obsToStr(obs.measdata("L1C", rnxVers)) << ' ' 787 << obsToStr(obs.measdata("D1C", rnxVers)) << ' ' 788 << obsToStr(obs.measdata("S1C", rnxVers), 8, 3) << ' ' 787 789 << setw(2) << obs.slip_cnt_L1; 788 str << " 1 W "789 << obsToStr(obs.measdata("C1 W")) << ' '790 << obsToStr(obs.measdata("L1 W")) << ' '791 << obsToStr(obs.measdata("D1 W")) << ' '792 << obsToStr(obs.measdata("S1 W"), 8, 3) << ' '790 str << " 1P " 791 << obsToStr(obs.measdata("C1P", rnxVers)) << ' ' 792 << obsToStr(obs.measdata("L1P", rnxVers)) << ' ' 793 << obsToStr(obs.measdata("D1P", rnxVers)) << ' ' 794 << obsToStr(obs.measdata("S1P", rnxVers), 8, 3) << ' ' 793 795 << setw(2) << obs.slip_cnt_L1; 794 796 str << " 2P " 795 << obsToStr(obs.measdata("C2P")) << ' ' 796 << obsToStr(obs.measdata("L2P")) << ' ' 797 << obsToStr(obs.measdata("D2P")) << ' ' 798 << obsToStr(obs.measdata("S2P"), 8, 3) << ' ' 799 << setw(2) << obs.slip_cnt_L2; 800 str << " 2X " 801 << obsToStr(obs.measdata("C2X")) << ' ' 802 << obsToStr(obs.measdata("L2X")) << ' ' 803 << obsToStr(obs.measdata("D2X")) << ' ' 804 << obsToStr(obs.measdata("S2X"), 8, 3) << ' ' 797 << obsToStr(obs.measdata("C2P", rnxVers)) << ' ' 798 << obsToStr(obs.measdata("L2P", rnxVers)) << ' ' 799 << obsToStr(obs.measdata("D2P", rnxVers)) << ' ' 800 << obsToStr(obs.measdata("S2P", rnxVers), 8, 3) << ' ' 805 801 << setw(2) << obs.slip_cnt_L2; 806 802 str << " 5C " 807 << obsToStr(obs.measdata("C5" )) << ' '808 << obsToStr(obs.measdata("L5" )) << ' '809 << obsToStr(obs.measdata("D5" )) << ' '810 << obsToStr(obs.measdata("S5" ), 8, 3) << ' '803 << obsToStr(obs.measdata("C5", rnxVers)) << ' ' 804 << obsToStr(obs.measdata("L5", rnxVers)) << ' ' 805 << obsToStr(obs.measdata("D5", rnxVers)) << ' ' 806 << obsToStr(obs.measdata("S5", rnxVers), 8, 3) << ' ' 811 807 << setw(2) << obs.slip_cnt_L5; 812 808 } 813 809 else if (obs.satSys == 'R') { // Glonass 814 810 str << " 1C " 815 << obsToStr(obs.measdata("C1C" )) << ' '816 << obsToStr(obs.measdata("L1C" )) << ' '817 << obsToStr(obs.measdata("D1C" )) << ' '818 << obsToStr(obs.measdata("S1C" ), 8, 3) << ' '811 << obsToStr(obs.measdata("C1C", rnxVers)) << ' ' 812 << obsToStr(obs.measdata("L1C", rnxVers)) << ' ' 813 << obsToStr(obs.measdata("D1C", rnxVers)) << ' ' 814 << obsToStr(obs.measdata("S1C", rnxVers), 8, 3) << ' ' 819 815 << setw(2) << obs.slip_cnt_L1; 820 816 str << " 1P " 821 << obsToStr(obs.measdata("C1P" )) << ' '822 << obsToStr(obs.measdata("L1P" )) << ' '823 << obsToStr(obs.measdata("D1P" )) << ' '824 << obsToStr(obs.measdata("S1P" ), 8, 3) << ' '817 << obsToStr(obs.measdata("C1P", rnxVers)) << ' ' 818 << obsToStr(obs.measdata("L1P", rnxVers)) << ' ' 819 << obsToStr(obs.measdata("D1P", rnxVers)) << ' ' 820 << obsToStr(obs.measdata("S1P", rnxVers), 8, 3) << ' ' 825 821 << setw(2) << obs.slip_cnt_L1; 826 822 str << " 2P " 827 << obsToStr(obs.measdata("C2P" )) << ' '828 << obsToStr(obs.measdata("L2P" )) << ' '829 << obsToStr(obs.measdata("D2P" )) << ' '830 << obsToStr(obs.measdata("S2P" ), 8, 3) << ' '823 << obsToStr(obs.measdata("C2P", rnxVers)) << ' ' 824 << obsToStr(obs.measdata("L2P", rnxVers)) << ' ' 825 << obsToStr(obs.measdata("D2P", rnxVers)) << ' ' 826 << obsToStr(obs.measdata("S2P", rnxVers), 8, 3) << ' ' 831 827 << setw(2) << obs.slip_cnt_L2; 832 828 str << " 2C " 833 << obsToStr(obs.measdata("C2C" )) << ' '834 << obsToStr(obs.measdata("L2C" )) << ' '835 << obsToStr(obs.measdata("D2C" )) << ' '836 << obsToStr(obs.measdata("S2C" ), 8, 3) << ' '829 << obsToStr(obs.measdata("C2C", rnxVers)) << ' ' 830 << obsToStr(obs.measdata("L2C", rnxVers)) << ' ' 831 << obsToStr(obs.measdata("D2C", rnxVers)) << ' ' 832 << obsToStr(obs.measdata("S2C", rnxVers), 8, 3) << ' ' 837 833 << setw(2) << obs.slip_cnt_L2; 838 834 } 839 835 else if (obs.satSys == 'E') { // Galileo 840 836 str << " 1C " 841 << obsToStr(obs.measdata("C1" )) << ' '842 << obsToStr(obs.measdata("L1" )) << ' '843 << obsToStr(obs.measdata("D1" )) << ' '844 << obsToStr(obs.measdata("S1" ), 8, 3) << ' '837 << obsToStr(obs.measdata("C1", rnxVers)) << ' ' 838 << obsToStr(obs.measdata("L1", rnxVers)) << ' ' 839 << obsToStr(obs.measdata("D1", rnxVers)) << ' ' 840 << obsToStr(obs.measdata("S1", rnxVers), 8, 3) << ' ' 845 841 << setw(2) << obs.slip_cnt_L1; 846 842 847 843 str << " 5C " 848 << obsToStr(obs.measdata("C5" )) << ' '849 << obsToStr(obs.measdata("L5" )) << ' '850 << obsToStr(obs.measdata("D5" )) << ' '851 << obsToStr(obs.measdata("S5" ), 8, 3) << ' '844 << obsToStr(obs.measdata("C5", rnxVers)) << ' ' 845 << obsToStr(obs.measdata("L5", rnxVers)) << ' ' 846 << obsToStr(obs.measdata("D5", rnxVers)) << ' ' 847 << obsToStr(obs.measdata("S5", rnxVers), 8, 3) << ' ' 852 848 << setw(2) << obs.slip_cnt_L5; 853 849 } -
trunk/BNC/src/rinex/bncpostprocess.cpp
r4391 r4403 119 119 for (int iType = 0; iType < rnxObsFile->nTypes(obs.satSys); iType++) { 120 120 QString type = rnxObsFile->obsType(obs.satSys,iType).toAscii(); 121 obs.setMeasdata(type, rnx Sat.obs[iType]);121 obs.setMeasdata(type, rnxObsFile->version(), rnxSat.obs[iType]); 122 122 // TOOD: handle slip flags 123 123 } -
trunk/BNC/src/rinex/reqcanalyze.cpp
r4391 r4403 237 237 // Compute the Multipath 238 238 // ---------------------- 239 double L1 = obs.measdata("L1" );240 double L2 = obs.measdata("L2" );239 double L1 = obs.measdata("L1", 2.0); 240 double L2 = obs.measdata("L2", 2.0); 241 241 if (L1 != 0.0 && L2 != 0.0) { 242 242 double f1 = t_CST::f1(obs.satSys, obs.slotNum); … … 246 246 L2 = L2 * t_CST::c / f2; 247 247 248 double P1 = obs.measdata("P1" );248 double P1 = obs.measdata("P1", 2.0); 249 249 if (P1 != 0.0) { 250 250 newObs->_MP1 = P1 - L1 - 2.0*f2*f2/(f1*f1-f2*f2) * (L1 - L2); … … 258 258 //// end test 259 259 } 260 double P2 = obs.measdata("P2" );260 double P2 = obs.measdata("P2", 2.0); 261 261 if (P2 != 0.0) { 262 262 newObs->_MP2 = P2 - L2 - 2.0*f1*f1/(f1*f1-f2*f2) * (L1 - L2);
Note:
See TracChangeset
for help on using the changeset viewer.