12 #ifndef DtMomInteraction_H_
13 #define DtMomInteraction_H_
15 #include <vlutil/vlList.h>
20 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
26 enum DtMomBaseInteractionType
28 DtMomInteractionTypeInvalid,
29 DtMomInteractionTypeAdjust,
30 DtMomInteractionTypeRequest,
31 DtMomInteractionTypeReport,
32 DtMomInteractionTypeService,
33 DtMomInteractionTypeFederationAdjust,
34 DtMomInteractionTypeMax
42 DtMomInteraction(
const char* className,
int numParams);
45 virtual ~DtMomInteraction();
48 DtMomInteraction(
const DtMomInteraction& orig);
51 DtMomInteraction& operator=(
const DtMomInteraction& orig);
54 virtual void setHandleMapper(DtHandleMapper* mapper);
58 virtual DtHandleMapper* handleMapper()
const;
65 virtual unsigned int parameterCount()
const;
68 virtual const char *name()
const;
71 virtual const DtPhvps& phvps() = 0;
75 virtual bool setFromPhvps(
const DtPhvps& set) = 0;
79 virtual bool parametersAreInvalid();
86 virtual DtMomBaseInteractionType interactionType()
const;
91 virtual void encodeFederateHandle(
92 const DtMomInteraction& data,
97 virtual void decodeFederateHandle(
98 DtMomInteraction* data,
99 const DtPhvps& parameters,
106 int myParameterCount;
111 DtPhvps *myParameters;
114 #elif defined(DtIFSPEC1516E)
118 DtHandleMapper* myHandleMapper;
121 const char *FEDERATE_PARAMETER_NAME;
122 DtMomBaseInteractionType myBaseInteractionType;
126 typedef DtMomInteraction DtReportInteraction;
127 typedef DtMomInteraction DtRequestInteraction;
128 typedef DtMomInteraction DtAdjustInteraction;
129 typedef DtMomInteraction DtServiceInteraction;
DtHandle DtInteractionClassHandle
Definition: internalTypes.h:35
DtHandle DtFederateHandle
Definition: internalTypes.h:29
This file contains the standard RTI types that are defined in namespace rti1516.
std::map< ParameterHandle, VariableLengthData > ParameterHandleValueMap
Definition: Typedefs.h:41
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126
DtHandle DtParameterHandle
Definition: internalTypes.h:38