VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
iffDataEncoders.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2020 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
8 #if DtHLA
9 
10 #include <vl/hlaStateDecoder.h>
11 #include <vl/hlaStateEncoder.h>
12 
13 class DT_DLL_VL DtIFFDataStateRepository;
14 class DT_DLL_VL DtMode1StateRepository;
15 class DT_DLL_VL DtMode1InterrogatorStateRepository;
16 class DT_DLL_VL DtMode1TransponderStateRepository;
17 class DT_DLL_VL DtMode2StateRepository;
18 class DT_DLL_VL DtMode2InterrogatorStateRepository;
19 class DT_DLL_VL DtMode2TransponderStateRepository;
20 class DT_DLL_VL DtMode3AStateRepository;
21 class DT_DLL_VL DtMode3AInterrogatorStateRepository;
22 class DT_DLL_VL DtMode3ATransponderStateRepository;
23 class DT_DLL_VL DtMode4StateRepository;
24 class DT_DLL_VL DtMode4InterrogatorStateRepository;
25 class DT_DLL_VL DtMode4TransponderStateRepository;
26 class DT_DLL_VL DtMode5StateRepository;
27 class DT_DLL_VL DtMode5InterrogatorStateRepository;
28 class DT_DLL_VL DtMode5TransponderStateRepository;
29 class DT_DLL_VL DtModeCStateRepository;
30 class DT_DLL_VL DtModeCInterrogatorStateRepository;
31 class DT_DLL_VL DtModeCTransponderStateRepository;
32 class DT_DLL_VL DtModeSStateRepository;
33 class DT_DLL_VL DtModeSInterrogatorStateRepository;
34 class DT_DLL_VL DtModeSTransponderStateRepository;
35 class DT_DLL_VL DtSovietStateRepository;
36 class DT_DLL_VL DtSovietInterrogatorStateRepository;
37 class DT_DLL_VL DtSovietTransponderStateRepository;
38 class DT_DLL_VL DtTCASDataStateRepository;
39 
43 class DT_DLL_VL DtIFFDataDecoder : public DtHlaStateDecoder
44 {
45 public:
47  DtIFFDataDecoder(
48  DtExerciseConn* exConn,
49  DtObjClassDesc* classDesc);
50 
52  virtual ~DtIFFDataDecoder();
53 
55  DtIFFDataDecoder(const DtIFFDataDecoder& orig);
56 
58  DtIFFDataDecoder& operator=(const DtIFFDataDecoder& orig);
59 
60 public:
62  static DtHlaStateDecoder* create(
63  DtExerciseConn* exConn,
64  DtObjClassDesc* classDesc);
65 
66 protected:
67 
69  static void decodeIFFSystemIdentifier(
70  DtIFFDataStateRepository* rep,
71  const RTI::AttributeHandleValuePairSet& attrs,
72  int pairSetIndex);
73 
74 };
75 
80 class DT_DLL_VL DtIFFDataEncoder : public DtHlaStateEncoder
81 {
82 public:
83 
85  DtIFFDataEncoder(
86  DtExerciseConn* exConn,
87  DtObjClassDesc* classDesc);
88 
90  virtual ~DtIFFDataEncoder();
91 
93  DtIFFDataEncoder(const DtIFFDataEncoder& orig);
94 
96  DtIFFDataEncoder& operator=(const DtIFFDataEncoder& orig);
97 
98 public:
100  static DtHlaStateEncoder* create(
101  DtExerciseConn* exConn,
102  DtObjClassDesc* classDesc);
103 
104 protected:
105 
108  static bool needIFFSystemIdentifier(
109  const DtIFFDataStateRepository& stateRep,
110  const DtIFFDataStateRepository& asSeenByRemote);
111 
113  static void encodeIFFSystemIdentifier(
114  const DtIFFDataStateRepository& rep,
115  RTI::AttributeHandleValuePairSet* attrs,
116  RTI::AttributeHandle attrHandle);
117 
118 };
119 
123 class DT_DLL_VL DtMode1Decoder : public DtIFFDataDecoder
124 {
125 public:
127  DtMode1Decoder(
128  DtExerciseConn* exConn,
129  DtObjClassDesc* classDesc);
130 
132  virtual ~DtMode1Decoder();
133 
135  DtMode1Decoder(const DtMode1Decoder& orig);
136 
138  DtMode1Decoder& operator=(const DtMode1Decoder& orig);
139 
140 public:
142  static DtHlaStateDecoder* create(
143  DtExerciseConn* exConn,
144  DtObjClassDesc* classDesc);
145 
146 protected:
147 
149  static void decodeIsOn(
150  DtMode1StateRepository* rep,
151  const RTI::AttributeHandleValuePairSet& attrs,
152  int pairSetIndex);
153 
155  static void decodeIsDamaged(
156  DtMode1StateRepository* rep,
157  const RTI::AttributeHandleValuePairSet& attrs,
158  int pairSetIndex);
159 
161  static void decodeIsMalfunctioning(
162  DtMode1StateRepository* rep,
163  const RTI::AttributeHandleValuePairSet& attrs,
164  int pairSetIndex);
165 
166 };
167 
172 class DT_DLL_VL DtMode1Encoder : public DtIFFDataEncoder
173 {
174 public:
175 
177  DtMode1Encoder(
178  DtExerciseConn* exConn,
179  DtObjClassDesc* classDesc);
180 
182  virtual ~DtMode1Encoder();
183 
185  DtMode1Encoder(const DtMode1Encoder& orig);
186 
188  DtMode1Encoder& operator=(const DtMode1Encoder& orig);
189 
190 public:
192  static DtHlaStateEncoder* create(
193  DtExerciseConn* exConn,
194  DtObjClassDesc* classDesc);
195 
196 protected:
197 
200  static bool needIsOn(
201  const DtMode1StateRepository& stateRep,
202  const DtMode1StateRepository& asSeenByRemote);
203 
205  static void encodeIsOn(
206  const DtMode1StateRepository& rep,
207  RTI::AttributeHandleValuePairSet* attrs,
208  RTI::AttributeHandle attrHandle);
209 
212  static bool needIsDamaged(
213  const DtMode1StateRepository& stateRep,
214  const DtMode1StateRepository& asSeenByRemote);
215 
217  static void encodeIsDamaged(
218  const DtMode1StateRepository& rep,
219  RTI::AttributeHandleValuePairSet* attrs,
220  RTI::AttributeHandle attrHandle);
221 
224  static bool needIsMalfunctioning(
225  const DtMode1StateRepository& stateRep,
226  const DtMode1StateRepository& asSeenByRemote);
227 
229  static void encodeIsMalfunctioning(
230  const DtMode1StateRepository& rep,
231  RTI::AttributeHandleValuePairSet* attrs,
232  RTI::AttributeHandle attrHandle);
233 
234 };
235 
239 class DT_DLL_VL DtMode1InterrogatorDecoder : public DtMode1Decoder
240 {
241 public:
243  DtMode1InterrogatorDecoder(
244  DtExerciseConn* exConn,
245  DtObjClassDesc* classDesc);
246 
248  virtual ~DtMode1InterrogatorDecoder();
249 
251  DtMode1InterrogatorDecoder(const DtMode1InterrogatorDecoder& orig);
252 
254  DtMode1InterrogatorDecoder& operator=(const DtMode1InterrogatorDecoder& orig);
255 
256 public:
258  static DtHlaStateDecoder* create(
259  DtExerciseConn* exConn,
260  DtObjClassDesc* classDesc);
261 
262 protected:
263 
264 };
265 
270 class DT_DLL_VL DtMode1InterrogatorEncoder : public DtMode1Encoder
271 {
272 public:
273 
275  DtMode1InterrogatorEncoder(
276  DtExerciseConn* exConn,
277  DtObjClassDesc* classDesc);
278 
280  virtual ~DtMode1InterrogatorEncoder();
281 
283  DtMode1InterrogatorEncoder(const DtMode1InterrogatorEncoder& orig);
284 
286  DtMode1InterrogatorEncoder& operator=(const DtMode1InterrogatorEncoder& orig);
287 
288 public:
290  static DtHlaStateEncoder* create(
291  DtExerciseConn* exConn,
292  DtObjClassDesc* classDesc);
293 
294 protected:
295 
296 };
297 
301 class DT_DLL_VL DtMode1TransponderDecoder : public DtMode1Decoder
302 {
303 public:
305  DtMode1TransponderDecoder(
306  DtExerciseConn* exConn,
307  DtObjClassDesc* classDesc);
308 
310  virtual ~DtMode1TransponderDecoder();
311 
313  DtMode1TransponderDecoder(const DtMode1TransponderDecoder& orig);
314 
316  DtMode1TransponderDecoder& operator=(const DtMode1TransponderDecoder& orig);
317 
318 public:
320  static DtHlaStateDecoder* create(
321  DtExerciseConn* exConn,
322  DtObjClassDesc* classDesc);
323 
324 protected:
325 
327  static void decodeCode(
328  DtMode1TransponderStateRepository* rep,
329  const RTI::AttributeHandleValuePairSet& attrs,
330  int pairSetIndex);
331 
333  static void decodeExtendedCodeIsSet(
334  DtMode1TransponderStateRepository* rep,
335  const RTI::AttributeHandleValuePairSet& attrs,
336  int pairSetIndex);
337 
338 };
339 
344 class DT_DLL_VL DtMode1TransponderEncoder : public DtMode1Encoder
345 {
346 public:
347 
349  DtMode1TransponderEncoder(
350  DtExerciseConn* exConn,
351  DtObjClassDesc* classDesc);
352 
354  virtual ~DtMode1TransponderEncoder();
355 
357  DtMode1TransponderEncoder(const DtMode1TransponderEncoder& orig);
358 
360  DtMode1TransponderEncoder& operator=(const DtMode1TransponderEncoder& orig);
361 
362 public:
364  static DtHlaStateEncoder* create(
365  DtExerciseConn* exConn,
366  DtObjClassDesc* classDesc);
367 
368 protected:
369 
372  static bool needCode(
373  const DtMode1TransponderStateRepository& stateRep,
374  const DtMode1TransponderStateRepository& asSeenByRemote);
375 
377  static void encodeCode(
378  const DtMode1TransponderStateRepository& rep,
379  RTI::AttributeHandleValuePairSet* attrs,
380  RTI::AttributeHandle attrHandle);
381 
384  static bool needExtendedCodeIsSet(
385  const DtMode1TransponderStateRepository& stateRep,
386  const DtMode1TransponderStateRepository& asSeenByRemote);
387 
389  static void encodeExtendedCodeIsSet(
390  const DtMode1TransponderStateRepository& rep,
391  RTI::AttributeHandleValuePairSet* attrs,
392  RTI::AttributeHandle attrHandle);
393 
394 };
395 
399 class DT_DLL_VL DtMode2Decoder : public DtIFFDataDecoder
400 {
401 public:
403  DtMode2Decoder(
404  DtExerciseConn* exConn,
405  DtObjClassDesc* classDesc);
406 
408  virtual ~DtMode2Decoder();
409 
411  DtMode2Decoder(const DtMode2Decoder& orig);
412 
414  DtMode2Decoder& operator=(const DtMode2Decoder& orig);
415 
416 public:
418  static DtHlaStateDecoder* create(
419  DtExerciseConn* exConn,
420  DtObjClassDesc* classDesc);
421 
422 protected:
423 
425  static void decodeIsOn(
426  DtMode2StateRepository* rep,
427  const RTI::AttributeHandleValuePairSet& attrs,
428  int pairSetIndex);
429 
431  static void decodeIsDamaged(
432  DtMode2StateRepository* rep,
433  const RTI::AttributeHandleValuePairSet& attrs,
434  int pairSetIndex);
435 
437  static void decodeIsMalfunctioning(
438  DtMode2StateRepository* rep,
439  const RTI::AttributeHandleValuePairSet& attrs,
440  int pairSetIndex);
441 
442 };
443 
448 class DT_DLL_VL DtMode2Encoder : public DtIFFDataEncoder
449 {
450 public:
451 
453  DtMode2Encoder(
454  DtExerciseConn* exConn,
455  DtObjClassDesc* classDesc);
456 
458  virtual ~DtMode2Encoder();
459 
461  DtMode2Encoder(const DtMode2Encoder& orig);
462 
464  DtMode2Encoder& operator=(const DtMode2Encoder& orig);
465 
466 public:
468  static DtHlaStateEncoder* create(
469  DtExerciseConn* exConn,
470  DtObjClassDesc* classDesc);
471 
472 protected:
473 
476  static bool needIsOn(
477  const DtMode2StateRepository& stateRep,
478  const DtMode2StateRepository& asSeenByRemote);
479 
481  static void encodeIsOn(
482  const DtMode2StateRepository& rep,
483  RTI::AttributeHandleValuePairSet* attrs,
484  RTI::AttributeHandle attrHandle);
485 
488  static bool needIsDamaged(
489  const DtMode2StateRepository& stateRep,
490  const DtMode2StateRepository& asSeenByRemote);
491 
493  static void encodeIsDamaged(
494  const DtMode2StateRepository& rep,
495  RTI::AttributeHandleValuePairSet* attrs,
496  RTI::AttributeHandle attrHandle);
497 
500  static bool needIsMalfunctioning(
501  const DtMode2StateRepository& stateRep,
502  const DtMode2StateRepository& asSeenByRemote);
503 
505  static void encodeIsMalfunctioning(
506  const DtMode2StateRepository& rep,
507  RTI::AttributeHandleValuePairSet* attrs,
508  RTI::AttributeHandle attrHandle);
509 
510 };
511 
515 class DT_DLL_VL DtMode2InterrogatorDecoder : public DtMode2Decoder
516 {
517 public:
519  DtMode2InterrogatorDecoder(
520  DtExerciseConn* exConn,
521  DtObjClassDesc* classDesc);
522 
524  virtual ~DtMode2InterrogatorDecoder();
525 
527  DtMode2InterrogatorDecoder(const DtMode2InterrogatorDecoder& orig);
528 
530  DtMode2InterrogatorDecoder& operator=(const DtMode2InterrogatorDecoder& orig);
531 
532 public:
534  static DtHlaStateDecoder* create(
535  DtExerciseConn* exConn,
536  DtObjClassDesc* classDesc);
537 
538 protected:
539 
540 };
541 
546 class DT_DLL_VL DtMode2InterrogatorEncoder : public DtMode2Encoder
547 {
548 public:
549 
551  DtMode2InterrogatorEncoder(
552  DtExerciseConn* exConn,
553  DtObjClassDesc* classDesc);
554 
556  virtual ~DtMode2InterrogatorEncoder();
557 
559  DtMode2InterrogatorEncoder(const DtMode2InterrogatorEncoder& orig);
560 
562  DtMode2InterrogatorEncoder& operator=(const DtMode2InterrogatorEncoder& orig);
563 
564 public:
566  static DtHlaStateEncoder* create(
567  DtExerciseConn* exConn,
568  DtObjClassDesc* classDesc);
569 
570 protected:
571 
572 };
573 
577 class DT_DLL_VL DtMode2TransponderDecoder : public DtMode2Decoder
578 {
579 public:
581  DtMode2TransponderDecoder(
582  DtExerciseConn* exConn,
583  DtObjClassDesc* classDesc);
584 
586  virtual ~DtMode2TransponderDecoder();
587 
589  DtMode2TransponderDecoder(const DtMode2TransponderDecoder& orig);
590 
592  DtMode2TransponderDecoder& operator=(const DtMode2TransponderDecoder& orig);
593 
594 public:
596  static DtHlaStateDecoder* create(
597  DtExerciseConn* exConn,
598  DtObjClassDesc* classDesc);
599 
600 protected:
601 
603  static void decodeCode(
604  DtMode2TransponderStateRepository* rep,
605  const RTI::AttributeHandleValuePairSet& attrs,
606  int pairSetIndex);
607 
608 };
609 
614 class DT_DLL_VL DtMode2TransponderEncoder : public DtMode2Encoder
615 {
616 public:
617 
619  DtMode2TransponderEncoder(
620  DtExerciseConn* exConn,
621  DtObjClassDesc* classDesc);
622 
624  virtual ~DtMode2TransponderEncoder();
625 
627  DtMode2TransponderEncoder(const DtMode2TransponderEncoder& orig);
628 
630  DtMode2TransponderEncoder& operator=(const DtMode2TransponderEncoder& orig);
631 
632 public:
634  static DtHlaStateEncoder* create(
635  DtExerciseConn* exConn,
636  DtObjClassDesc* classDesc);
637 
638 protected:
639 
642  static bool needCode(
643  const DtMode2TransponderStateRepository& stateRep,
644  const DtMode2TransponderStateRepository& asSeenByRemote);
645 
647  static void encodeCode(
648  const DtMode2TransponderStateRepository& rep,
649  RTI::AttributeHandleValuePairSet* attrs,
650  RTI::AttributeHandle attrHandle);
651 
652 };
653 
657 class DT_DLL_VL DtMode3ADecoder : public DtIFFDataDecoder
658 {
659 public:
661  DtMode3ADecoder(
662  DtExerciseConn* exConn,
663  DtObjClassDesc* classDesc);
664 
666  virtual ~DtMode3ADecoder();
667 
669  DtMode3ADecoder(const DtMode3ADecoder& orig);
670 
672  DtMode3ADecoder& operator=(const DtMode3ADecoder& orig);
673 
674 public:
676  static DtHlaStateDecoder* create(
677  DtExerciseConn* exConn,
678  DtObjClassDesc* classDesc);
679 
680 protected:
681 
683  static void decodeIsOn(
684  DtMode3AStateRepository* rep,
685  const RTI::AttributeHandleValuePairSet& attrs,
686  int pairSetIndex);
687 
689  static void decodeIsDamaged(
690  DtMode3AStateRepository* rep,
691  const RTI::AttributeHandleValuePairSet& attrs,
692  int pairSetIndex);
693 
695  static void decodeIsMalfunctioning(
696  DtMode3AStateRepository* rep,
697  const RTI::AttributeHandleValuePairSet& attrs,
698  int pairSetIndex);
699 
700 };
701 
706 class DT_DLL_VL DtMode3AEncoder : public DtIFFDataEncoder
707 {
708 public:
709 
711  DtMode3AEncoder(
712  DtExerciseConn* exConn,
713  DtObjClassDesc* classDesc);
714 
716  virtual ~DtMode3AEncoder();
717 
719  DtMode3AEncoder(const DtMode3AEncoder& orig);
720 
722  DtMode3AEncoder& operator=(const DtMode3AEncoder& orig);
723 
724 public:
726  static DtHlaStateEncoder* create(
727  DtExerciseConn* exConn,
728  DtObjClassDesc* classDesc);
729 
730 protected:
731 
734  static bool needIsOn(
735  const DtMode3AStateRepository& stateRep,
736  const DtMode3AStateRepository& asSeenByRemote);
737 
739  static void encodeIsOn(
740  const DtMode3AStateRepository& rep,
741  RTI::AttributeHandleValuePairSet* attrs,
742  RTI::AttributeHandle attrHandle);
743 
746  static bool needIsDamaged(
747  const DtMode3AStateRepository& stateRep,
748  const DtMode3AStateRepository& asSeenByRemote);
749 
751  static void encodeIsDamaged(
752  const DtMode3AStateRepository& rep,
753  RTI::AttributeHandleValuePairSet* attrs,
754  RTI::AttributeHandle attrHandle);
755 
758  static bool needIsMalfunctioning(
759  const DtMode3AStateRepository& stateRep,
760  const DtMode3AStateRepository& asSeenByRemote);
761 
763  static void encodeIsMalfunctioning(
764  const DtMode3AStateRepository& rep,
765  RTI::AttributeHandleValuePairSet* attrs,
766  RTI::AttributeHandle attrHandle);
767 
768 };
769 
773 class DT_DLL_VL DtMode3AInterrogatorDecoder : public DtMode3ADecoder
774 {
775 public:
777  DtMode3AInterrogatorDecoder(
778  DtExerciseConn* exConn,
779  DtObjClassDesc* classDesc);
780 
782  virtual ~DtMode3AInterrogatorDecoder();
783 
785  DtMode3AInterrogatorDecoder(const DtMode3AInterrogatorDecoder& orig);
786 
788  DtMode3AInterrogatorDecoder& operator=(const DtMode3AInterrogatorDecoder& orig);
789 
790 public:
792  static DtHlaStateDecoder* create(
793  DtExerciseConn* exConn,
794  DtObjClassDesc* classDesc);
795 
796 protected:
797 
798 };
799 
804 class DT_DLL_VL DtMode3AInterrogatorEncoder : public DtMode3AEncoder
805 {
806 public:
807 
809  DtMode3AInterrogatorEncoder(
810  DtExerciseConn* exConn,
811  DtObjClassDesc* classDesc);
812 
814  virtual ~DtMode3AInterrogatorEncoder();
815 
817  DtMode3AInterrogatorEncoder(const DtMode3AInterrogatorEncoder& orig);
818 
820  DtMode3AInterrogatorEncoder& operator=(const DtMode3AInterrogatorEncoder& orig);
821 
822 public:
824  static DtHlaStateEncoder* create(
825  DtExerciseConn* exConn,
826  DtObjClassDesc* classDesc);
827 
828 protected:
829 
830 };
831 
835 class DT_DLL_VL DtMode3ATransponderDecoder : public DtMode3ADecoder
836 {
837 public:
839  DtMode3ATransponderDecoder(
840  DtExerciseConn* exConn,
841  DtObjClassDesc* classDesc);
842 
844  virtual ~DtMode3ATransponderDecoder();
845 
847  DtMode3ATransponderDecoder(const DtMode3ATransponderDecoder& orig);
848 
850  DtMode3ATransponderDecoder& operator=(const DtMode3ATransponderDecoder& orig);
851 
852 public:
854  static DtHlaStateDecoder* create(
855  DtExerciseConn* exConn,
856  DtObjClassDesc* classDesc);
857 
858 protected:
859 
861  static void decodeCode(
862  DtMode3ATransponderStateRepository* rep,
863  const RTI::AttributeHandleValuePairSet& attrs,
864  int pairSetIndex);
865 
866 };
867 
872 class DT_DLL_VL DtMode3ATransponderEncoder : public DtMode3AEncoder
873 {
874 public:
875 
877  DtMode3ATransponderEncoder(
878  DtExerciseConn* exConn,
879  DtObjClassDesc* classDesc);
880 
882  virtual ~DtMode3ATransponderEncoder();
883 
885  DtMode3ATransponderEncoder(const DtMode3ATransponderEncoder& orig);
886 
888  DtMode3ATransponderEncoder& operator=(const DtMode3ATransponderEncoder& orig);
889 
890 public:
892  static DtHlaStateEncoder* create(
893  DtExerciseConn* exConn,
894  DtObjClassDesc* classDesc);
895 
896 protected:
897 
900  static bool needCode(
901  const DtMode3ATransponderStateRepository& stateRep,
902  const DtMode3ATransponderStateRepository& asSeenByRemote);
903 
905  static void encodeCode(
906  const DtMode3ATransponderStateRepository& rep,
907  RTI::AttributeHandleValuePairSet* attrs,
908  RTI::AttributeHandle attrHandle);
909 
910 };
911 
915 class DT_DLL_VL DtMode4Decoder : public DtIFFDataDecoder
916 {
917 public:
919  DtMode4Decoder(
920  DtExerciseConn* exConn,
921  DtObjClassDesc* classDesc);
922 
924  virtual ~DtMode4Decoder();
925 
927  DtMode4Decoder(const DtMode4Decoder& orig);
928 
930  DtMode4Decoder& operator=(const DtMode4Decoder& orig);
931 
932 public:
934  static DtHlaStateDecoder* create(
935  DtExerciseConn* exConn,
936  DtObjClassDesc* classDesc);
937 
938 protected:
939 
941  static void decodeIsOn(
942  DtMode4StateRepository* rep,
943  const RTI::AttributeHandleValuePairSet& attrs,
944  int pairSetIndex);
945 
947  static void decodeIsDamaged(
948  DtMode4StateRepository* rep,
949  const RTI::AttributeHandleValuePairSet& attrs,
950  int pairSetIndex);
951 
953  static void decodeIsMalfunctioning(
954  DtMode4StateRepository* rep,
955  const RTI::AttributeHandleValuePairSet& attrs,
956  int pairSetIndex);
957 
959  static void decodePseudoCryptoCodeAAvailable(
960  DtMode4StateRepository* rep,
961  const RTI::AttributeHandleValuePairSet& attrs,
962  int pairSetIndex);
963 
965  static void decodePseudoCryptoCodeA(
966  DtMode4StateRepository* rep,
967  const RTI::AttributeHandleValuePairSet& attrs,
968  int pairSetIndex);
969 
971  static void decodePseudoCryptoCodeBAvailable(
972  DtMode4StateRepository* rep,
973  const RTI::AttributeHandleValuePairSet& attrs,
974  int pairSetIndex);
975 
977  static void decodePseudoCryptoCodeB(
978  DtMode4StateRepository* rep,
979  const RTI::AttributeHandleValuePairSet& attrs,
980  int pairSetIndex);
981 
983  static void decodePseudoCryptoCodeActive(
984  DtMode4StateRepository* rep,
985  const RTI::AttributeHandleValuePairSet& attrs,
986  int pairSetIndex);
987 
988 };
989 
994 class DT_DLL_VL DtMode4Encoder : public DtIFFDataEncoder
995 {
996 public:
997 
999  DtMode4Encoder(
1000  DtExerciseConn* exConn,
1001  DtObjClassDesc* classDesc);
1002 
1004  virtual ~DtMode4Encoder();
1005 
1007  DtMode4Encoder(const DtMode4Encoder& orig);
1008 
1010  DtMode4Encoder& operator=(const DtMode4Encoder& orig);
1011 
1012 public:
1014  static DtHlaStateEncoder* create(
1015  DtExerciseConn* exConn,
1016  DtObjClassDesc* classDesc);
1017 
1018 protected:
1019 
1022  static bool needIsOn(
1023  const DtMode4StateRepository& stateRep,
1024  const DtMode4StateRepository& asSeenByRemote);
1025 
1027  static void encodeIsOn(
1028  const DtMode4StateRepository& rep,
1029  RTI::AttributeHandleValuePairSet* attrs,
1030  RTI::AttributeHandle attrHandle);
1031 
1034  static bool needIsDamaged(
1035  const DtMode4StateRepository& stateRep,
1036  const DtMode4StateRepository& asSeenByRemote);
1037 
1039  static void encodeIsDamaged(
1040  const DtMode4StateRepository& rep,
1041  RTI::AttributeHandleValuePairSet* attrs,
1042  RTI::AttributeHandle attrHandle);
1043 
1046  static bool needIsMalfunctioning(
1047  const DtMode4StateRepository& stateRep,
1048  const DtMode4StateRepository& asSeenByRemote);
1049 
1051  static void encodeIsMalfunctioning(
1052  const DtMode4StateRepository& rep,
1053  RTI::AttributeHandleValuePairSet* attrs,
1054  RTI::AttributeHandle attrHandle);
1055 
1058  static bool needPseudoCryptoCodeAAvailable(
1059  const DtMode4StateRepository& stateRep,
1060  const DtMode4StateRepository& asSeenByRemote);
1061 
1063  static void encodePseudoCryptoCodeAAvailable(
1064  const DtMode4StateRepository& rep,
1065  RTI::AttributeHandleValuePairSet* attrs,
1066  RTI::AttributeHandle attrHandle);
1067 
1070  static bool needPseudoCryptoCodeA(
1071  const DtMode4StateRepository& stateRep,
1072  const DtMode4StateRepository& asSeenByRemote);
1073 
1075  static void encodePseudoCryptoCodeA(
1076  const DtMode4StateRepository& rep,
1077  RTI::AttributeHandleValuePairSet* attrs,
1078  RTI::AttributeHandle attrHandle);
1079 
1082  static bool needPseudoCryptoCodeBAvailable(
1083  const DtMode4StateRepository& stateRep,
1084  const DtMode4StateRepository& asSeenByRemote);
1085 
1087  static void encodePseudoCryptoCodeBAvailable(
1088  const DtMode4StateRepository& rep,
1089  RTI::AttributeHandleValuePairSet* attrs,
1090  RTI::AttributeHandle attrHandle);
1091 
1094  static bool needPseudoCryptoCodeB(
1095  const DtMode4StateRepository& stateRep,
1096  const DtMode4StateRepository& asSeenByRemote);
1097 
1099  static void encodePseudoCryptoCodeB(
1100  const DtMode4StateRepository& rep,
1101  RTI::AttributeHandleValuePairSet* attrs,
1102  RTI::AttributeHandle attrHandle);
1103 
1106  static bool needPseudoCryptoCodeActive(
1107  const DtMode4StateRepository& stateRep,
1108  const DtMode4StateRepository& asSeenByRemote);
1109 
1111  static void encodePseudoCryptoCodeActive(
1112  const DtMode4StateRepository& rep,
1113  RTI::AttributeHandleValuePairSet* attrs,
1114  RTI::AttributeHandle attrHandle);
1115 
1116 };
1117 
1121 class DT_DLL_VL DtMode4InterrogatorDecoder : public DtMode4Decoder
1122 {
1123 public:
1125  DtMode4InterrogatorDecoder(
1126  DtExerciseConn* exConn,
1127  DtObjClassDesc* classDesc);
1128 
1130  virtual ~DtMode4InterrogatorDecoder();
1131 
1133  DtMode4InterrogatorDecoder(const DtMode4InterrogatorDecoder& orig);
1134 
1136  DtMode4InterrogatorDecoder& operator=(const DtMode4InterrogatorDecoder& orig);
1137 
1138 public:
1140  static DtHlaStateDecoder* create(
1141  DtExerciseConn* exConn,
1142  DtObjClassDesc* classDesc);
1143 
1144 protected:
1145 
1147  static void decodeChallenge(
1148  DtMode4InterrogatorStateRepository* rep,
1149  const RTI::AttributeHandleValuePairSet& attrs,
1150  int pairSetIndex);
1151 
1152 };
1153 
1158 class DT_DLL_VL DtMode4InterrogatorEncoder : public DtMode4Encoder
1159 {
1160 public:
1161 
1163  DtMode4InterrogatorEncoder(
1164  DtExerciseConn* exConn,
1165  DtObjClassDesc* classDesc);
1166 
1168  virtual ~DtMode4InterrogatorEncoder();
1169 
1171  DtMode4InterrogatorEncoder(const DtMode4InterrogatorEncoder& orig);
1172 
1174  DtMode4InterrogatorEncoder& operator=(const DtMode4InterrogatorEncoder& orig);
1175 
1176 public:
1178  static DtHlaStateEncoder* create(
1179  DtExerciseConn* exConn,
1180  DtObjClassDesc* classDesc);
1181 
1182 protected:
1183 
1186  static bool needChallenge(
1187  const DtMode4InterrogatorStateRepository& stateRep,
1188  const DtMode4InterrogatorStateRepository& asSeenByRemote);
1189 
1191  static void encodeChallenge(
1192  const DtMode4InterrogatorStateRepository& rep,
1193  RTI::AttributeHandleValuePairSet* attrs,
1194  RTI::AttributeHandle attrHandle);
1195 
1196 };
1197 
1201 class DT_DLL_VL DtMode4TransponderDecoder : public DtMode4Decoder
1202 {
1203 public:
1205  DtMode4TransponderDecoder(
1206  DtExerciseConn* exConn,
1207  DtObjClassDesc* classDesc);
1208 
1210  virtual ~DtMode4TransponderDecoder();
1211 
1213  DtMode4TransponderDecoder(const DtMode4TransponderDecoder& orig);
1214 
1216  DtMode4TransponderDecoder& operator=(const DtMode4TransponderDecoder& orig);
1217 
1218 public:
1220  static DtHlaStateDecoder* create(
1221  DtExerciseConn* exConn,
1222  DtObjClassDesc* classDesc);
1223 
1224 protected:
1225 
1227  static void decodeReply(
1228  DtMode4TransponderStateRepository* rep,
1229  const RTI::AttributeHandleValuePairSet& attrs,
1230  int pairSetIndex);
1231 
1232 };
1233 
1238 class DT_DLL_VL DtMode4TransponderEncoder : public DtMode4Encoder
1239 {
1240 public:
1241 
1243  DtMode4TransponderEncoder(
1244  DtExerciseConn* exConn,
1245  DtObjClassDesc* classDesc);
1246 
1248  virtual ~DtMode4TransponderEncoder();
1249 
1251  DtMode4TransponderEncoder(const DtMode4TransponderEncoder& orig);
1252 
1254  DtMode4TransponderEncoder& operator=(const DtMode4TransponderEncoder& orig);
1255 
1256 public:
1258  static DtHlaStateEncoder* create(
1259  DtExerciseConn* exConn,
1260  DtObjClassDesc* classDesc);
1261 
1262 protected:
1263 
1266  static bool needReply(
1267  const DtMode4TransponderStateRepository& stateRep,
1268  const DtMode4TransponderStateRepository& asSeenByRemote);
1269 
1271  static void encodeReply(
1272  const DtMode4TransponderStateRepository& rep,
1273  RTI::AttributeHandleValuePairSet* attrs,
1274  RTI::AttributeHandle attrHandle);
1275 
1276 };
1277 
1281 class DT_DLL_VL DtMode5Decoder : public DtIFFDataDecoder
1282 {
1283 public:
1285  DtMode5Decoder(
1286  DtExerciseConn* exConn,
1287  DtObjClassDesc* classDesc);
1288 
1290  virtual ~DtMode5Decoder();
1291 
1293  DtMode5Decoder(const DtMode5Decoder& orig);
1294 
1296  DtMode5Decoder& operator=(const DtMode5Decoder& orig);
1297 
1298 public:
1300  static DtHlaStateDecoder* create(
1301  DtExerciseConn* exConn,
1302  DtObjClassDesc* classDesc);
1303 
1304 protected:
1305 
1307  static void decodeIsOn(
1308  DtMode5StateRepository* rep,
1309  const RTI::AttributeHandleValuePairSet& attrs,
1310  int pairSetIndex);
1311 
1313  static void decodeIsDamaged(
1314  DtMode5StateRepository* rep,
1315  const RTI::AttributeHandleValuePairSet& attrs,
1316  int pairSetIndex);
1317 
1319  static void decodeIsMalfunctioning(
1320  DtMode5StateRepository* rep,
1321  const RTI::AttributeHandleValuePairSet& attrs,
1322  int pairSetIndex);
1323 
1325  static void decodePseudoCryptoCodeAvailable(
1326  DtMode5StateRepository* rep,
1327  const RTI::AttributeHandleValuePairSet& attrs,
1328  int pairSetIndex);
1329 
1331  static void decodePseudoCryptoCode(
1332  DtMode5StateRepository* rep,
1333  const RTI::AttributeHandleValuePairSet& attrs,
1334  int pairSetIndex);
1335 
1337  static void decodeSpecificInformation(
1338  DtMode5StateRepository* rep,
1339  const RTI::AttributeHandleValuePairSet& attrs,
1340  int pairSetIndex);
1341 
1343  static void decodeMission(
1344  DtMode5StateRepository* rep,
1345  const RTI::AttributeHandleValuePairSet& attrs,
1346  int pairSetIndex);
1347 
1349  static void decodeMessageFormatsCapable(
1350  DtMode5StateRepository* rep,
1351  const RTI::AttributeHandleValuePairSet& attrs,
1352  int pairSetIndex);
1353 
1355  static void decodeIFFData(
1356  DtMode5StateRepository* rep,
1357  const RTI::AttributeHandleValuePairSet& attrs,
1358  int pairSetIndex);
1359 
1360 };
1361 
1366 class DT_DLL_VL DtMode5Encoder : public DtIFFDataEncoder
1367 {
1368 public:
1369 
1371  DtMode5Encoder(
1372  DtExerciseConn* exConn,
1373  DtObjClassDesc* classDesc);
1374 
1376  virtual ~DtMode5Encoder();
1377 
1379  DtMode5Encoder(const DtMode5Encoder& orig);
1380 
1382  DtMode5Encoder& operator=(const DtMode5Encoder& orig);
1383 
1384 public:
1386  static DtHlaStateEncoder* create(
1387  DtExerciseConn* exConn,
1388  DtObjClassDesc* classDesc);
1389 
1390 protected:
1391 
1394  static bool needIsOn(
1395  const DtMode5StateRepository& stateRep,
1396  const DtMode5StateRepository& asSeenByRemote);
1397 
1399  static void encodeIsOn(
1400  const DtMode5StateRepository& rep,
1401  RTI::AttributeHandleValuePairSet* attrs,
1402  RTI::AttributeHandle attrHandle);
1403 
1406  static bool needIsDamaged(
1407  const DtMode5StateRepository& stateRep,
1408  const DtMode5StateRepository& asSeenByRemote);
1409 
1411  static void encodeIsDamaged(
1412  const DtMode5StateRepository& rep,
1413  RTI::AttributeHandleValuePairSet* attrs,
1414  RTI::AttributeHandle attrHandle);
1415 
1418  static bool needIsMalfunctioning(
1419  const DtMode5StateRepository& stateRep,
1420  const DtMode5StateRepository& asSeenByRemote);
1421 
1423  static void encodeIsMalfunctioning(
1424  const DtMode5StateRepository& rep,
1425  RTI::AttributeHandleValuePairSet* attrs,
1426  RTI::AttributeHandle attrHandle);
1427 
1430  static bool needPseudoCryptoCodeAvailable(
1431  const DtMode5StateRepository& stateRep,
1432  const DtMode5StateRepository& asSeenByRemote);
1433 
1435  static void encodePseudoCryptoCodeAvailable(
1436  const DtMode5StateRepository& rep,
1437  RTI::AttributeHandleValuePairSet* attrs,
1438  RTI::AttributeHandle attrHandle);
1439 
1442  static bool needPseudoCryptoCode(
1443  const DtMode5StateRepository& stateRep,
1444  const DtMode5StateRepository& asSeenByRemote);
1445 
1447  static void encodePseudoCryptoCode(
1448  const DtMode5StateRepository& rep,
1449  RTI::AttributeHandleValuePairSet* attrs,
1450  RTI::AttributeHandle attrHandle);
1451 
1454  static bool needSpecificInformation(
1455  const DtMode5StateRepository& stateRep,
1456  const DtMode5StateRepository& asSeenByRemote);
1457 
1459  static void encodeSpecificInformation(
1460  const DtMode5StateRepository& rep,
1461  RTI::AttributeHandleValuePairSet* attrs,
1462  RTI::AttributeHandle attrHandle);
1463 
1466  static bool needMission(
1467  const DtMode5StateRepository& stateRep,
1468  const DtMode5StateRepository& asSeenByRemote);
1469 
1471  static void encodeMission(
1472  const DtMode5StateRepository& rep,
1473  RTI::AttributeHandleValuePairSet* attrs,
1474  RTI::AttributeHandle attrHandle);
1475 
1478  static bool needMessageFormatsCapable(
1479  const DtMode5StateRepository& stateRep,
1480  const DtMode5StateRepository& asSeenByRemote);
1481 
1483  static void encodeMessageFormatsCapable(
1484  const DtMode5StateRepository& rep,
1485  RTI::AttributeHandleValuePairSet* attrs,
1486  RTI::AttributeHandle attrHandle);
1487 
1490  static bool needIFFData(
1491  const DtMode5StateRepository& stateRep,
1492  const DtMode5StateRepository& asSeenByRemote);
1493 
1495  static void encodeIFFData(
1496  const DtMode5StateRepository& rep,
1497  RTI::AttributeHandleValuePairSet* attrs,
1498  RTI::AttributeHandle attrHandle);
1499 
1500 };
1501 
1505 class DT_DLL_VL DtMode5InterrogatorDecoder : public DtMode5Decoder
1506 {
1507 public:
1509  DtMode5InterrogatorDecoder(
1510  DtExerciseConn* exConn,
1511  DtObjClassDesc* classDesc);
1512 
1514  virtual ~DtMode5InterrogatorDecoder();
1515 
1517  DtMode5InterrogatorDecoder(const DtMode5InterrogatorDecoder& orig);
1518 
1520  DtMode5InterrogatorDecoder& operator=(const DtMode5InterrogatorDecoder& orig);
1521 
1522 public:
1524  static DtHlaStateDecoder* create(
1525  DtExerciseConn* exConn,
1526  DtObjClassDesc* classDesc);
1527 
1528 protected:
1529 
1530 };
1531 
1536 class DT_DLL_VL DtMode5InterrogatorEncoder : public DtMode5Encoder
1537 {
1538 public:
1539 
1541  DtMode5InterrogatorEncoder(
1542  DtExerciseConn* exConn,
1543  DtObjClassDesc* classDesc);
1544 
1546  virtual ~DtMode5InterrogatorEncoder();
1547 
1549  DtMode5InterrogatorEncoder(const DtMode5InterrogatorEncoder& orig);
1550 
1552  DtMode5InterrogatorEncoder& operator=(const DtMode5InterrogatorEncoder& orig);
1553 
1554 public:
1556  static DtHlaStateEncoder* create(
1557  DtExerciseConn* exConn,
1558  DtObjClassDesc* classDesc);
1559 
1560 protected:
1561 
1562 };
1563 
1567 class DT_DLL_VL DtMode5TransponderDecoder : public DtMode5Decoder
1568 {
1569 public:
1571  DtMode5TransponderDecoder(
1572  DtExerciseConn* exConn,
1573  DtObjClassDesc* classDesc);
1574 
1576  virtual ~DtMode5TransponderDecoder();
1577 
1579  DtMode5TransponderDecoder(const DtMode5TransponderDecoder& orig);
1580 
1582  DtMode5TransponderDecoder& operator=(const DtMode5TransponderDecoder& orig);
1583 
1584 public:
1586  static DtHlaStateDecoder* create(
1587  DtExerciseConn* exConn,
1588  DtObjClassDesc* classDesc);
1589 
1590 protected:
1591 
1593  static void decodePlatformType(
1594  DtMode5TransponderStateRepository* rep,
1595  const RTI::AttributeHandleValuePairSet& attrs,
1596  int pairSetIndex);
1597 
1599  static void decodeNationalOrigin(
1600  DtMode5TransponderStateRepository* rep,
1601  const RTI::AttributeHandleValuePairSet& attrs,
1602  int pairSetIndex);
1603 
1605  static void decodePersonalIdentificationNumber(
1606  DtMode5TransponderStateRepository* rep,
1607  const RTI::AttributeHandleValuePairSet& attrs,
1608  int pairSetIndex);
1609 
1611  static void decodeAntennaSelection(
1612  DtMode5TransponderStateRepository* rep,
1613  const RTI::AttributeHandleValuePairSet& attrs,
1614  int pairSetIndex);
1615 
1617  static void decodeLevelSelection(
1618  DtMode5TransponderStateRepository* rep,
1619  const RTI::AttributeHandleValuePairSet& attrs,
1620  int pairSetIndex);
1621 
1623  static void decodeSquitterIsOn(
1624  DtMode5TransponderStateRepository* rep,
1625  const RTI::AttributeHandleValuePairSet& attrs,
1626  int pairSetIndex);
1627 
1629  static void decodeLevel2SquitterStatus(
1630  DtMode5TransponderStateRepository* rep,
1631  const RTI::AttributeHandleValuePairSet& attrs,
1632  int pairSetIndex);
1633 
1635  static void decodeLineTestIsEnabled(
1636  DtMode5TransponderStateRepository* rep,
1637  const RTI::AttributeHandleValuePairSet& attrs,
1638  int pairSetIndex);
1639 
1641  static void decodeReply(
1642  DtMode5TransponderStateRepository* rep,
1643  const RTI::AttributeHandleValuePairSet& attrs,
1644  int pairSetIndex);
1645 
1647  static void decodeFigureOfMerit(
1648  DtMode5TransponderStateRepository* rep,
1649  const RTI::AttributeHandleValuePairSet& attrs,
1650  int pairSetIndex);
1651 
1653  static void decodeNavigationSource(
1654  DtMode5TransponderStateRepository* rep,
1655  const RTI::AttributeHandleValuePairSet& attrs,
1656  int pairSetIndex);
1657 
1659  static void decodeCryptoControlDataIsPresent(
1660  DtMode5TransponderStateRepository* rep,
1661  const RTI::AttributeHandleValuePairSet& attrs,
1662  int pairSetIndex);
1663 
1665  static void decodeLocationDataIsPresent(
1666  DtMode5TransponderStateRepository* rep,
1667  const RTI::AttributeHandleValuePairSet& attrs,
1668  int pairSetIndex);
1669 
1671  static void decodeLocationErrorDataIsPresent(
1672  DtMode5TransponderStateRepository* rep,
1673  const RTI::AttributeHandleValuePairSet& attrs,
1674  int pairSetIndex);
1675 
1676 };
1677 
1682 class DT_DLL_VL DtMode5TransponderEncoder : public DtMode5Encoder
1683 {
1684 public:
1685 
1687  DtMode5TransponderEncoder(
1688  DtExerciseConn* exConn,
1689  DtObjClassDesc* classDesc);
1690 
1692  virtual ~DtMode5TransponderEncoder();
1693 
1695  DtMode5TransponderEncoder(const DtMode5TransponderEncoder& orig);
1696 
1698  DtMode5TransponderEncoder& operator=(const DtMode5TransponderEncoder& orig);
1699 
1700 public:
1702  static DtHlaStateEncoder* create(
1703  DtExerciseConn* exConn,
1704  DtObjClassDesc* classDesc);
1705 
1706 protected:
1707 
1710  static bool needPlatformType(
1711  const DtMode5TransponderStateRepository& stateRep,
1712  const DtMode5TransponderStateRepository& asSeenByRemote);
1713 
1715  static void encodePlatformType(
1716  const DtMode5TransponderStateRepository& rep,
1717  RTI::AttributeHandleValuePairSet* attrs,
1718  RTI::AttributeHandle attrHandle);
1719 
1722  static bool needNationalOrigin(
1723  const DtMode5TransponderStateRepository& stateRep,
1724  const DtMode5TransponderStateRepository& asSeenByRemote);
1725 
1727  static void encodeNationalOrigin(
1728  const DtMode5TransponderStateRepository& rep,
1729  RTI::AttributeHandleValuePairSet* attrs,
1730  RTI::AttributeHandle attrHandle);
1731 
1734  static bool needPersonalIdentificationNumber(
1735  const DtMode5TransponderStateRepository& stateRep,
1736  const DtMode5TransponderStateRepository& asSeenByRemote);
1737 
1739  static void encodePersonalIdentificationNumber(
1740  const DtMode5TransponderStateRepository& rep,
1741  RTI::AttributeHandleValuePairSet* attrs,
1742  RTI::AttributeHandle attrHandle);
1743 
1746  static bool needAntennaSelection(
1747  const DtMode5TransponderStateRepository& stateRep,
1748  const DtMode5TransponderStateRepository& asSeenByRemote);
1749 
1751  static void encodeAntennaSelection(
1752  const DtMode5TransponderStateRepository& rep,
1753  RTI::AttributeHandleValuePairSet* attrs,
1754  RTI::AttributeHandle attrHandle);
1755 
1758  static bool needLevelSelection(
1759  const DtMode5TransponderStateRepository& stateRep,
1760  const DtMode5TransponderStateRepository& asSeenByRemote);
1761 
1763  static void encodeLevelSelection(
1764  const DtMode5TransponderStateRepository& rep,
1765  RTI::AttributeHandleValuePairSet* attrs,
1766  RTI::AttributeHandle attrHandle);
1767 
1770  static bool needSquitterIsOn(
1771  const DtMode5TransponderStateRepository& stateRep,
1772  const DtMode5TransponderStateRepository& asSeenByRemote);
1773 
1775  static void encodeSquitterIsOn(
1776  const DtMode5TransponderStateRepository& rep,
1777  RTI::AttributeHandleValuePairSet* attrs,
1778  RTI::AttributeHandle attrHandle);
1779 
1782  static bool needLevel2SquitterStatus(
1783  const DtMode5TransponderStateRepository& stateRep,
1784  const DtMode5TransponderStateRepository& asSeenByRemote);
1785 
1787  static void encodeLevel2SquitterStatus(
1788  const DtMode5TransponderStateRepository& rep,
1789  RTI::AttributeHandleValuePairSet* attrs,
1790  RTI::AttributeHandle attrHandle);
1791 
1794  static bool needLineTestIsEnabled(
1795  const DtMode5TransponderStateRepository& stateRep,
1796  const DtMode5TransponderStateRepository& asSeenByRemote);
1797 
1799  static void encodeLineTestIsEnabled(
1800  const DtMode5TransponderStateRepository& rep,
1801  RTI::AttributeHandleValuePairSet* attrs,
1802  RTI::AttributeHandle attrHandle);
1803 
1806  static bool needReply(
1807  const DtMode5TransponderStateRepository& stateRep,
1808  const DtMode5TransponderStateRepository& asSeenByRemote);
1809 
1811  static void encodeReply(
1812  const DtMode5TransponderStateRepository& rep,
1813  RTI::AttributeHandleValuePairSet* attrs,
1814  RTI::AttributeHandle attrHandle);
1815 
1818  static bool needFigureOfMerit(
1819  const DtMode5TransponderStateRepository& stateRep,
1820  const DtMode5TransponderStateRepository& asSeenByRemote);
1821 
1823  static void encodeFigureOfMerit(
1824  const DtMode5TransponderStateRepository& rep,
1825  RTI::AttributeHandleValuePairSet* attrs,
1826  RTI::AttributeHandle attrHandle);
1827 
1830  static bool needNavigationSource(
1831  const DtMode5TransponderStateRepository& stateRep,
1832  const DtMode5TransponderStateRepository& asSeenByRemote);
1833 
1835  static void encodeNavigationSource(
1836  const DtMode5TransponderStateRepository& rep,
1837  RTI::AttributeHandleValuePairSet* attrs,
1838  RTI::AttributeHandle attrHandle);
1839 
1842  static bool needCryptoControlDataIsPresent(
1843  const DtMode5TransponderStateRepository& stateRep,
1844  const DtMode5TransponderStateRepository& asSeenByRemote);
1845 
1847  static void encodeCryptoControlDataIsPresent(
1848  const DtMode5TransponderStateRepository& rep,
1849  RTI::AttributeHandleValuePairSet* attrs,
1850  RTI::AttributeHandle attrHandle);
1851 
1854  static bool needLocationDataIsPresent(
1855  const DtMode5TransponderStateRepository& stateRep,
1856  const DtMode5TransponderStateRepository& asSeenByRemote);
1857 
1859  static void encodeLocationDataIsPresent(
1860  const DtMode5TransponderStateRepository& rep,
1861  RTI::AttributeHandleValuePairSet* attrs,
1862  RTI::AttributeHandle attrHandle);
1863 
1866  static bool needLocationErrorDataIsPresent(
1867  const DtMode5TransponderStateRepository& stateRep,
1868  const DtMode5TransponderStateRepository& asSeenByRemote);
1869 
1871  static void encodeLocationErrorDataIsPresent(
1872  const DtMode5TransponderStateRepository& rep,
1873  RTI::AttributeHandleValuePairSet* attrs,
1874  RTI::AttributeHandle attrHandle);
1875 
1876 };
1877 
1881 class DT_DLL_VL DtModeCDecoder : public DtIFFDataDecoder
1882 {
1883 public:
1885  DtModeCDecoder(
1886  DtExerciseConn* exConn,
1887  DtObjClassDesc* classDesc);
1888 
1890  virtual ~DtModeCDecoder();
1891 
1893  DtModeCDecoder(const DtModeCDecoder& orig);
1894 
1896  DtModeCDecoder& operator=(const DtModeCDecoder& orig);
1897 
1898 public:
1900  static DtHlaStateDecoder* create(
1901  DtExerciseConn* exConn,
1902  DtObjClassDesc* classDesc);
1903 
1904 protected:
1905 
1907  static void decodeIsOn(
1908  DtModeCStateRepository* rep,
1909  const RTI::AttributeHandleValuePairSet& attrs,
1910  int pairSetIndex);
1911 
1913  static void decodeIsDamaged(
1914  DtModeCStateRepository* rep,
1915  const RTI::AttributeHandleValuePairSet& attrs,
1916  int pairSetIndex);
1917 
1919  static void decodeIsMalfunctioning(
1920  DtModeCStateRepository* rep,
1921  const RTI::AttributeHandleValuePairSet& attrs,
1922  int pairSetIndex);
1923 
1924 };
1925 
1930 class DT_DLL_VL DtModeCEncoder : public DtIFFDataEncoder
1931 {
1932 public:
1933 
1935  DtModeCEncoder(
1936  DtExerciseConn* exConn,
1937  DtObjClassDesc* classDesc);
1938 
1940  virtual ~DtModeCEncoder();
1941 
1943  DtModeCEncoder(const DtModeCEncoder& orig);
1944 
1946  DtModeCEncoder& operator=(const DtModeCEncoder& orig);
1947 
1948 public:
1950  static DtHlaStateEncoder* create(
1951  DtExerciseConn* exConn,
1952  DtObjClassDesc* classDesc);
1953 
1954 protected:
1955 
1958  static bool needIsOn(
1959  const DtModeCStateRepository& stateRep,
1960  const DtModeCStateRepository& asSeenByRemote);
1961 
1963  static void encodeIsOn(
1964  const DtModeCStateRepository& rep,
1965  RTI::AttributeHandleValuePairSet* attrs,
1966  RTI::AttributeHandle attrHandle);
1967 
1970  static bool needIsDamaged(
1971  const DtModeCStateRepository& stateRep,
1972  const DtModeCStateRepository& asSeenByRemote);
1973 
1975  static void encodeIsDamaged(
1976  const DtModeCStateRepository& rep,
1977  RTI::AttributeHandleValuePairSet* attrs,
1978  RTI::AttributeHandle attrHandle);
1979 
1982  static bool needIsMalfunctioning(
1983  const DtModeCStateRepository& stateRep,
1984  const DtModeCStateRepository& asSeenByRemote);
1985 
1987  static void encodeIsMalfunctioning(
1988  const DtModeCStateRepository& rep,
1989  RTI::AttributeHandleValuePairSet* attrs,
1990  RTI::AttributeHandle attrHandle);
1991 
1992 };
1993 
1997 class DT_DLL_VL DtModeCInterrogatorDecoder : public DtModeCDecoder
1998 {
1999 public:
2001  DtModeCInterrogatorDecoder(
2002  DtExerciseConn* exConn,
2003  DtObjClassDesc* classDesc);
2004 
2006  virtual ~DtModeCInterrogatorDecoder();
2007 
2009  DtModeCInterrogatorDecoder(const DtModeCInterrogatorDecoder& orig);
2010 
2012  DtModeCInterrogatorDecoder& operator=(const DtModeCInterrogatorDecoder& orig);
2013 
2014 public:
2016  static DtHlaStateDecoder* create(
2017  DtExerciseConn* exConn,
2018  DtObjClassDesc* classDesc);
2019 
2020 protected:
2021 
2022 };
2023 
2028 class DT_DLL_VL DtModeCInterrogatorEncoder : public DtModeCEncoder
2029 {
2030 public:
2031 
2033  DtModeCInterrogatorEncoder(
2034  DtExerciseConn* exConn,
2035  DtObjClassDesc* classDesc);
2036 
2038  virtual ~DtModeCInterrogatorEncoder();
2039 
2041  DtModeCInterrogatorEncoder(const DtModeCInterrogatorEncoder& orig);
2042 
2044  DtModeCInterrogatorEncoder& operator=(const DtModeCInterrogatorEncoder& orig);
2045 
2046 public:
2048  static DtHlaStateEncoder* create(
2049  DtExerciseConn* exConn,
2050  DtObjClassDesc* classDesc);
2051 
2052 protected:
2053 
2054 };
2055 
2059 class DT_DLL_VL DtModeCTransponderDecoder : public DtModeCDecoder
2060 {
2061 public:
2063  DtModeCTransponderDecoder(
2064  DtExerciseConn* exConn,
2065  DtObjClassDesc* classDesc);
2066 
2068  virtual ~DtModeCTransponderDecoder();
2069 
2071  DtModeCTransponderDecoder(const DtModeCTransponderDecoder& orig);
2072 
2074  DtModeCTransponderDecoder& operator=(const DtModeCTransponderDecoder& orig);
2075 
2076 public:
2078  static DtHlaStateDecoder* create(
2079  DtExerciseConn* exConn,
2080  DtObjClassDesc* classDesc);
2081 
2082 protected:
2083 
2085  static void decodeAltitudeAvailable(
2086  DtModeCTransponderStateRepository* rep,
2087  const RTI::AttributeHandleValuePairSet& attrs,
2088  int pairSetIndex);
2089 
2091  static void decodeAltitude(
2092  DtModeCTransponderStateRepository* rep,
2093  const RTI::AttributeHandleValuePairSet& attrs,
2094  int pairSetIndex);
2095 
2096 };
2097 
2102 class DT_DLL_VL DtModeCTransponderEncoder : public DtModeCEncoder
2103 {
2104 public:
2105 
2107  DtModeCTransponderEncoder(
2108  DtExerciseConn* exConn,
2109  DtObjClassDesc* classDesc);
2110 
2112  virtual ~DtModeCTransponderEncoder();
2113 
2115  DtModeCTransponderEncoder(const DtModeCTransponderEncoder& orig);
2116 
2118  DtModeCTransponderEncoder& operator=(const DtModeCTransponderEncoder& orig);
2119 
2120 public:
2122  static DtHlaStateEncoder* create(
2123  DtExerciseConn* exConn,
2124  DtObjClassDesc* classDesc);
2125 
2126 protected:
2127 
2130  static bool needAltitudeAvailable(
2131  const DtModeCTransponderStateRepository& stateRep,
2132  const DtModeCTransponderStateRepository& asSeenByRemote);
2133 
2135  static void encodeAltitudeAvailable(
2136  const DtModeCTransponderStateRepository& rep,
2137  RTI::AttributeHandleValuePairSet* attrs,
2138  RTI::AttributeHandle attrHandle);
2139 
2142  static bool needAltitude(
2143  const DtModeCTransponderStateRepository& stateRep,
2144  const DtModeCTransponderStateRepository& asSeenByRemote);
2145 
2147  static void encodeAltitude(
2148  const DtModeCTransponderStateRepository& rep,
2149  RTI::AttributeHandleValuePairSet* attrs,
2150  RTI::AttributeHandle attrHandle);
2151 
2152 };
2153 
2157 class DT_DLL_VL DtModeSDecoder : public DtIFFDataDecoder
2158 {
2159 public:
2161  DtModeSDecoder(
2162  DtExerciseConn* exConn,
2163  DtObjClassDesc* classDesc);
2164 
2166  virtual ~DtModeSDecoder();
2167 
2169  DtModeSDecoder(const DtModeSDecoder& orig);
2170 
2172  DtModeSDecoder& operator=(const DtModeSDecoder& orig);
2173 
2174 public:
2176  static DtHlaStateDecoder* create(
2177  DtExerciseConn* exConn,
2178  DtObjClassDesc* classDesc);
2179 
2180 protected:
2181 
2183  static void decodeIsOn(
2184  DtModeSStateRepository* rep,
2185  const RTI::AttributeHandleValuePairSet& attrs,
2186  int pairSetIndex);
2187 
2189  static void decodeIsDamaged(
2190  DtModeSStateRepository* rep,
2191  const RTI::AttributeHandleValuePairSet& attrs,
2192  int pairSetIndex);
2193 
2195  static void decodeIsMalfunctioning(
2196  DtModeSStateRepository* rep,
2197  const RTI::AttributeHandleValuePairSet& attrs,
2198  int pairSetIndex);
2199 
2201  static void decodeSpecificInformation(
2202  DtModeSStateRepository* rep,
2203  const RTI::AttributeHandleValuePairSet& attrs,
2204  int pairSetIndex);
2205 
2207  static void decodeLevelsPresent(
2208  DtModeSStateRepository* rep,
2209  const RTI::AttributeHandleValuePairSet& attrs,
2210  int pairSetIndex);
2211 
2213  static void decodeIFFData(
2214  DtModeSStateRepository* rep,
2215  const RTI::AttributeHandleValuePairSet& attrs,
2216  int pairSetIndex);
2217 
2218 };
2219 
2224 class DT_DLL_VL DtModeSEncoder : public DtIFFDataEncoder
2225 {
2226 public:
2227 
2229  DtModeSEncoder(
2230  DtExerciseConn* exConn,
2231  DtObjClassDesc* classDesc);
2232 
2234  virtual ~DtModeSEncoder();
2235 
2237  DtModeSEncoder(const DtModeSEncoder& orig);
2238 
2240  DtModeSEncoder& operator=(const DtModeSEncoder& orig);
2241 
2242 public:
2244  static DtHlaStateEncoder* create(
2245  DtExerciseConn* exConn,
2246  DtObjClassDesc* classDesc);
2247 
2248 protected:
2249 
2252  static bool needIsOn(
2253  const DtModeSStateRepository& stateRep,
2254  const DtModeSStateRepository& asSeenByRemote);
2255 
2257  static void encodeIsOn(
2258  const DtModeSStateRepository& rep,
2259  RTI::AttributeHandleValuePairSet* attrs,
2260  RTI::AttributeHandle attrHandle);
2261 
2264  static bool needIsDamaged(
2265  const DtModeSStateRepository& stateRep,
2266  const DtModeSStateRepository& asSeenByRemote);
2267 
2269  static void encodeIsDamaged(
2270  const DtModeSStateRepository& rep,
2271  RTI::AttributeHandleValuePairSet* attrs,
2272  RTI::AttributeHandle attrHandle);
2273 
2276  static bool needIsMalfunctioning(
2277  const DtModeSStateRepository& stateRep,
2278  const DtModeSStateRepository& asSeenByRemote);
2279 
2281  static void encodeIsMalfunctioning(
2282  const DtModeSStateRepository& rep,
2283  RTI::AttributeHandleValuePairSet* attrs,
2284  RTI::AttributeHandle attrHandle);
2285 
2288  static bool needSpecificInformation(
2289  const DtModeSStateRepository& stateRep,
2290  const DtModeSStateRepository& asSeenByRemote);
2291 
2293  static void encodeSpecificInformation(
2294  const DtModeSStateRepository& rep,
2295  RTI::AttributeHandleValuePairSet* attrs,
2296  RTI::AttributeHandle attrHandle);
2297 
2300  static bool needLevelsPresent(
2301  const DtModeSStateRepository& stateRep,
2302  const DtModeSStateRepository& asSeenByRemote);
2303 
2305  static void encodeLevelsPresent(
2306  const DtModeSStateRepository& rep,
2307  RTI::AttributeHandleValuePairSet* attrs,
2308  RTI::AttributeHandle attrHandle);
2309 
2312  static bool needIFFData(
2313  const DtModeSStateRepository& stateRep,
2314  const DtModeSStateRepository& asSeenByRemote);
2315 
2317  static void encodeIFFData(
2318  const DtModeSStateRepository& rep,
2319  RTI::AttributeHandleValuePairSet* attrs,
2320  RTI::AttributeHandle attrHandle);
2321 
2322 };
2323 
2327 class DT_DLL_VL DtModeSInterrogatorDecoder : public DtModeSDecoder
2328 {
2329 public:
2331  DtModeSInterrogatorDecoder(
2332  DtExerciseConn* exConn,
2333  DtObjClassDesc* classDesc);
2334 
2336  virtual ~DtModeSInterrogatorDecoder();
2337 
2339  DtModeSInterrogatorDecoder(const DtModeSInterrogatorDecoder& orig);
2340 
2342  DtModeSInterrogatorDecoder& operator=(const DtModeSInterrogatorDecoder& orig);
2343 
2344 public:
2346  static DtHlaStateDecoder* create(
2347  DtExerciseConn* exConn,
2348  DtObjClassDesc* classDesc);
2349 
2350 protected:
2351 
2353  static void decodeInterrogatorIdentifier(
2354  DtModeSInterrogatorStateRepository* rep,
2355  const RTI::AttributeHandleValuePairSet& attrs,
2356  int pairSetIndex);
2357 
2359  static void decodeTransmitState(
2360  DtModeSInterrogatorStateRepository* rep,
2361  const RTI::AttributeHandleValuePairSet& attrs,
2362  int pairSetIndex);
2363 
2364 };
2365 
2370 class DT_DLL_VL DtModeSInterrogatorEncoder : public DtModeSEncoder
2371 {
2372 public:
2373 
2375  DtModeSInterrogatorEncoder(
2376  DtExerciseConn* exConn,
2377  DtObjClassDesc* classDesc);
2378 
2380  virtual ~DtModeSInterrogatorEncoder();
2381 
2383  DtModeSInterrogatorEncoder(const DtModeSInterrogatorEncoder& orig);
2384 
2386  DtModeSInterrogatorEncoder& operator=(const DtModeSInterrogatorEncoder& orig);
2387 
2388 public:
2390  static DtHlaStateEncoder* create(
2391  DtExerciseConn* exConn,
2392  DtObjClassDesc* classDesc);
2393 
2394 protected:
2395 
2398  static bool needInterrogatorIdentifier(
2399  const DtModeSInterrogatorStateRepository& stateRep,
2400  const DtModeSInterrogatorStateRepository& asSeenByRemote);
2401 
2403  static void encodeInterrogatorIdentifier(
2404  const DtModeSInterrogatorStateRepository& rep,
2405  RTI::AttributeHandleValuePairSet* attrs,
2406  RTI::AttributeHandle attrHandle);
2407 
2410  static bool needTransmitState(
2411  const DtModeSInterrogatorStateRepository& stateRep,
2412  const DtModeSInterrogatorStateRepository& asSeenByRemote);
2413 
2415  static void encodeTransmitState(
2416  const DtModeSInterrogatorStateRepository& rep,
2417  RTI::AttributeHandleValuePairSet* attrs,
2418  RTI::AttributeHandle attrHandle);
2419 
2420 };
2421 
2425 class DT_DLL_VL DtModeSTransponderDecoder : public DtModeSDecoder
2426 {
2427 public:
2429  DtModeSTransponderDecoder(
2430  DtExerciseConn* exConn,
2431  DtObjClassDesc* classDesc);
2432 
2434  virtual ~DtModeSTransponderDecoder();
2435 
2437  DtModeSTransponderDecoder(const DtModeSTransponderDecoder& orig);
2438 
2440  DtModeSTransponderDecoder& operator=(const DtModeSTransponderDecoder& orig);
2441 
2442 public:
2444  static DtHlaStateDecoder* create(
2445  DtExerciseConn* exConn,
2446  DtObjClassDesc* classDesc);
2447 
2448 protected:
2449 
2451  static void decodeAircraftAddress(
2452  DtModeSTransponderStateRepository* rep,
2453  const RTI::AttributeHandleValuePairSet& attrs,
2454  int pairSetIndex);
2455 
2457  static void decodeAircraftIdentificationType(
2458  DtModeSTransponderStateRepository* rep,
2459  const RTI::AttributeHandleValuePairSet& attrs,
2460  int pairSetIndex);
2461 
2463  static void decodeAircraftIdentification(
2464  DtModeSTransponderStateRepository* rep,
2465  const RTI::AttributeHandleValuePairSet& attrs,
2466  int pairSetIndex);
2467 
2469  static void decodeSquitterIsOn(
2470  DtModeSTransponderStateRepository* rep,
2471  const RTI::AttributeHandleValuePairSet& attrs,
2472  int pairSetIndex);
2473 
2475  static void decodeSquitterType(
2476  DtModeSTransponderStateRepository* rep,
2477  const RTI::AttributeHandleValuePairSet& attrs,
2478  int pairSetIndex);
2479 
2481  static void decodeCapabilityReport(
2482  DtModeSTransponderStateRepository* rep,
2483  const RTI::AttributeHandleValuePairSet& attrs,
2484  int pairSetIndex);
2485 
2487  static void decodeAircraftPresentDomain(
2488  DtModeSTransponderStateRepository* rep,
2489  const RTI::AttributeHandleValuePairSet& attrs,
2490  int pairSetIndex);
2491 
2493  static void decodeAltitudeAvailable(
2494  DtModeSTransponderStateRepository* rep,
2495  const RTI::AttributeHandleValuePairSet& attrs,
2496  int pairSetIndex);
2497 
2499  static void decodeAltitude(
2500  DtModeSTransponderStateRepository* rep,
2501  const RTI::AttributeHandleValuePairSet& attrs,
2502  int pairSetIndex);
2503 
2505  static void decodeSquitterRecordSource(
2506  DtModeSTransponderStateRepository* rep,
2507  const RTI::AttributeHandleValuePairSet& attrs,
2508  int pairSetIndex);
2509 
2511  static void decodeAirbornePositionReportDataIsPresent(
2512  DtModeSTransponderStateRepository* rep,
2513  const RTI::AttributeHandleValuePairSet& attrs,
2514  int pairSetIndex);
2515 
2517  static void decodeAirborneVelocityReportDataIsPresent(
2518  DtModeSTransponderStateRepository* rep,
2519  const RTI::AttributeHandleValuePairSet& attrs,
2520  int pairSetIndex);
2521 
2523  static void decodeSurfacePositionReportDataIsPresent(
2524  DtModeSTransponderStateRepository* rep,
2525  const RTI::AttributeHandleValuePairSet& attrs,
2526  int pairSetIndex);
2527 
2529  static void decodeIdentificationReportDataIsPresent(
2530  DtModeSTransponderStateRepository* rep,
2531  const RTI::AttributeHandleValuePairSet& attrs,
2532  int pairSetIndex);
2533 
2535  static void decodeEventDrivenReportDataIsPresent(
2536  DtModeSTransponderStateRepository* rep,
2537  const RTI::AttributeHandleValuePairSet& attrs,
2538  int pairSetIndex);
2539 
2541  static void decodeDAPSource(
2542  DtModeSTransponderStateRepository* rep,
2543  const RTI::AttributeHandleValuePairSet& attrs,
2544  int pairSetIndex);
2545 
2546 };
2547 
2552 class DT_DLL_VL DtModeSTransponderEncoder : public DtModeSEncoder
2553 {
2554 public:
2555 
2557  DtModeSTransponderEncoder(
2558  DtExerciseConn* exConn,
2559  DtObjClassDesc* classDesc);
2560 
2562  virtual ~DtModeSTransponderEncoder();
2563 
2565  DtModeSTransponderEncoder(const DtModeSTransponderEncoder& orig);
2566 
2568  DtModeSTransponderEncoder& operator=(const DtModeSTransponderEncoder& orig);
2569 
2570 public:
2572  static DtHlaStateEncoder* create(
2573  DtExerciseConn* exConn,
2574  DtObjClassDesc* classDesc);
2575 
2576 protected:
2577 
2580  static bool needAircraftAddress(
2581  const DtModeSTransponderStateRepository& stateRep,
2582  const DtModeSTransponderStateRepository& asSeenByRemote);
2583 
2585  static void encodeAircraftAddress(
2586  const DtModeSTransponderStateRepository& rep,
2587  RTI::AttributeHandleValuePairSet* attrs,
2588  RTI::AttributeHandle attrHandle);
2589 
2592  static bool needAircraftIdentificationType(
2593  const DtModeSTransponderStateRepository& stateRep,
2594  const DtModeSTransponderStateRepository& asSeenByRemote);
2595 
2597  static void encodeAircraftIdentificationType(
2598  const DtModeSTransponderStateRepository& rep,
2599  RTI::AttributeHandleValuePairSet* attrs,
2600  RTI::AttributeHandle attrHandle);
2601 
2604  static bool needAircraftIdentification(
2605  const DtModeSTransponderStateRepository& stateRep,
2606  const DtModeSTransponderStateRepository& asSeenByRemote);
2607 
2609  static void encodeAircraftIdentification(
2610  const DtModeSTransponderStateRepository& rep,
2611  RTI::AttributeHandleValuePairSet* attrs,
2612  RTI::AttributeHandle attrHandle);
2613 
2616  static bool needSquitterIsOn(
2617  const DtModeSTransponderStateRepository& stateRep,
2618  const DtModeSTransponderStateRepository& asSeenByRemote);
2619 
2621  static void encodeSquitterIsOn(
2622  const DtModeSTransponderStateRepository& rep,
2623  RTI::AttributeHandleValuePairSet* attrs,
2624  RTI::AttributeHandle attrHandle);
2625 
2628  static bool needSquitterType(
2629  const DtModeSTransponderStateRepository& stateRep,
2630  const DtModeSTransponderStateRepository& asSeenByRemote);
2631 
2633  static void encodeSquitterType(
2634  const DtModeSTransponderStateRepository& rep,
2635  RTI::AttributeHandleValuePairSet* attrs,
2636  RTI::AttributeHandle attrHandle);
2637 
2640  static bool needCapabilityReport(
2641  const DtModeSTransponderStateRepository& stateRep,
2642  const DtModeSTransponderStateRepository& asSeenByRemote);
2643 
2645  static void encodeCapabilityReport(
2646  const DtModeSTransponderStateRepository& rep,
2647  RTI::AttributeHandleValuePairSet* attrs,
2648  RTI::AttributeHandle attrHandle);
2649 
2652  static bool needAircraftPresentDomain(
2653  const DtModeSTransponderStateRepository& stateRep,
2654  const DtModeSTransponderStateRepository& asSeenByRemote);
2655 
2657  static void encodeAircraftPresentDomain(
2658  const DtModeSTransponderStateRepository& rep,
2659  RTI::AttributeHandleValuePairSet* attrs,
2660  RTI::AttributeHandle attrHandle);
2661 
2664  static bool needAltitudeAvailable(
2665  const DtModeSTransponderStateRepository& stateRep,
2666  const DtModeSTransponderStateRepository& asSeenByRemote);
2667 
2669  static void encodeAltitudeAvailable(
2670  const DtModeSTransponderStateRepository& rep,
2671  RTI::AttributeHandleValuePairSet* attrs,
2672  RTI::AttributeHandle attrHandle);
2673 
2676  static bool needAltitude(
2677  const DtModeSTransponderStateRepository& stateRep,
2678  const DtModeSTransponderStateRepository& asSeenByRemote);
2679 
2681  static void encodeAltitude(
2682  const DtModeSTransponderStateRepository& rep,
2683  RTI::AttributeHandleValuePairSet* attrs,
2684  RTI::AttributeHandle attrHandle);
2685 
2688  static bool needSquitterRecordSource(
2689  const DtModeSTransponderStateRepository& stateRep,
2690  const DtModeSTransponderStateRepository& asSeenByRemote);
2691 
2693  static void encodeSquitterRecordSource(
2694  const DtModeSTransponderStateRepository& rep,
2695  RTI::AttributeHandleValuePairSet* attrs,
2696  RTI::AttributeHandle attrHandle);
2697 
2700  static bool needAirbornePositionReportDataIsPresent(
2701  const DtModeSTransponderStateRepository& stateRep,
2702  const DtModeSTransponderStateRepository& asSeenByRemote);
2703 
2705  static void encodeAirbornePositionReportDataIsPresent(
2706  const DtModeSTransponderStateRepository& rep,
2707  RTI::AttributeHandleValuePairSet* attrs,
2708  RTI::AttributeHandle attrHandle);
2709 
2712  static bool needAirborneVelocityReportDataIsPresent(
2713  const DtModeSTransponderStateRepository& stateRep,
2714  const DtModeSTransponderStateRepository& asSeenByRemote);
2715 
2717  static void encodeAirborneVelocityReportDataIsPresent(
2718  const DtModeSTransponderStateRepository& rep,
2719  RTI::AttributeHandleValuePairSet* attrs,
2720  RTI::AttributeHandle attrHandle);
2721 
2724  static bool needSurfacePositionReportDataIsPresent(
2725  const DtModeSTransponderStateRepository& stateRep,
2726  const DtModeSTransponderStateRepository& asSeenByRemote);
2727 
2729  static void encodeSurfacePositionReportDataIsPresent(
2730  const DtModeSTransponderStateRepository& rep,
2731  RTI::AttributeHandleValuePairSet* attrs,
2732  RTI::AttributeHandle attrHandle);
2733 
2736  static bool needIdentificationReportDataIsPresent(
2737  const DtModeSTransponderStateRepository& stateRep,
2738  const DtModeSTransponderStateRepository& asSeenByRemote);
2739 
2741  static void encodeIdentificationReportDataIsPresent(
2742  const DtModeSTransponderStateRepository& rep,
2743  RTI::AttributeHandleValuePairSet* attrs,
2744  RTI::AttributeHandle attrHandle);
2745 
2748  static bool needEventDrivenReportDataIsPresent(
2749  const DtModeSTransponderStateRepository& stateRep,
2750  const DtModeSTransponderStateRepository& asSeenByRemote);
2751 
2753  static void encodeEventDrivenReportDataIsPresent(
2754  const DtModeSTransponderStateRepository& rep,
2755  RTI::AttributeHandleValuePairSet* attrs,
2756  RTI::AttributeHandle attrHandle);
2757 
2760  static bool needDAPSource(
2761  const DtModeSTransponderStateRepository& stateRep,
2762  const DtModeSTransponderStateRepository& asSeenByRemote);
2763 
2765  static void encodeDAPSource(
2766  const DtModeSTransponderStateRepository& rep,
2767  RTI::AttributeHandleValuePairSet* attrs,
2768  RTI::AttributeHandle attrHandle);
2769 
2770 };
2771 
2775 class DT_DLL_VL DtSovietDecoder : public DtIFFDataDecoder
2776 {
2777 public:
2779  DtSovietDecoder(
2780  DtExerciseConn* exConn,
2781  DtObjClassDesc* classDesc);
2782 
2784  virtual ~DtSovietDecoder();
2785 
2787  DtSovietDecoder(const DtSovietDecoder& orig);
2788 
2790  DtSovietDecoder& operator=(const DtSovietDecoder& orig);
2791 
2792 public:
2794  static DtHlaStateDecoder* create(
2795  DtExerciseConn* exConn,
2796  DtObjClassDesc* classDesc);
2797 
2798 protected:
2799 
2801  static void decodeIsOn(
2802  DtSovietStateRepository* rep,
2803  const RTI::AttributeHandleValuePairSet& attrs,
2804  int pairSetIndex);
2805 
2807  static void decodeIsDamaged(
2808  DtSovietStateRepository* rep,
2809  const RTI::AttributeHandleValuePairSet& attrs,
2810  int pairSetIndex);
2811 
2813  static void decodeIsMalfunctioning(
2814  DtSovietStateRepository* rep,
2815  const RTI::AttributeHandleValuePairSet& attrs,
2816  int pairSetIndex);
2817 
2818 };
2819 
2824 class DT_DLL_VL DtSovietEncoder : public DtIFFDataEncoder
2825 {
2826 public:
2827 
2829  DtSovietEncoder(
2830  DtExerciseConn* exConn,
2831  DtObjClassDesc* classDesc);
2832 
2834  virtual ~DtSovietEncoder();
2835 
2837  DtSovietEncoder(const DtSovietEncoder& orig);
2838 
2840  DtSovietEncoder& operator=(const DtSovietEncoder& orig);
2841 
2842 public:
2844  static DtHlaStateEncoder* create(
2845  DtExerciseConn* exConn,
2846  DtObjClassDesc* classDesc);
2847 
2848 protected:
2849 
2852  static bool needIsOn(
2853  const DtSovietStateRepository& stateRep,
2854  const DtSovietStateRepository& asSeenByRemote);
2855 
2857  static void encodeIsOn(
2858  const DtSovietStateRepository& rep,
2859  RTI::AttributeHandleValuePairSet* attrs,
2860  RTI::AttributeHandle attrHandle);
2861 
2864  static bool needIsDamaged(
2865  const DtSovietStateRepository& stateRep,
2866  const DtSovietStateRepository& asSeenByRemote);
2867 
2869  static void encodeIsDamaged(
2870  const DtSovietStateRepository& rep,
2871  RTI::AttributeHandleValuePairSet* attrs,
2872  RTI::AttributeHandle attrHandle);
2873 
2876  static bool needIsMalfunctioning(
2877  const DtSovietStateRepository& stateRep,
2878  const DtSovietStateRepository& asSeenByRemote);
2879 
2881  static void encodeIsMalfunctioning(
2882  const DtSovietStateRepository& rep,
2883  RTI::AttributeHandleValuePairSet* attrs,
2884  RTI::AttributeHandle attrHandle);
2885 
2886 };
2887 
2891 class DT_DLL_VL DtSovietInterrogatorDecoder : public DtSovietDecoder
2892 {
2893 public:
2895  DtSovietInterrogatorDecoder(
2896  DtExerciseConn* exConn,
2897  DtObjClassDesc* classDesc);
2898 
2900  virtual ~DtSovietInterrogatorDecoder();
2901 
2903  DtSovietInterrogatorDecoder(const DtSovietInterrogatorDecoder& orig);
2904 
2906  DtSovietInterrogatorDecoder& operator=(const DtSovietInterrogatorDecoder& orig);
2907 
2908 public:
2910  static DtHlaStateDecoder* create(
2911  DtExerciseConn* exConn,
2912  DtObjClassDesc* classDesc);
2913 
2914 protected:
2915 
2916 };
2917 
2922 class DT_DLL_VL DtSovietInterrogatorEncoder : public DtSovietEncoder
2923 {
2924 public:
2925 
2927  DtSovietInterrogatorEncoder(
2928  DtExerciseConn* exConn,
2929  DtObjClassDesc* classDesc);
2930 
2932  virtual ~DtSovietInterrogatorEncoder();
2933 
2935  DtSovietInterrogatorEncoder(const DtSovietInterrogatorEncoder& orig);
2936 
2938  DtSovietInterrogatorEncoder& operator=(const DtSovietInterrogatorEncoder& orig);
2939 
2940 public:
2942  static DtHlaStateEncoder* create(
2943  DtExerciseConn* exConn,
2944  DtObjClassDesc* classDesc);
2945 
2946 protected:
2947 
2948 };
2949 
2953 class DT_DLL_VL DtSovietTransponderDecoder : public DtSovietDecoder
2954 {
2955 public:
2957  DtSovietTransponderDecoder(
2958  DtExerciseConn* exConn,
2959  DtObjClassDesc* classDesc);
2960 
2962  virtual ~DtSovietTransponderDecoder();
2963 
2965  DtSovietTransponderDecoder(const DtSovietTransponderDecoder& orig);
2966 
2968  DtSovietTransponderDecoder& operator=(const DtSovietTransponderDecoder& orig);
2969 
2970 public:
2972  static DtHlaStateDecoder* create(
2973  DtExerciseConn* exConn,
2974  DtObjClassDesc* classDesc);
2975 
2976 protected:
2977 
2978 };
2979 
2984 class DT_DLL_VL DtSovietTransponderEncoder : public DtSovietEncoder
2985 {
2986 public:
2987 
2989  DtSovietTransponderEncoder(
2990  DtExerciseConn* exConn,
2991  DtObjClassDesc* classDesc);
2992 
2994  virtual ~DtSovietTransponderEncoder();
2995 
2997  DtSovietTransponderEncoder(const DtSovietTransponderEncoder& orig);
2998 
3000  DtSovietTransponderEncoder& operator=(const DtSovietTransponderEncoder& orig);
3001 
3002 public:
3004  static DtHlaStateEncoder* create(
3005  DtExerciseConn* exConn,
3006  DtObjClassDesc* classDesc);
3007 
3008 protected:
3009 
3010 };
3011 
3015 class DT_DLL_VL DtTCASDataDecoder : public DtIFFDataDecoder
3016 {
3017 public:
3019  DtTCASDataDecoder(
3020  DtExerciseConn* exConn,
3021  DtObjClassDesc* classDesc);
3022 
3024  virtual ~DtTCASDataDecoder();
3025 
3027  DtTCASDataDecoder(const DtTCASDataDecoder& orig);
3028 
3030  DtTCASDataDecoder& operator=(const DtTCASDataDecoder& orig);
3031 
3032 public:
3034  static DtHlaStateDecoder* create(
3035  DtExerciseConn* exConn,
3036  DtObjClassDesc* classDesc);
3037 
3038 protected:
3039 
3041  static void decodeIsOn(
3042  DtTCASDataStateRepository* rep,
3043  const RTI::AttributeHandleValuePairSet& attrs,
3044  int pairSetIndex);
3045 
3047  static void decodeIsDamaged(
3048  DtTCASDataStateRepository* rep,
3049  const RTI::AttributeHandleValuePairSet& attrs,
3050  int pairSetIndex);
3051 
3053  static void decodeIsMalfunctioning(
3054  DtTCASDataStateRepository* rep,
3055  const RTI::AttributeHandleValuePairSet& attrs,
3056  int pairSetIndex);
3057 
3059  static void decodeTCAS_I_II_Type(
3060  DtTCASDataStateRepository* rep,
3061  const RTI::AttributeHandleValuePairSet& attrs,
3062  int pairSetIndex);
3063 
3065  static void decodeBasicAdvancedIndicator(
3066  DtTCASDataStateRepository* rep,
3067  const RTI::AttributeHandleValuePairSet& attrs,
3068  int pairSetIndex);
3069 
3071  static void decodeTCAS_ACASType(
3072  DtTCASDataStateRepository* rep,
3073  const RTI::AttributeHandleValuePairSet& attrs,
3074  int pairSetIndex);
3075 
3077  static void decodeTCAS_ACASIndicator(
3078  DtTCASDataStateRepository* rep,
3079  const RTI::AttributeHandleValuePairSet& attrs,
3080  int pairSetIndex);
3081 
3083  static void decodeSoftwareVersion(
3084  DtTCASDataStateRepository* rep,
3085  const RTI::AttributeHandleValuePairSet& attrs,
3086  int pairSetIndex);
3087 
3088 };
3089 
3094 class DT_DLL_VL DtTCASDataEncoder : public DtIFFDataEncoder
3095 {
3096 public:
3097 
3099  DtTCASDataEncoder(
3100  DtExerciseConn* exConn,
3101  DtObjClassDesc* classDesc);
3102 
3104  virtual ~DtTCASDataEncoder();
3105 
3107  DtTCASDataEncoder(const DtTCASDataEncoder& orig);
3108 
3110  DtTCASDataEncoder& operator=(const DtTCASDataEncoder& orig);
3111 
3112 public:
3114  static DtHlaStateEncoder* create(
3115  DtExerciseConn* exConn,
3116  DtObjClassDesc* classDesc);
3117 
3118 protected:
3119 
3122  static bool needIsOn(
3123  const DtTCASDataStateRepository& stateRep,
3124  const DtTCASDataStateRepository& asSeenByRemote);
3125 
3127  static void encodeIsOn(
3128  const DtTCASDataStateRepository& rep,
3129  RTI::AttributeHandleValuePairSet* attrs,
3130  RTI::AttributeHandle attrHandle);
3131 
3134  static bool needIsDamaged(
3135  const DtTCASDataStateRepository& stateRep,
3136  const DtTCASDataStateRepository& asSeenByRemote);
3137 
3139  static void encodeIsDamaged(
3140  const DtTCASDataStateRepository& rep,
3141  RTI::AttributeHandleValuePairSet* attrs,
3142  RTI::AttributeHandle attrHandle);
3143 
3146  static bool needIsMalfunctioning(
3147  const DtTCASDataStateRepository& stateRep,
3148  const DtTCASDataStateRepository& asSeenByRemote);
3149 
3151  static void encodeIsMalfunctioning(
3152  const DtTCASDataStateRepository& rep,
3153  RTI::AttributeHandleValuePairSet* attrs,
3154  RTI::AttributeHandle attrHandle);
3155 
3158  static bool needTCAS_I_II_Type(
3159  const DtTCASDataStateRepository& stateRep,
3160  const DtTCASDataStateRepository& asSeenByRemote);
3161 
3163  static void encodeTCAS_I_II_Type(
3164  const DtTCASDataStateRepository& rep,
3165  RTI::AttributeHandleValuePairSet* attrs,
3166  RTI::AttributeHandle attrHandle);
3167 
3170  static bool needBasicAdvancedIndicator(
3171  const DtTCASDataStateRepository& stateRep,
3172  const DtTCASDataStateRepository& asSeenByRemote);
3173 
3175  static void encodeBasicAdvancedIndicator(
3176  const DtTCASDataStateRepository& rep,
3177  RTI::AttributeHandleValuePairSet* attrs,
3178  RTI::AttributeHandle attrHandle);
3179 
3182  static bool needTCAS_ACASType(
3183  const DtTCASDataStateRepository& stateRep,
3184  const DtTCASDataStateRepository& asSeenByRemote);
3185 
3187  static void encodeTCAS_ACASType(
3188  const DtTCASDataStateRepository& rep,
3189  RTI::AttributeHandleValuePairSet* attrs,
3190  RTI::AttributeHandle attrHandle);
3191 
3194  static bool needTCAS_ACASIndicator(
3195  const DtTCASDataStateRepository& stateRep,
3196  const DtTCASDataStateRepository& asSeenByRemote);
3197 
3199  static void encodeTCAS_ACASIndicator(
3200  const DtTCASDataStateRepository& rep,
3201  RTI::AttributeHandleValuePairSet* attrs,
3202  RTI::AttributeHandle attrHandle);
3203 
3206  static bool needSoftwareVersion(
3207  const DtTCASDataStateRepository& stateRep,
3208  const DtTCASDataStateRepository& asSeenByRemote);
3209 
3211  static void encodeSoftwareVersion(
3212  const DtTCASDataStateRepository& rep,
3213  RTI::AttributeHandleValuePairSet* attrs,
3214  RTI::AttributeHandle attrHandle);
3215 
3216 };
3217 
3218 #endif
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
This file contains the declaration of DtHlaStateEncoder.
This file contains the declaration of DtHlaStateDecoder.

Document ID: Generated on Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)