0.5.0
Loading...
Searching...
No Matches
VectorNavTypes.cpp
Go to the documentation of this file.
1// This file is part of INSTINCT, the INS Toolkit for Integrated
2// Navigation Concepts and Training by the Institute of Navigation of
3// the University of Stuttgart, Germany.
4//
5// This Source Code Form is subject to the terms of the Mozilla Public
6// License, v. 2.0. If a copy of the MPL was not distributed with this
7// file, You can obtain one at https://mozilla.org/MPL/2.0/.
8
9#include "VectorNavTypes.hpp"
11#include "util/Logger.hpp"
12
14{
16 switch (sys)
17 {
19 satSys = GPS;
20 break;
22 satSys = SBAS;
23 break;
25 satSys = GAL;
26 break;
28 satSys = BDS;
29 break;
31 LOG_TRACE("VectorNav SatInfoElement satellite system '{}' is not supported yet. Skipping measurement.", sys);
32 break;
34 satSys = QZSS;
35 break;
37 satSys = GLO;
38 break;
39 default: // IRNSS not in vectorNav
40 LOG_TRACE("VectorNav SatInfoElement satellite system '{}' is not supported yet. Skipping measurement.", sys);
41 break;
42 }
43 return satSys;
44}
45
70
72{
73 switch (sys)
74 {
75 case SatSys::GPS:
76 switch (freq)
77 {
78 case Freq::RxChannel:
79 return Code::None;
80 case Freq::L1:
81 switch (chan)
82 {
83 case Chan::P_Code:
84 return Code::G1P;
85 case Chan::CA_Code:
86 return Code::G1C;
88 return Code::G1W;
89 case Chan::Y_Code:
90 return Code::G1Y;
91 case Chan::M_Code:
92 return Code::G1M;
93 case Chan::Codeless:
94 return Code::G1N;
95 case Chan::A_Chan:
96 return Code::None;
97 case Chan::B_Chan:
98 return Code::None;
99 case Chan::I_Chan:
100 return Code::None;
101 case Chan::Q_Chan:
102 return Code::None;
103 case Chan::M_Chan:
104 return Code::G1M;
105 case Chan::L_Chan:
106 return Code::G1L;
107 case Chan::BC_Chan:
108 return Code::G1X;
109 case Chan::Z_Tracking:
110 return Code::G1W;
111 case Chan::ABC:
112 return Code::None;
113 }
114 break;
115 case Freq::L2:
116 switch (chan)
117 {
118 case Chan::P_Code:
119 return Code::G2P;
120 case Chan::CA_Code:
121 return Code::G2C;
123 return Code::G2D;
124 case Chan::Y_Code:
125 return Code::G2Y;
126 case Chan::M_Code:
127 return Code::G2M;
128 case Chan::Codeless:
129 return Code::G2N;
130 case Chan::A_Chan:
131 return Code::None;
132 case Chan::B_Chan:
133 return Code::None;
134 case Chan::I_Chan:
135 return Code::None;
136 case Chan::Q_Chan:
137 return Code::None;
138 case Chan::M_Chan:
139 return Code::G2M;
140 case Chan::L_Chan:
141 return Code::G2L;
142 case Chan::BC_Chan:
143 return Code::G2X;
144 case Chan::Z_Tracking:
145 return Code::G2W;
146 case Chan::ABC:
147 return Code::None;
148 }
149 break;
150 case Freq::L5:
151 switch (chan)
152 {
153 case Chan::P_Code:
154 return Code::None;
155 case Chan::CA_Code:
156 return Code::None;
158 return Code::None;
159 case Chan::Y_Code:
160 return Code::None;
161 case Chan::M_Code:
162 return Code::None;
163 case Chan::Codeless:
164 return Code::None;
165 case Chan::A_Chan:
166 return Code::None;
167 case Chan::B_Chan:
168 return Code::None;
169 case Chan::I_Chan:
170 return Code::G5I;
171 case Chan::Q_Chan:
172 return Code::G5Q;
173 case Chan::M_Chan:
174 return Code::None;
175 case Chan::L_Chan:
176 return Code::None;
177 case Chan::BC_Chan:
178 return Code::G5X;
179 case Chan::Z_Tracking:
180 return Code::None;
181 case Chan::ABC:
182 return Code::None;
183 }
184 break;
185 case Freq::E6:
186 case Freq::E5b:
187 case Freq::E5a:
188 return Code::None;
189 } // GPS-freq
190 break;
191 case SatSys::SBAS:
192 switch (freq)
193 {
194 case Freq::RxChannel:
195 return Code::None;
196 case Freq::L1:
197 switch (chan)
198 {
199 case Chan::P_Code:
200 return Code::None;
201 case Chan::CA_Code:
202 return Code::S1C;
204 return Code::None;
205 case Chan::Y_Code:
206 return Code::None;
207 case Chan::M_Code:
208 return Code::None;
209 case Chan::Codeless:
210 return Code::None;
211 case Chan::A_Chan:
212 return Code::None;
213 case Chan::B_Chan:
214 return Code::None;
215 case Chan::I_Chan:
216 return Code::None;
217 case Chan::Q_Chan:
218 return Code::None;
219 case Chan::M_Chan:
220 return Code::None;
221 case Chan::L_Chan:
222 return Code::None;
223 case Chan::BC_Chan:
224 return Code::None;
225 case Chan::Z_Tracking:
226 return Code::None;
227 case Chan::ABC:
228 return Code::None;
229 }
230 break;
231 case Freq::L2:
232 return Code::None;
233 case Freq::L5:
234 switch (chan)
235 {
236 case Chan::P_Code:
237 return Code::None;
238 case Chan::CA_Code:
239 return Code::None;
241 return Code::None;
242 case Chan::Y_Code:
243 return Code::None;
244 case Chan::M_Code:
245 return Code::None;
246 case Chan::Codeless:
247 return Code::None;
248 case Chan::A_Chan:
249 return Code::None;
250 case Chan::B_Chan:
251 return Code::None;
252 case Chan::I_Chan:
253 return Code::S5I;
254 case Chan::Q_Chan:
255 return Code::S5Q;
256 case Chan::M_Chan:
257 return Code::None;
258 case Chan::L_Chan:
259 return Code::None;
260 case Chan::BC_Chan:
261 return Code::None;
262 case Chan::Z_Tracking:
263 return Code::None;
264 case Chan::ABC:
265 return Code::None;
266 }
267 break;
268 case Freq::E6:
269 case Freq::E5b:
270 case Freq::E5a:
271 return Code::None;
272 } // SBAS-freq
273 break;
274 case SatSys::Galileo:
275 switch (freq)
276 {
277 case Freq::RxChannel:
278 return Code::None;
279 case Freq::L1:
280 switch (chan)
281 {
282 case Chan::P_Code:
283 return Code::None;
284 case Chan::CA_Code:
285 return Code::E1C;
287 return Code::None;
288 case Chan::Y_Code:
289 return Code::None;
290 case Chan::M_Code:
291 return Code::None;
292 case Chan::Codeless:
293 return Code::None;
294 case Chan::A_Chan:
295 return Code::E1A;
296 case Chan::B_Chan:
297 return Code::E1B;
298 case Chan::I_Chan:
299 return Code::None;
300 case Chan::Q_Chan:
301 return Code::None;
302 case Chan::M_Chan:
303 return Code::None;
304 case Chan::L_Chan:
305 return Code::None;
306 case Chan::BC_Chan:
307 return Code::E1X;
308 case Chan::Z_Tracking:
309 return Code::E1Z;
310 case Chan::ABC:
311 return Code::None;
312 }
313 break;
314 case Freq::L2:
315 return Code::None;
316 case Freq::L5:
317 switch (chan)
318 {
319 case Chan::P_Code:
320 return Code::None;
321 case Chan::CA_Code:
322 return Code::None;
324 return Code::None;
325 case Chan::Y_Code:
326 return Code::None;
327 case Chan::M_Code:
328 return Code::None;
329 case Chan::Codeless:
330 return Code::None;
331 case Chan::A_Chan:
332 return Code::None;
333 case Chan::B_Chan:
334 return Code::None;
335 case Chan::I_Chan:
336 return Code::E5I;
337 case Chan::Q_Chan:
338 return Code::E5Q;
339 case Chan::M_Chan:
340 return Code::None;
341 case Chan::L_Chan:
342 return Code::None;
343 case Chan::BC_Chan:
344 return Code::E5X;
345 case Chan::Z_Tracking:
346 return Code::None;
347 case Chan::ABC:
348 return Code::None;
349 }
350 break;
351 case Freq::E6:
352 switch (chan)
353 {
354 case Chan::P_Code:
355 return Code::None;
356 case Chan::CA_Code:
357 return Code::E6C;
359 return Code::None;
360 case Chan::Y_Code:
361 return Code::None;
362 case Chan::M_Code:
363 return Code::None;
364 case Chan::Codeless:
365 return Code::None;
366 case Chan::A_Chan:
367 return Code::E6A;
368 case Chan::B_Chan:
369 return Code::E6B;
370 case Chan::I_Chan:
371 return Code::None;
372 case Chan::Q_Chan:
373 return Code::None;
374 case Chan::M_Chan:
375 return Code::None;
376 case Chan::L_Chan:
377 return Code::None;
378 case Chan::BC_Chan:
379 return Code::E6X;
380 case Chan::Z_Tracking:
381 return Code::None;
382 case Chan::ABC:
383 return Code::E6Z;
384 }
385 break;
386 case Freq::E5b:
387 switch (chan)
388 {
389 case Chan::P_Code:
390 return Code::None;
391 case Chan::CA_Code:
392 return Code::None;
394 return Code::None;
395 case Chan::Y_Code:
396 return Code::None;
397 case Chan::M_Code:
398 return Code::None;
399 case Chan::Codeless:
400 return Code::None;
401 case Chan::A_Chan:
402 return Code::None;
403 case Chan::B_Chan:
404 return Code::None;
405 case Chan::I_Chan:
406 return Code::E7I;
407 case Chan::Q_Chan:
408 return Code::E7Q;
409 case Chan::M_Chan:
410 return Code::None;
411 case Chan::L_Chan:
412 return Code::None;
413 case Chan::BC_Chan:
414 return Code::E7X;
415 case Chan::Z_Tracking:
416 return Code::None;
417 case Chan::ABC:
418 return Code::None;
419 }
420 break;
421 case Freq::E5a:
422 switch (chan)
423 {
424 case Chan::P_Code:
425 return Code::None;
426 case Chan::CA_Code:
427 return Code::None;
429 return Code::None;
430 case Chan::Y_Code:
431 return Code::None;
432 case Chan::M_Code:
433 return Code::None;
434 case Chan::Codeless:
435 return Code::None;
436 case Chan::A_Chan:
437 return Code::None;
438 case Chan::B_Chan:
439 return Code::None;
440 case Chan::I_Chan:
441 return Code::E8I;
442 case Chan::Q_Chan:
443 return Code::E8Q;
444 case Chan::M_Chan:
445 return Code::None;
446 case Chan::L_Chan:
447 return Code::None;
448 case Chan::BC_Chan:
449 return Code::E8X;
450 case Chan::Z_Tracking:
451 return Code::None;
452 case Chan::ABC:
453 return Code::None;
454 }
455 break;
456 } // GAL-freq
457 break;
458 case SatSys::BeiDou:
459 switch (freq)
460 {
461 case Freq::RxChannel:
462 return Code::None;
463 case Freq::L1:
464 switch (chan)
465 {
466 case Chan::P_Code:
467 return Code::B1P;
468 case Chan::CA_Code:
469 return Code::None;
471 return Code::None;
472 case Chan::Y_Code:
473 return Code::None;
474 case Chan::M_Code:
475 return Code::None;
476 case Chan::Codeless:
477 return Code::None;
478 case Chan::A_Chan:
479 return Code::None;
480 case Chan::B_Chan:
481 return Code::None;
482 case Chan::I_Chan:
483 return Code::None;
484 case Chan::Q_Chan:
485 return Code::None;
486 case Chan::M_Chan:
487 return Code::None;
488 case Chan::L_Chan:
489 return Code::None;
490 case Chan::BC_Chan:
491 return Code::None;
492 case Chan::Z_Tracking:
493 return Code::None;
494 case Chan::ABC:
495 return Code::None;
496 }
497 break;
498 case Freq::L2:
499 return Code::None;
500 case Freq::L5:
501 return Code::None;
502 case Freq::E6:
503 switch (chan)
504 {
505 case Chan::P_Code:
506 return Code::None;
507 case Chan::CA_Code:
508 return Code::None;
510 return Code::None;
511 case Chan::Y_Code:
512 return Code::None;
513 case Chan::M_Code:
514 return Code::None;
515 case Chan::Codeless:
516 return Code::None;
517 case Chan::A_Chan:
518 return Code::B6A;
519 case Chan::B_Chan:
520 return Code::None;
521 case Chan::I_Chan:
522 return Code::B6I;
523 case Chan::Q_Chan:
524 return Code::B6Q;
525 case Chan::M_Chan:
526 return Code::None;
527 case Chan::L_Chan:
528 return Code::None;
529 case Chan::BC_Chan:
530 return Code::B6X;
531 case Chan::Z_Tracking:
532 return Code::None;
533 case Chan::ABC:
534 return Code::None;
535 }
536 break;
537 case Freq::E5b:
538 switch (chan)
539 {
540 case Chan::P_Code:
541 return Code::B8P;
542 case Chan::CA_Code:
543 return Code::None;
545 return Code::None;
546 case Chan::Y_Code:
547 return Code::None;
548 case Chan::M_Code:
549 return Code::None;
550 case Chan::Codeless:
551 return Code::None;
552 case Chan::A_Chan:
553 return Code::None;
554 case Chan::B_Chan:
555 return Code::None;
556 case Chan::I_Chan:
557 return Code::None;
558 case Chan::Q_Chan:
559 return Code::None;
560 case Chan::M_Chan:
561 return Code::None;
562 case Chan::L_Chan:
563 return Code::None;
564 case Chan::BC_Chan:
565 return Code::B8X;
566 case Chan::Z_Tracking:
567 return Code::None;
568 case Chan::ABC:
569 return Code::None;
570 }
571 break;
572 case Freq::E5a:
573 return Code::None;
574 } // BDS-freq
575 break;
576 case SatSys::IMES:
577 return Code::None;
578 case SatSys::QZSS:
579 switch (freq)
580 {
581 case Freq::RxChannel:
582 return Code::None;
583 case Freq::L1:
584 switch (chan)
585 {
586 case Chan::P_Code:
587 return Code::None;
588 case Chan::CA_Code:
589 return Code::J1C;
591 return Code::None;
592 case Chan::Y_Code:
593 return Code::None;
594 case Chan::M_Code:
595 return Code::None;
596 case Chan::Codeless:
597 return Code::None;
598 case Chan::A_Chan:
599 return Code::None;
600 case Chan::B_Chan:
601 return Code::None;
602 case Chan::I_Chan:
603 return Code::None;
604 case Chan::Q_Chan:
605 return Code::None;
606 case Chan::M_Chan:
607 return Code::None;
608 case Chan::L_Chan:
609 return Code::J1L;
610 case Chan::BC_Chan:
611 return Code::J1X;
612 case Chan::Z_Tracking:
613 return Code::J1Z;
614 case Chan::ABC:
615 return Code::None;
616 }
617 break;
618 case Freq::L2:
619 switch (chan)
620 {
621 case Chan::P_Code:
622 return Code::None;
623 case Chan::CA_Code:
624 return Code::None;
626 return Code::None;
627 case Chan::Y_Code:
628 return Code::None;
629 case Chan::M_Code:
630 return Code::None;
631 case Chan::Codeless:
632 return Code::None;
633 case Chan::A_Chan:
634 return Code::None;
635 case Chan::B_Chan:
636 return Code::None;
637 case Chan::I_Chan:
638 return Code::None;
639 case Chan::Q_Chan:
640 return Code::None;
641 case Chan::M_Chan:
642 return Code::None;
643 case Chan::L_Chan:
644 return Code::J2L;
645 case Chan::BC_Chan:
646 return Code::J2X;
647 case Chan::Z_Tracking:
648 return Code::None;
649 case Chan::ABC:
650 return Code::None;
651 }
652 break;
653 case Freq::L5:
654 switch (chan)
655 {
656 case Chan::P_Code:
657 return Code::None;
658 case Chan::CA_Code:
659 return Code::None;
661 return Code::None;
662 case Chan::Y_Code:
663 return Code::None;
664 case Chan::M_Code:
665 return Code::None;
666 case Chan::Codeless:
667 return Code::None;
668 case Chan::A_Chan:
669 return Code::None;
670 case Chan::B_Chan:
671 return Code::None;
672 case Chan::I_Chan:
673 return Code::J5I;
674 case Chan::Q_Chan:
675 return Code::J5Q;
676 case Chan::M_Chan:
677 return Code::None;
678 case Chan::L_Chan:
679 return Code::None;
680 case Chan::BC_Chan:
681 return Code::J5X;
682 case Chan::Z_Tracking:
683 return Code::None;
684 case Chan::ABC:
685 return Code::None;
686 }
687 break;
688 case Freq::E6:
689 switch (chan)
690 {
691 case Chan::P_Code:
692 return Code::None;
693 case Chan::CA_Code:
694 return Code::None;
696 return Code::None;
697 case Chan::Y_Code:
698 return Code::None;
699 case Chan::M_Code:
700 return Code::None;
701 case Chan::Codeless:
702 return Code::None;
703 case Chan::A_Chan:
704 return Code::None;
705 case Chan::B_Chan:
706 return Code::None;
707 case Chan::I_Chan:
708 return Code::None;
709 case Chan::Q_Chan:
710 return Code::None;
711 case Chan::M_Chan:
712 return Code::None;
713 case Chan::L_Chan:
714 return Code::J6L;
715 case Chan::BC_Chan:
716 return Code::J6X;
717 case Chan::Z_Tracking:
718 return Code::None;
719 case Chan::ABC:
720 return Code::None;
721 }
722 break;
723 case Freq::E5b:
724 case Freq::E5a:
725 return Code::None;
726 } // QZSS-freq
727 break;
728 case SatSys::GLONASS:
729 switch (freq)
730 {
731 case Freq::RxChannel:
732 return Code::None;
733 case Freq::L1:
734 switch (chan)
735 {
736 case Chan::P_Code:
737 return Code::R1P;
738 case Chan::CA_Code:
739 return Code::R1C;
741 return Code::None;
742 case Chan::Y_Code:
743 return Code::None;
744 case Chan::M_Code:
745 return Code::None;
746 case Chan::Codeless:
747 return Code::None;
748 case Chan::A_Chan:
749 return Code::None;
750 case Chan::B_Chan:
751 return Code::None;
752 case Chan::I_Chan:
753 return Code::None;
754 case Chan::Q_Chan:
755 return Code::None;
756 case Chan::M_Chan:
757 return Code::None;
758 case Chan::L_Chan:
759 return Code::None;
760 case Chan::BC_Chan:
761 return Code::None;
762 case Chan::Z_Tracking:
763 return Code::None;
764 case Chan::ABC:
765 return Code::None;
766 }
767 break;
768 case Freq::L2:
769 switch (chan)
770 {
771 case Chan::P_Code:
772 return Code::R2P;
773 case Chan::CA_Code:
774 return Code::R2C;
776 return Code::None;
777 case Chan::Y_Code:
778 return Code::None;
779 case Chan::M_Code:
780 return Code::None;
781 case Chan::Codeless:
782 return Code::None;
783 case Chan::A_Chan:
784 return Code::None;
785 case Chan::B_Chan:
786 return Code::None;
787 case Chan::I_Chan:
788 return Code::None;
789 case Chan::Q_Chan:
790 return Code::None;
791 case Chan::M_Chan:
792 return Code::None;
793 case Chan::L_Chan:
794 return Code::None;
795 case Chan::BC_Chan:
796 return Code::None;
797 case Chan::Z_Tracking:
798 return Code::None;
799 case Chan::ABC:
800 return Code::None;
801 }
802 break;
803 case Freq::L5:
804 case Freq::E6:
805 case Freq::E5b:
806 case Freq::E5a:
807 return Code::None;
808 } // GLO-freq
809 break;
810 }
811 return Code::None;
812}
813
814std::ostream& NAV::vendor::vectornav::operator<<(std::ostream& os, const NAV::vendor::vectornav::SatSys& satSys)
815{
816 switch (satSys)
817 {
818 case SatSys::GPS:
819 os << "GPS";
820 break;
821 case SatSys::SBAS:
822 os << "SBAS";
823 break;
824 case SatSys::Galileo:
825 os << "Galileo";
826 break;
827 case SatSys::BeiDou:
828 os << "BeiDou";
829 break;
830 case SatSys::IMES:
831 os << "IMES";
832 break;
833 case SatSys::QZSS:
834 os << "QZSS";
835 break;
836 case SatSys::GLONASS:
837 os << "GLONASS";
838 break;
839 }
840 return os;
841}
Utility class for logging to console and file.
#define LOG_TRACE
Detailled info to trace the execution of the program. Should not be called on functions which receive...
Definition Logger.hpp:65
GNSS Satellite System.
Type Definitions for VectorNav messages.
Enumerate for GNSS Codes.
Definition Code.hpp:89
@ E6B
GAL E6 - Data.
Definition Code.hpp:128
@ G2P
GPS L2 - P-code (unencrypted)
Definition Code.hpp:110
@ G2C
GPS L2 - C/A-code.
Definition Code.hpp:105
@ R1C
GLO L1 - C/A-code.
Definition Code.hpp:139
@ J2L
QZSS L2 - L2C-code (long)
Definition Code.hpp:182
@ G1L
GPS L1 - L1C-P (pilot)
Definition Code.hpp:98
@ G2D
GPS L2 - Semi-codeless P(Y) tracking (L1 C/A + (P2-P1))
Definition Code.hpp:106
@ B6Q
BeiDou B3 - B3Q.
Definition Code.hpp:163
@ J6L
QZSS L6 - L6P LEX signal (long)
Definition Code.hpp:191
@ E7I
GAL E5b - Data.
Definition Code.hpp:132
@ E5Q
GAL E5a - Pilot.
Definition Code.hpp:125
@ S1C
SBAS L1 - C/A-code.
Definition Code.hpp:205
@ S5Q
SBAS L5 - Pilot.
Definition Code.hpp:207
@ G1Y
GPS L1 - Y-code (with decryption)
Definition Code.hpp:102
@ G1X
GPS L1 - L1C-(D+P) (combined)
Definition Code.hpp:99
@ E1B
GAL E1 - OS (data)
Definition Code.hpp:120
@ G1M
GPS L1 - M-code.
Definition Code.hpp:103
@ J5I
QZSS L5 - Data.
Definition Code.hpp:184
@ J1Z
QZSS L1 - L1-SAIF signal.
Definition Code.hpp:180
@ G1N
GPS L1 - codeless.
Definition Code.hpp:104
@ G2X
GPS L2 - L2C(M+L) (combined)
Definition Code.hpp:109
@ J6X
QZSS L6 - L6(D+P) LEX signal (combined)
Definition Code.hpp:192
@ E6X
GAL E6 - Combined (B+C)
Definition Code.hpp:130
@ J1L
QZSS L1 - L1C (pilot)
Definition Code.hpp:178
@ J1X
QZSS L1 - L1C (combined)
Definition Code.hpp:179
@ E8X
GAL E5(a+b) - AltBOC (combined)
Definition Code.hpp:137
@ R2C
GLO L2 - C/A-code.
Definition Code.hpp:141
@ B6A
BeiDou B3 - B3A.
Definition Code.hpp:165
@ G2Y
GPS L2 - Y-code (with decryption)
Definition Code.hpp:112
@ G5X
GPS L5 - Combined.
Definition Code.hpp:117
@ E5I
GAL E5a - Data.
Definition Code.hpp:124
@ E1Z
GAL E1 - PRS + OS (data + pilot)
Definition Code.hpp:123
@ J1C
QZSS L1 - C/A-code.
Definition Code.hpp:176
@ J5Q
QZSS L5 - Pilot.
Definition Code.hpp:185
@ E6Z
GAL E6 - PRS + OS (A+B+C)
Definition Code.hpp:131
@ None
None.
Definition Code.hpp:94
@ G1P
GPS L1 - P-code (unencrypted)
Definition Code.hpp:100
@ B1P
BeiDou B1 - Pilot(P)
Definition Code.hpp:154
@ J2X
QZSS L2 - L2C-code (combined)
Definition Code.hpp:183
@ G1C
GPS L1 - C/A-code.
Definition Code.hpp:96
@ G1W
GPS L1 - Semicodeless P(Y) tracking (Z-tracking)
Definition Code.hpp:101
@ G2L
GPS L2 - L2C(L) (long)
Definition Code.hpp:108
@ R1P
GLO L1 - P-code.
Definition Code.hpp:140
@ E7X
GAL E5b - Combined.
Definition Code.hpp:134
@ B8X
BeiDou B2 (B2a+B2b) - D+P.
Definition Code.hpp:174
@ J5X
QZSS L5 - Combined.
Definition Code.hpp:186
@ E8I
GAL E5(a+b) - AltBOC (data)
Definition Code.hpp:135
@ G5Q
GPS L5 - Pilot.
Definition Code.hpp:116
@ G2W
GPS L2 - Semicodeless P(Y) tracking (Z-tracking)
Definition Code.hpp:111
@ G2M
GPS L2 - M-code.
Definition Code.hpp:113
@ R2P
GLO L2 - P-code.
Definition Code.hpp:142
@ G2N
GPS L2 - codeless.
Definition Code.hpp:114
@ E1A
GAL E1 - PRS signal.
Definition Code.hpp:119
@ E8Q
GAL E5(a+b) - AltBOC (pilot)
Definition Code.hpp:136
@ G5I
GPS L5 - Data.
Definition Code.hpp:115
@ S5I
SBAS L5 - Data.
Definition Code.hpp:206
@ B6X
BeiDou B3 - B3I, B3Q, combined.
Definition Code.hpp:164
@ E1X
GAL E1 - OS(B+C) (combined)
Definition Code.hpp:122
@ E6A
GAL E6 - PRS signal.
Definition Code.hpp:127
@ E6C
GAL E6 - Pilot.
Definition Code.hpp:129
@ E7Q
GAL E5b - Pilot.
Definition Code.hpp:133
@ B8P
BeiDou B2 (B2a+B2b) - Pilot(P)
Definition Code.hpp:173
@ B6I
BeiDou B3 - B3I.
Definition Code.hpp:162
@ E1C
GAL E1 - OS (pilot)
Definition Code.hpp:121
@ E5X
GAL E5a - Combined.
Definition Code.hpp:126
SatelliteSystem toSatelliteSystem(SatSys sys)
Converts the VectorNav satellite system to the INSTINCT representation.
std::ostream & operator<<(std::ostream &os, const SatSys &satSys)
Stream insertion operator overload.
SatSys
Satellite Constellation.
SatSys fromSatelliteSystem(SatelliteSystem sys)
Converts the INSTINCT satellite system to the VectorNav representation.
@ GLO
Globalnaja nawigazionnaja sputnikowaja sistema (GLONASS)
@ GAL
Galileo.
@ BDS
Beidou.
@ SatSys_None
No Satellite system.
Satellite System type.
@ Enum_GPS
Global Positioning System.
@ Enum_None
No Satellite system.
@ Enum_GLO
Globalnaja nawigazionnaja sputnikowaja sistema (GLONASS)
@ Enum_IRNSS
Indian Regional Navigation Satellite System.
@ Enum_QZSS
Quasi-Zenith Satellite System.
@ Enum_SBAS
Satellite Based Augmentation System.
@ Enum_COUNT
Count variable.
Enum toEnumeration() const
Returns a continuous enumeration of the object.
@ L1
L1(GPS,QZSS,SBAS), G1(GLO), E2-L1-E1(GAL), B1(BDS)
Code toCode() const
Converts the sys, freq and chan into a GNSS code.
SatSys sys
GNSS constellation indicator.
@ L_Chan
L chan (L2CGPS, L2CQZSS), P chan (GPS,QZSS)
@ BC_Chan
B+C chan (GAL), I+Q chan (GPS,GAL,QZSS,BDS), M+L chan (GPS,QZSS), D+P chan (GPS,QZSS)
@ CA_Code
C/A-code (GPS,GLO,SBAS,QZSS), C chan (GAL)
@ M_Chan
M chan (L2CGPS, L2CQZSS), D chan (GPS,QZSS)