55 SVNumXRef::SVNumXRef( )
57 NtoBMap.insert( make_pair( 1, I ));
58 NtoBMap.insert( make_pair( 2, I ));
59 NtoBMap.insert( make_pair( 3, I ));
60 NtoBMap.insert( make_pair( 4, I ));
61 NtoBMap.insert( make_pair( 5, I ));
62 NtoBMap.insert( make_pair( 6, I ));
64 NtoBMap.insert( make_pair( 8, I ));
65 NtoBMap.insert( make_pair( 9, I ));
66 NtoBMap.insert( make_pair( 10, I ));
67 NtoBMap.insert( make_pair( 11, I ));
69 NtoBMap.insert( make_pair( 13, II ));
70 NtoBMap.insert( make_pair( 14, II ));
71 NtoBMap.insert( make_pair( 15, II ));
72 NtoBMap.insert( make_pair( 16, II ));
73 NtoBMap.insert( make_pair( 17, II ));
74 NtoBMap.insert( make_pair( 18, II ));
75 NtoBMap.insert( make_pair( 19, II ));
76 NtoBMap.insert( make_pair( 20, II ));
77 NtoBMap.insert( make_pair( 21, II ));
78 NtoBMap.insert( make_pair( 22,IIA ));
79 NtoBMap.insert( make_pair( 23,IIA ));
80 NtoBMap.insert( make_pair( 24,IIA ));
81 NtoBMap.insert( make_pair( 25,IIA ));
82 NtoBMap.insert( make_pair( 26,IIA ));
83 NtoBMap.insert( make_pair( 27,IIA ));
84 NtoBMap.insert( make_pair( 28,IIA ));
85 NtoBMap.insert( make_pair( 29,IIA ));
86 NtoBMap.insert( make_pair( 30,IIA ));
87 NtoBMap.insert( make_pair( 31,IIA ));
88 NtoBMap.insert( make_pair( 32,IIA ));
89 NtoBMap.insert( make_pair( 33,IIA ));
90 NtoBMap.insert( make_pair( 34,IIA ));
91 NtoBMap.insert( make_pair( 35,IIA ));
92 NtoBMap.insert( make_pair( 36,IIA ));
93 NtoBMap.insert( make_pair( 37,IIA ));
94 NtoBMap.insert( make_pair( 38,IIA ));
95 NtoBMap.insert( make_pair( 39,IIA ));
96 NtoBMap.insert( make_pair( 40,IIA ));
97 NtoBMap.insert( make_pair( 41,IIR ));
99 NtoBMap.insert( make_pair( 43,IIR ));
100 NtoBMap.insert( make_pair( 44,IIR ));
101 NtoBMap.insert( make_pair( 45,IIR ));
102 NtoBMap.insert( make_pair( 46,IIR ));
103 NtoBMap.insert( make_pair( 47,IIR ));
104 NtoBMap.insert( make_pair( 48,IIR_M));
105 NtoBMap.insert( make_pair( 49,IIR_M));
106 NtoBMap.insert( make_pair( 50,IIR_M));
107 NtoBMap.insert( make_pair( 51,IIR ));
108 NtoBMap.insert( make_pair( 52,IIR_M));
109 NtoBMap.insert( make_pair( 53,IIR_M));
110 NtoBMap.insert( make_pair( 54,IIR ));
111 NtoBMap.insert( make_pair( 55,IIR_M));
112 NtoBMap.insert( make_pair( 56,IIR ));
113 NtoBMap.insert( make_pair( 57,IIR_M));
114 NtoBMap.insert( make_pair( 58,IIR_M));
115 NtoBMap.insert( make_pair( 59,IIR ));
116 NtoBMap.insert( make_pair( 60,IIR ));
117 NtoBMap.insert( make_pair( 61,IIR ));
118 NtoBMap.insert( make_pair( 62,IIF ));
119 NtoBMap.insert( make_pair( 63,IIF ));
120 NtoBMap.insert( make_pair( 64,IIF ));
121 NtoBMap.insert( make_pair( 65,IIF ));
122 NtoBMap.insert( make_pair( 66,IIF ));
123 NtoBMap.insert( make_pair( 67,IIF ));
124 NtoBMap.insert( make_pair( 68,IIF ));
125 NtoBMap.insert( make_pair( 69,IIF ));
126 NtoBMap.insert( make_pair( 70,IIF ));
127 NtoBMap.insert( make_pair( 71,IIF ));
128 NtoBMap.insert( make_pair( 72,IIF ));
129 NtoBMap.insert( make_pair( 73,IIF ));
130 NtoBMap.insert( make_pair( 74,III ));
131 NtoBMap.insert( make_pair( 75,III ));
132 NtoBMap.insert( make_pair( 76,III ));
133 NtoBMap.insert( make_pair( 77,III ));
138 NtoPMap.insert( std::pair<const int, XRefNode>( 1,
XRefNode( 4,
139 CivilTime( 1978, 2, 22, 0, 0, 0.0, TimeSystem::GPS),
140 CivilTime( 1985, 7, 17, 17, 30, 0.0, TimeSystem::GPS))));
141 NtoPMap.insert( std::pair<const int, XRefNode>( 2,
XRefNode( 7,
142 CivilTime( 1978, 6, 13, 0, 0, 0.0, TimeSystem::GPS),
143 CivilTime( 1988, 2, 12, 23, 59, 59.9, TimeSystem::GPS))));
144 NtoPMap.insert( std::pair<const int, XRefNode>( 3,
XRefNode( 6,
145 CivilTime( 1978, 10, 6, 0, 0, 0.0, TimeSystem::GPS),
146 CivilTime( 1992, 5, 18, 23, 41, 0.0, TimeSystem::GPS))));
147 NtoPMap.insert( std::pair<const int, XRefNode>( 4,
XRefNode( 8,
148 CivilTime( 1978, 12, 10, 0, 0, 0.0, TimeSystem::GPS),
149 CivilTime( 1990, 5, 31, 23, 59, 59.9, TimeSystem::GPS))));
150 NtoPMap.insert( std::pair<const int, XRefNode>( 5,
XRefNode( 5,
151 CivilTime( 1980, 2, 9, 0, 0, 0.0, TimeSystem::GPS),
152 CivilTime( 1984, 5, 11, 23, 59, 59.9, TimeSystem::GPS))));
153 NtoPMap.insert( std::pair<const int, XRefNode>( 6,
XRefNode( 9,
154 CivilTime( 1980, 4, 26, 0, 0, 0.0, TimeSystem::GPS),
155 CivilTime( 1991, 3, 6, 3, 42, 0.0, TimeSystem::GPS))));
157 NtoPMap.insert( std::pair<const int, XRefNode>( 8,
XRefNode( 11,
158 CivilTime( 1983, 7, 14, 0, 0, 0.0, TimeSystem::GPS),
159 CivilTime( 1993, 5, 4, 0, 20, 0.0, TimeSystem::GPS))));
160 NtoPMap.insert( std::pair<const int, XRefNode>( 9,
XRefNode( 13,
161 CivilTime( 1984, 6, 13, 0, 0, 0.0, TimeSystem::GPS),
162 CivilTime( 1993, 5, 4, 18, 17, 0.0, TimeSystem::GPS))));
163 NtoPMap.insert( std::pair<const int, XRefNode>( 10,
XRefNode( 12,
164 CivilTime( 1984, 9, 8, 0, 0, 0.0, TimeSystem::GPS),
165 CivilTime( 1996, 3, 26, 23, 59, 59.9, TimeSystem::GPS))));
166 NtoPMap.insert( std::pair<const int, XRefNode>( 11,
XRefNode( 3,
167 CivilTime( 1985, 10, 30, 0, 0, 0.0, TimeSystem::GPS),
168 CivilTime( 1994, 4, 14, 21, 0, 0.0, TimeSystem::GPS))));
170 NtoPMap.insert( std::pair<const int, XRefNode>( 13,
XRefNode( 2,
171 CivilTime( 1989, 6, 10, 0, 0, 0.0, TimeSystem::GPS),
172 CivilTime( 2004, 5, 12, 17, 1, 0.0, TimeSystem::GPS))));
173 NtoPMap.insert( std::pair<const int, XRefNode>( 14,
XRefNode( 14,
174 CivilTime( 1989, 2, 14, 0, 0, 0.0, TimeSystem::GPS),
175 CivilTime( 2000, 4, 14, 13, 47, 0.0, TimeSystem::GPS))));
176 NtoPMap.insert( std::pair<const int, XRefNode>( 15,
XRefNode( 15,
177 CivilTime( 1990, 10, 1, 0, 0, 0.0, TimeSystem::GPS),
178 CivilTime( 2007, 3, 15, 23, 59, 59.9, TimeSystem::GPS))));
179 NtoPMap.insert( std::pair<const int, XRefNode>( 16,
XRefNode( 16,
180 CivilTime( 1989, 8, 18, 0, 0, 0.0, TimeSystem::GPS),
181 CivilTime( 2000, 10, 13, 0, 45, 0.0, TimeSystem::GPS))));
182 NtoPMap.insert( std::pair<const int, XRefNode>( 17,
XRefNode( 17,
183 CivilTime( 1989, 12, 11, 0, 0, 0.0, TimeSystem::GPS),
184 CivilTime( 2005, 2, 23, 22, 0, 0.0, TimeSystem::GPS))));
185 NtoPMap.insert( std::pair<const int, XRefNode>( 18,
XRefNode( 18,
186 CivilTime( 1990, 1, 24, 0, 0, 0.0, TimeSystem::GPS),
187 CivilTime( 2000, 8, 18, 7, 42, 0.0, TimeSystem::GPS))));
188 NtoPMap.insert( std::pair<const int, XRefNode>( 19,
XRefNode( 19,
189 CivilTime( 1989, 10, 21, 0, 0, 0.0, TimeSystem::GPS),
190 CivilTime( 2001, 9, 11, 22, 0, 0.0, TimeSystem::GPS))));
191 NtoPMap.insert( std::pair<const int, XRefNode>( 20,
XRefNode( 20,
192 CivilTime( 1990, 3, 26, 0, 0, 0.0, TimeSystem::GPS),
193 CivilTime( 1996, 12, 13, 23, 59, 59.9, TimeSystem::GPS))));
194 NtoPMap.insert( std::pair<const int, XRefNode>( 21,
XRefNode( 21,
195 CivilTime( 1990, 8, 2, 0, 0, 0.0, TimeSystem::GPS),
196 CivilTime( 2003, 1, 27, 22, 0, 0.0, TimeSystem::GPS))));
197 NtoPMap.insert( std::pair<const int, XRefNode>( 22,
XRefNode( 22,
198 CivilTime( 1993, 2, 3, 0, 0, 0.0, TimeSystem::GPS),
199 CivilTime( 2003, 8, 6, 22, 0, 0.0, TimeSystem::GPS))));
200 NtoPMap.insert( std::pair<const int, XRefNode>( 23,
XRefNode( 23,
201 CivilTime( 1990, 11, 26, 0, 0, 0.0, TimeSystem::GPS),
202 CivilTime( 2004, 2, 13, 22, 0, 0.0, TimeSystem::GPS))));
204 NtoPMap.insert( std::pair<const int, XRefNode>( 23,
XRefNode( 32,
205 CivilTime( 2006, 12, 1, 0, 0, 0.0, TimeSystem::GPS),
206 CivilTime( 2016, 1, 25, 20, 0, 0.0, TimeSystem::GPS))));
207 NtoPMap.insert( std::pair<const int, XRefNode>( 24,
XRefNode( 24,
208 CivilTime( 1991, 7, 4, 0, 0, 0.0, TimeSystem::GPS),
209 CivilTime( 2011, 9, 30, 23, 59, 59.9, TimeSystem::GPS))));
210 NtoPMap.insert( std::pair<const int, XRefNode>( 25,
XRefNode( 25,
211 CivilTime( 1992, 2, 23, 0, 0, 0.0, TimeSystem::GPS),
212 CivilTime( 2009, 12, 18, 22, 28, 0.0, TimeSystem::GPS))));
214 NtoPMap.insert( std::pair<const int, XRefNode>( 26,
XRefNode( 26,
215 CivilTime( 1992, 7, 7, 0, 0, 0.0, TimeSystem::GPS),
216 CivilTime( 2015, 1, 20, 23, 59, 59.9, TimeSystem::GPS))));
219 NtoPMap.insert( std::pair<const int, XRefNode>( 27,
XRefNode( 27,
220 CivilTime( 1992, 9, 9, 0, 0, 0.0, TimeSystem::GPS),
221 CivilTime( 2011, 8, 10, 23, 59, 59.9, TimeSystem::GPS))));
223 NtoPMap.insert( std::pair<const int, XRefNode>( 27,
XRefNode( 27,
224 CivilTime( 2011, 12, 16, 22, 38, 0.0, TimeSystem::GPS),
225 CivilTime( 2012, 10, 6, 23, 59, 59.9, TimeSystem::GPS))));
227 NtoPMap.insert( std::pair<const int, XRefNode>( 27,
XRefNode( 30,
228 CivilTime( 2013, 12, 3, 0, 0, 0.0, TimeSystem::GPS),
229 CivilTime( 2013, 12, 17, 23, 59, 59.9, TimeSystem::GPS))));
231 NtoPMap.insert( std::pair<const int, XRefNode>( 27,
XRefNode( 26,
232 CivilTime( 2015, 2, 26, 0, 0, 0.0, TimeSystem::GPS),
233 CivilTime( 2015, 3, 16, 23, 59, 59.9, TimeSystem::GPS))));
234 NtoPMap.insert( std::pair<const int, XRefNode>( 28,
XRefNode( 28,
235 CivilTime( 1992, 4, 10, 0, 0, 0.0, TimeSystem::GPS),
236 CivilTime( 1997, 8, 15, 23, 59, 59.9, TimeSystem::GPS))));
237 NtoPMap.insert( std::pair<const int, XRefNode>( 29,
XRefNode( 29,
238 CivilTime( 1992, 12, 18, 0, 0, 0.0, TimeSystem::GPS),
239 CivilTime( 2007, 10, 23, 23, 59, 59.9, TimeSystem::GPS))));
240 NtoPMap.insert( std::pair<const int, XRefNode>( 30,
XRefNode( 30,
241 CivilTime( 1996, 9, 12, 0, 0, 0.0, TimeSystem::GPS),
242 CivilTime( 2011, 8, 4, 23, 59, 59.9, TimeSystem::GPS))));
243 NtoPMap.insert( std::pair<const int, XRefNode>( 31,
XRefNode( 31,
244 CivilTime( 1993, 3, 30, 0, 0, 0.0, TimeSystem::GPS),
245 CivilTime( 2005, 10, 24, 23, 59, 59.9, TimeSystem::GPS))));
246 NtoPMap.insert( std::pair<const int, XRefNode>( 32,
XRefNode( 1,
247 CivilTime( 1992, 11, 22, 0, 0, 0.0, TimeSystem::GPS),
248 CivilTime( 2008, 3, 17, 22, 0, 0.0, TimeSystem::GPS))));
250 NtoPMap.insert( std::pair<const int, XRefNode>( 32,
XRefNode( 24,
251 CivilTime( 2012, 3, 14, 0, 0, 0.0, TimeSystem::GPS),
252 CivilTime( 2012, 4, 24, 23, 59, 59.9, TimeSystem::GPS))));
254 NtoPMap.insert( std::pair<const int, XRefNode>( 32,
XRefNode( 30,
255 CivilTime( 2013, 8, 22, 0, 0, 0.0, TimeSystem::GPS),
256 CivilTime( 2013, 9, 18, 23, 59, 59.9, TimeSystem::GPS))));
258 NtoPMap.insert( std::pair<const int, XRefNode>( 32,
XRefNode( 26,
259 CivilTime( 2015, 2, 5, 0, 0, 0.0, TimeSystem::GPS),
260 CivilTime( 2015, 2, 24, 23, 59, 59.9, TimeSystem::GPS))));
263 NtoPMap.insert( std::pair<const int, XRefNode>( 33,
XRefNode( 3,
264 CivilTime( 1996, 3, 28, 0, 0, 0.0, TimeSystem::GPS),
265 CivilTime( 2014, 8, 18 , 23, 59, 59.9, TimeSystem::GPS))));
267 NtoPMap.insert( std::pair<const int, XRefNode>( 34,
XRefNode( 4,
268 CivilTime( 1993, 10, 26, 0, 0, 0.0, TimeSystem::GPS),
269 CivilTime( 2015, 11, 9, 22, 0, 0.0, TimeSystem::GPS))));
271 NtoPMap.insert( std::pair<const int, XRefNode>( 34,
XRefNode( 4,
272 CivilTime( 2016, 12, 9, 0, 0, 0.0, TimeSystem::GPS),
273 CivilTime( 2017, 1, 3, 16, 0, 0.0, TimeSystem::GPS))));
277 NtoPMap.insert( std::pair<const int, XRefNode>( 34,
XRefNode( 18,
278 CivilTime( 2018, 3, 8, 0, 0, 0.0, TimeSystem::GPS),
279 CivilTime( 2020, 3, 9, 22, 0, 0.0, TimeSystem::GPS))));
281 NtoPMap.insert( std::pair<const int, XRefNode>( 35,
XRefNode( 5,
282 CivilTime( 1993, 8, 30, 0, 0, 0.0, TimeSystem::GPS),
283 CivilTime( 2009, 3, 26, 20, 31, 0.0, TimeSystem::GPS))));
284 NtoPMap.insert( std::pair<const int, XRefNode>( 35,
XRefNode( 1,
285 CivilTime( 2011, 6, 1, 0, 0, 0.0, TimeSystem::GPS),
286 CivilTime( 2011, 7, 12, 23, 59, 59.9, TimeSystem::GPS))));
288 NtoPMap.insert( std::pair<const int, XRefNode>( 35,
XRefNode( 30,
289 CivilTime( 2011, 8, 6, 20, 0, 0.0, TimeSystem::GPS),
290 CivilTime( 2013, 5, 1, 22, 00, 0.0, TimeSystem::GPS))));
299 NtoPMap.insert( std::pair<const int, XRefNode>( 35,
XRefNode( 30,
300 CivilTime( 2013, 5, 2, 0, 0, 0.0, TimeSystem::GPS),
301 CivilTime( 2013, 5, 6, 22, 00, 0.0, TimeSystem::GPS))));
303 NtoPMap.insert( std::pair<const int, XRefNode>( 35,
XRefNode( 3,
304 CivilTime( 2014, 9, 5, 0, 0, 0.0, TimeSystem::GPS),
305 CivilTime( 2014, 10, 22, 0, 00, 0.0, TimeSystem::GPS))));
309 NtoPMap.insert( std::pair<const int, XRefNode>( 36,
XRefNode( 6,
310 CivilTime( 1995, 3, 10, 0, 0, 0.0, TimeSystem::GPS),
311 CivilTime( 2014, 3, 3, 23, 59, 59.9, TimeSystem::GPS))));
313 NtoPMap.insert( std::pair<const int, XRefNode>( 36,
XRefNode( 10,
314 CivilTime( 2015, 9, 16, 0, 0, 0.0, TimeSystem::GPS),
315 CivilTime( 2015, 10, 26, 23, 59, 59.9, TimeSystem::GPS))));
317 NtoPMap.insert( std::pair<const int, XRefNode>( 36,
XRefNode( 4,
318 CivilTime( 2017, 7, 15, 0, 0, 0.0, TimeSystem::GPS),
319 CivilTime( 2017, 11, 29, 23, 59, 59.9, TimeSystem::GPS))));
321 NtoPMap.insert( std::pair<const int, XRefNode>( 36,
XRefNode( 4,
322 CivilTime( 2018, 10, 10, 0, 0, 0.0, TimeSystem::GPS),
323 CivilTime( 2019, 1, 3, 23, 59, 59.9, TimeSystem::GPS))));
325 NtoPMap.insert( std::pair<const int, XRefNode>( 36,
XRefNode( 4,
326 CivilTime( 2019, 7, 18, 0, 0, 0.0, TimeSystem::GPS),
327 CivilTime( 2019, 10, 07, 23, 59, 59.9, TimeSystem::GPS))));
329 NtoPMap.insert( std::pair<const int, XRefNode>( 37,
XRefNode( 7,
330 CivilTime( 1993, 5, 13, 0, 0, 0.0, TimeSystem::GPS),
331 CivilTime( 2007, 7, 20, 23, 59, 59.9, TimeSystem::GPS))));
332 NtoPMap.insert( std::pair<const int, XRefNode>( 37,
XRefNode( 1,
333 CivilTime( 2008, 10, 23, 0, 0, 0.0, TimeSystem::GPS),
334 CivilTime( 2009, 1, 6, 23, 59, 59.9, TimeSystem::GPS))));
336 NtoPMap.insert( std::pair<const int, XRefNode>( 37,
XRefNode( 24,
337 CivilTime( 2012, 4, 25, 0, 0, 0.0, TimeSystem::GPS),
338 CivilTime( 2012, 8, 7, 23, 59, 59.9, TimeSystem::GPS))));
340 NtoPMap.insert( std::pair<const int, XRefNode>( 37,
XRefNode( 30,
341 CivilTime( 2013, 9, 19, 0, 0, 0.0, TimeSystem::GPS),
342 CivilTime( 2013, 12, 2, 23, 59, 59.9, TimeSystem::GPS))));
344 NtoPMap.insert( std::pair<const int, XRefNode>( 38,
XRefNode( 8,
345 CivilTime( 1997, 11, 6, 0, 0, 0.0, TimeSystem::GPS),
346 CivilTime( 2015, 4, 13, 23, 59, 59.9, TimeSystem::GPS))));
348 NtoPMap.insert( std::pair<const int, XRefNode>( 38,
XRefNode( 4,
349 CivilTime( 2017, 5, 13, 0, 0, 0.0, TimeSystem::GPS),
350 CivilTime( 2017, 7, 14, 23, 59, 59.9, TimeSystem::GPS))));
353 NtoPMap.insert( std::pair<const int, XRefNode>( 39,
XRefNode( 9,
354 CivilTime( 1993, 6, 26, 0, 0, 0.0, TimeSystem::GPS),
355 CivilTime( 2014, 5, 27, 23, 59, 59.9, TimeSystem::GPS))));
357 NtoPMap.insert( std::pair<const int, XRefNode>( 39,
XRefNode( 9,
358 CivilTime( 2014, 6, 13, 0, 0, 0.0, TimeSystem::GPS),
359 CivilTime( 2014, 8, 1, 23, 59, 59.9, TimeSystem::GPS))));
360 NtoPMap.insert( std::pair<const int, XRefNode>( 40,
XRefNode( 10,
361 CivilTime( 1996, 7, 16, 0, 0, 0.0, TimeSystem::GPS),
362 CivilTime( 2015, 8, 3, 23, 59, 59.9, TimeSystem::GPS))));
364 NtoPMap.insert( std::pair<const int, XRefNode>( 41,
XRefNode( 14,
365 CivilTime( 2000, 11, 10, 0, 0, 0.0, TimeSystem::GPS),
366 CivilTime( 2020, 7, 27, 16, 0, 0.0, TimeSystem::GPS))));
368 NtoPMap.insert( std::pair<const int, XRefNode>( 43,
XRefNode( 13,
369 CivilTime( 1997, 7, 23, 0, 0, 0.0, TimeSystem::GPS),
371 NtoPMap.insert( std::pair<const int, XRefNode>( 44,
XRefNode( 28,
372 CivilTime( 2000, 7, 16, 0, 0, 0.0, TimeSystem::GPS),
374 NtoPMap.insert( std::pair<const int, XRefNode>( 45,
XRefNode( 21,
375 CivilTime( 2003, 3, 31, 0, 0, 0.0, TimeSystem::GPS),
377 NtoPMap.insert( std::pair<const int, XRefNode>( 46,
XRefNode( 11,
378 CivilTime( 1999, 10, 7, 0, 0, 0.0, TimeSystem::GPS),
380 NtoPMap.insert( std::pair<const int, XRefNode>( 47,
XRefNode( 22,
381 CivilTime( 2003, 12, 21, 0, 0, 0.0, TimeSystem::GPS),
383 NtoPMap.insert( std::pair<const int, XRefNode>( 48,
XRefNode( 7,
384 CivilTime( 2008, 3, 15, 0, 0, 0.0, TimeSystem::GPS),
386 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 1,
387 CivilTime( 2009, 3, 24, 0, 0, 0.0, TimeSystem::GPS),
388 CivilTime( 2011, 5, 6, 16, 0, 0.0, TimeSystem::GPS))));
390 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 24,
391 CivilTime( 2012, 2, 1, 0, 0, 0.0, TimeSystem::GPS),
392 CivilTime( 2012, 3, 13, 23, 59, 59.9, TimeSystem::GPS))));
394 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 24,
395 CivilTime( 2012, 8, 8, 0, 0, 0.0, TimeSystem::GPS),
396 CivilTime( 2012, 8, 22, 23, 59, 59.9, TimeSystem::GPS))));
400 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 27,
401 CivilTime( 2012, 10, 18, 0, 0, 0.0, TimeSystem::GPS),
402 CivilTime( 2012, 12, 31, 23, 59, 59.9, TimeSystem::GPS))));
405 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 27,
406 CivilTime( 2013, 3, 27, 0, 0, 0.0, TimeSystem::GPS),
407 CivilTime( 2013, 5, 9, 16, 44, 59.9, TimeSystem::GPS))));
409 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 30,
410 CivilTime( 2013, 5, 9, 16, 45, 0.0, TimeSystem::GPS),
411 CivilTime( 2013, 8, 21, 23, 59, 59.9, TimeSystem::GPS))));
413 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 30,
414 CivilTime( 2013, 12, 18, 0, 0, 0.0, TimeSystem::GPS),
415 CivilTime( 2014, 2, 20, 23, 59, 0.0, TimeSystem::GPS))));
417 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 6,
418 CivilTime( 2014, 4, 3, 0, 0, 0.0, TimeSystem::GPS),
419 CivilTime( 2014, 5, 15, 23, 59, 59.9, TimeSystem::GPS))));
421 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 8,
422 CivilTime( 2015, 4, 30, 0, 0, 0.0, TimeSystem::GPS),
423 CivilTime( 2015, 7, 1, 16, 0, 0.0, TimeSystem::GPS))));
425 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 4,
426 CivilTime( 2016, 2, 4, 0, 0, 0.0, TimeSystem::GPS),
427 CivilTime( 2016, 12, 5, 15, 10, 0.0, TimeSystem::GPS))));
429 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 4,
430 CivilTime( 2017, 1, 5, 0, 0, 0.0, TimeSystem::GPS),
431 CivilTime( 2017, 5, 12, 23, 59, 59.9, TimeSystem::GPS))));
434 NtoPMap.insert( std::pair<const int, XRefNode>( 49,
XRefNode( 4,
435 CivilTime( 2017, 12, 1, 0, 0, 0.0, TimeSystem::GPS),
436 CivilTime( 2018, 9, 28, 23, 59, 59.9, TimeSystem::GPS))));
438 NtoPMap.insert( std::pair<const int, XRefNode>( 50,
XRefNode( 5,
439 CivilTime( 2009, 8, 27, 0, 0, 0.0, TimeSystem::GPS),
441 NtoPMap.insert( std::pair<const int, XRefNode>( 51,
XRefNode( 20,
442 CivilTime( 2000, 5, 11, 0, 0, 0.0, TimeSystem::GPS),
444 NtoPMap.insert( std::pair<const int, XRefNode>( 52,
XRefNode( 31,
445 CivilTime( 2006, 9, 25, 0, 0, 0.0, TimeSystem::GPS),
447 NtoPMap.insert( std::pair<const int, XRefNode>( 53,
XRefNode( 17,
448 CivilTime( 2005, 9, 26, 0, 0, 0.0, TimeSystem::GPS),
451 NtoPMap.insert( std::pair<const int, XRefNode>( 54,
XRefNode( 18,
452 CivilTime( 2001, 1, 30, 0, 0, 0.0, TimeSystem::GPS),
453 CivilTime( 2018, 3, 5, 22, 0, 0.0, TimeSystem::GPS))));
454 NtoPMap.insert( std::pair<const int, XRefNode>( 55,
XRefNode( 15,
455 CivilTime( 2007, 10, 17, 0, 0, 0.0, TimeSystem::GPS),
457 NtoPMap.insert( std::pair<const int, XRefNode>( 56,
XRefNode( 16,
458 CivilTime( 2003, 1, 29, 0, 0, 0.0, TimeSystem::GPS),
460 NtoPMap.insert( std::pair<const int, XRefNode>( 57,
XRefNode( 29,
461 CivilTime( 2007, 12, 21, 0, 0, 0.0, TimeSystem::GPS),
463 NtoPMap.insert( std::pair<const int, XRefNode>( 58,
XRefNode( 12,
464 CivilTime( 2006, 11, 17, 0, 0, 0.0, TimeSystem::GPS),
466 NtoPMap.insert( std::pair<const int, XRefNode>( 59,
XRefNode( 19,
467 CivilTime( 2004, 3, 20, 0, 0, 0.0, TimeSystem::GPS),
471 NtoPMap.insert( std::pair<const int, XRefNode>( 60,
XRefNode( 23,
472 CivilTime( 2004, 6, 23, 0, 0, 0.0, TimeSystem::GPS),
473 CivilTime( 2020, 6, 9, 17, 59, 59.9, TimeSystem::GPS))));
474 NtoPMap.insert( std::pair<const int, XRefNode>( 61,
XRefNode( 2,
475 CivilTime( 2004, 6, 6, 0, 0, 0.0, TimeSystem::GPS),
477 NtoPMap.insert( std::pair<const int, XRefNode>( 62,
XRefNode( 25,
478 CivilTime( 2010, 5, 28, 3, 0, 0.0, TimeSystem::GPS),
480 NtoPMap.insert( std::pair<const int, XRefNode>( 63,
XRefNode( 1,
481 CivilTime( 2011, 7, 20, 9, 36, 36.0, TimeSystem::GPS),
484 NtoPMap.insert( std::pair<const int, XRefNode>( 64,
XRefNode( 30,
485 CivilTime( 2014, 2, 21, 0, 0, 0.0, TimeSystem::GPS),
488 NtoPMap.insert( std::pair<const int, XRefNode>( 65,
XRefNode( 24,
489 CivilTime( 2012, 10, 4, 0, 0, 0.0, TimeSystem::GPS),
492 NtoPMap.insert( std::pair<const int, XRefNode>( 66,
XRefNode( 27,
493 CivilTime( 2013, 5, 15, 0, 0, 0.0, TimeSystem::GPS),
496 NtoPMap.insert( std::pair<const int, XRefNode>( 67,
XRefNode( 6,
497 CivilTime( 2014, 5, 17, 0, 0, 0.0, TimeSystem::GPS),
500 NtoPMap.insert( std::pair<const int, XRefNode>( 68,
XRefNode( 9,
501 CivilTime( 2014, 8, 2, 0, 0, 0.0, TimeSystem::GPS),
504 NtoPMap.insert( std::pair<const int, XRefNode>( 69,
XRefNode( 3,
505 CivilTime( 2014, 10, 29, 0, 0, 0.0, TimeSystem::GPS),
508 NtoPMap.insert( std::pair<const int, XRefNode>( 70,
XRefNode( 32,
509 CivilTime( 2016, 2, 5, 13, 30, 0.0, TimeSystem::GPS),
512 NtoPMap.insert( std::pair<const int, XRefNode>( 71,
XRefNode( 26,
513 CivilTime( 2015, 3, 25, 18, 36, 0.0, TimeSystem::GPS),
516 NtoPMap.insert( std::pair<const int, XRefNode>( 72,
XRefNode( 8,
517 CivilTime( 2015, 7, 15, 0, 0, 0.0, TimeSystem::GPS),
520 NtoPMap.insert( std::pair<const int, XRefNode>( 73,
XRefNode( 10,
521 CivilTime( 2015, 10, 31, 16, 23, 0.0, TimeSystem::GPS),
525 NtoPMap.insert( std::pair<const int, XRefNode>( 74,
XRefNode( 4,
526 CivilTime( 2019, 1, 8, 23, 0, 0.0, TimeSystem::GPS),
527 CivilTime( 2019, 7, 12, 20, 0, 0.0, TimeSystem::GPS))));
529 NtoPMap.insert( std::pair<const int, XRefNode>( 74,
XRefNode( 4,
530 CivilTime( 2019, 10, 21, 20, 00, 0.0, TimeSystem::GPS),
534 NtoPMap.insert( std::pair<const int, XRefNode>( 75,
XRefNode( 18,
535 CivilTime( 2020, 3, 12, 22, 30, 0.0, TimeSystem::GPS),
539 NtoPMap.insert( std::pair<const int, XRefNode>( 76,
XRefNode( 23,
540 CivilTime( 2020, 7, 14, 0, 0, 0.0, TimeSystem::GPS),
545 NtoPMap.insert( std::pair<const int, XRefNode>( 77,
XRefNode( 14,
546 CivilTime( 2020, 11, 17, 5, 30, 0.0, TimeSystem::GPS),
550 multimap<int,XRefNode>::const_iterator itate;
552 for (itate=NtoPMap.begin(); itate != NtoPMap.end(); itate++)
554 std::pair<const int, gnsstk::XRefNode> values = *itate;
556 int navNum = values.first;
557 int prnNum = values.second.getPRNNum();
560 PtoNMap.insert( std::pair<const int, XRefNode>( prnNum,
XRefNode( navNum,
valid )));
570 if (ci->second.isApplicable( dt ))
return ci->second.getNAVSTARNum();
576 sprintf(textOut,
"No NAVSTAR # found associated with PRN ID %d at requested date: %s.",
577 PRNID,
printTime(dt,
"%02m/%02d/%04Y").c_str() );
578 std::string sout = textOut;
579 NoNAVSTARNumberFound noFound( sout );
589 if (ci->second.isApplicable( dt ))
return true;
596 return PRNIDAvailable ( NAVSTARID, dt) ;
601 map<int,BlockType>::const_iterator i;
602 i = NtoBMap.find( NAVSTARID );
603 if (i!=NtoBMap.end())
return(i->second);
608 sprintf(textOut,
"No BlockType found associated with NAVSTAR Num %d.",
610 std::string sout = textOut;
611 NoNAVSTARNumberFound noFound( sout );
616 std::string SVNumXRef::getBlockTypeString(
const int NAVSTARID )
const
618 std::map<int,BlockType>::const_iterator i;
619 i = NtoBMap.find( NAVSTARID );
620 if (i!=NtoBMap.end())
625 case I:
return(
"Block I");
break;
626 case II:
return(
"Block II");
break;
627 case IIA:
return(
"Block IIA");
break;
628 case IIR:
return(
"Block IIR");
break;
629 case IIR_M:
return(
"Block IIR_M");
break;
630 case IIF:
return(
"Block IIF");
break;
631 case III:
return(
"GPS III");
break;
642 if (ci->second.isApplicable( dt ))
return ci->second.getPRNNum();
648 sprintf(textOut,
"No PRN ID found associated with NAVSTAR Num %d at requested date: %s.",
649 NAVSTARID,
printTime(dt,
"%02m/%02d/%04Y").c_str() );
650 std::string sout = textOut;
651 NoNAVSTARNumberFound noFound( sout );
661 if (ci->second.isApplicable( dt ))
return true;
666 bool SVNumXRef::BlockTypeAvailable(
const int NAVSTARID )
const
668 map<int,BlockType>::const_iterator i;
669 i = NtoBMap.find( NAVSTARID );
670 if (i!=NtoBMap.end())
return true;
680 multimap<int,XRefNode>::const_iterator it;
681 bool pastCurrent =
false;
683 std::string start_end_h =
" START"
685 std::string svn_h =
" SVN PRN MM/DD/YYYY DOY HH:MM:SS"
686 " MM/DD/YYYY DOY HH:MM:SS\n";
687 out << start_end_h << svn_h;
689 for (it=NtoPMap.begin(); it != NtoPMap.end(); it++)
691 std::pair<const int, gnsstk::XRefNode> mm = *it;
692 out <<
" " << setw(2) << mm.first
693 <<
" " << mm.second.toString() << endl;
697 multimap<int,XRefNode>::const_iterator iter;
701 std::string prn_h =
" PRN SVN MM/DD/YYYY DOY HH:MM:SS"
702 " MM/DD/YYYY DOY HH:MM:SS\n";
703 out << start_end_h << prn_h;
705 for (iter = PtoNMap.begin(); iter != PtoNMap.end(); iter++)
707 std::pair<const int, gnsstk::XRefNode> pp = *iter;
708 out <<
" " << setw(2) << pp.first
709 <<
" " << pp.second.toString() <<endl;
714 XRefNode::XRefNode(
const int NumArg,
721 XRefNode::XRefNode(
const int NumArg,
731 if (
valid.inRange(dt))
return true;
735 std::string XRefNode::toString()
const
738 std::string tform =
"%02m/%02d/%4Y %03j %02H:%02M:%05.2f";
740 std::stringstream ss;
741 ss << setfill(
'0') << setw(2) << Num;
753 bool SVNumXRef::isConsistent()
const
757 multimap<int, XRefNode>::const_iterator cit1;
758 multimap<int, XRefNode>::const_iterator cit2;
760 for (cit1 = NtoPMap.begin(); cit1 != NtoPMap.end(); cit1++)
764 for (; cit2 != NtoPMap.end(); cit2++)
766 int key1 = cit1->first;
767 int key2 = cit2->first;
773 if ((key1 == key2) || (val1 == val2))
780 string tform(
"%02m/%02d/%04Y %02H:%02M:%02S");
781 std::cout <<
"Overlap between SVN"
782 << setw(2) << key1 <<
"/PRN"
783 << setw(2) << val1 <<
" at "
784 << tr1.
printf(tform) << endl;
785 std::cout <<
" and SVN"
786 << setw(2) << key2 <<
"/PRN"
787 << setw(2) << val2 <<
" at "
788 << tr2.
printf(tform) << endl;