VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
iffDecoder.h
Go to the documentation of this file.
1 /*********************************************************************
2  * ** Copyright (c) 1992-2010 MAK Technologies, Inc
3  * ** All rights reserved.
4  * *********************************************************************/
5 /*********************************************************************
6  * ** $RCSfile: hIffDec.h,v $ $Revision: 1.1 $ $State: Exp $
7  * *********************************************************************/
8 
9 #if DtHLA
10 
11 #ifndef DtIffDecoder_H_
12 #define DtIffDecoder_H_
13 
14 
16 
20 
24 
27 
31 #define DtDECLARE_IFF_ATTR_DECODER(attrName) \
32  DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
33 
41 #define DtDEFINE_SIMPLE_IFF_ATTR_DECODER( \
42  attrName, netType) \
43  DtDEFINE_SIMPLE_ATTR_DECODER_SET( \
44  DtIffDecoder, DtIffStateRepository, attrName, netType)
45 
51 #define DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST( \
52  attrName, netType, castExpr) \
53  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST_SET( \
54  DtIffDecoder, DtIffStateRepository, attrName, netType, castExpr)
55 
56 #define DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM( \
57  decClass, attrName, netType, mutator, param, castExpr) \
58  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST_AND_PARAM(\
59  decClass, DtIffStateRepository, attrName, netType, mutator, param, castExpr)
60 
62 
64 {
65 public:
66 
69  DtExerciseConn* exConn,
70  DtObjClassDesc* classDesc);
71 
73  virtual ~DtIffDecoder();
74 
76  DtIffDecoder(const DtIffDecoder& orig);
77 
79  DtIffDecoder& operator=(const DtIffDecoder& orig);
80 
81 public:
82 
83  static DtHlaStateDecoder* create(
84  DtExerciseConn* exConn,
85  DtObjClassDesc* classDesc);
86 
87 protected:
88 
89  DtDECLARE_IFF_ATTR_DECODER(EventIdentifier);
90  DtDECLARE_IFF_ATTR_DECODER(SystemMode);
91  DtDECLARE_IFF_ATTR_DECODER(SystemName);
92  DtDECLARE_IFF_ATTR_DECODER(SystemType);
93  DtDECLARE_IFF_ATTR_DECODER(SystemIsOn);
94  DtDECLARE_IFF_ATTR_DECODER(SystemIsOperational);
95 
97  DtDECLARE_IFF_ATTR_DECODER(BeamAzimuthCenter);
98  DtDECLARE_IFF_ATTR_DECODER(BeamAzimuthSweep);
99  DtDECLARE_IFF_ATTR_DECODER(BeamElevationCenter);
100  DtDECLARE_IFF_ATTR_DECODER(BeamElevationSweep);
101  DtDECLARE_IFF_ATTR_DECODER(BeamSweepSync);
102  DtDECLARE_IFF_ATTR_DECODER(Layer2DataAvailable);
103  DtDECLARE_IFF_ATTR_DECODER(FundamentalParameterData);
104  DtDECLARE_IFF_ATTR_DECODER(SecondaryOperationalDataParameter1);
105  DtDECLARE_IFF_ATTR_DECODER(SecondaryOperationalDataParameter2);
106 
108  DtDECLARE_IFF_ATTR_DECODER(SystemDesignator);
109 };
110 
111 #endif
112 #endif
113 
114 
#define DtDECLARE_IFF_ATTR_DECODER(attrName)
We define several macros that can be helpful in defining the class, and the individual decoding funct...
Definition: iffDecoder.h:31
DtBaseEmbeddedSystemDecoder & operator=(const DtBaseEmbeddedSystemDecoder &orig)
assignment operator
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Defines a protocol independent repository of attributes for IFF objects.
Definition: iffStateRepository.h:39
This file provides a declaration of the class DtBaseEmbeddedSystemDecoder.
An instance of DtObjClassDesc is a "class descriptor" for an HLA Object class.
Definition: objClassDesc1516.h:41
DtHlaStateDecoder is used to provide decoding of a state message into a state repository in an HLA (a...
Definition: hlaStateDecoder.h:34
The DtIffDecoder class:
Definition: iffDecoder.h:63
static DtHlaStateDecoder * create(DtExerciseConn *exConn, DtObjClassDesc *classDesc)
Create a DtBaseEntityDecoder. Caller is responsible for deletion.
class DtBaseEmbeddedSystemDecoder:
Definition: baseEmbeddedSystemDecoder.h:32

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)