MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
mInteraction.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2001 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: mInteraction.h,v $ $Revision: 1.18 $ $State: Exp $
7 *********************************************************************/
8 #ifdef DtMOM
9 
10 
11 
12 #ifndef DtMomInteraction_H_
13 #define DtMomInteraction_H_
14 
15 #include <vlutil/vlList.h>
16 #include "handleList.h"
17 #include "momInspector.h"
18 #include "fomMgr.h"
19 #include "momNetParam.h"
20 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
21 #include <RTI/Typedefs.h>
22 #endif
23 
24 typedef DtFomClassMgr DtHandleMapper;
25 
26 enum DtMomBaseInteractionType
27 {
28  DtMomInteractionTypeInvalid,
29  DtMomInteractionTypeAdjust,
30  DtMomInteractionTypeRequest,
31  DtMomInteractionTypeReport,
32  DtMomInteractionTypeService,
33  DtMomInteractionTypeFederationAdjust,
34  DtMomInteractionTypeMax
35 };
36 
37 class DT_DLL_LRC DtMomInteraction
38 {
39 public:
40 
42  DtMomInteraction(const char* className, int numParams);
43 
45  virtual ~DtMomInteraction();
46 
48  DtMomInteraction(const DtMomInteraction& orig);
49 
51  DtMomInteraction& operator=(const DtMomInteraction& orig);
52 
54 
55 
56 
57  virtual void setHandleMapper(DtHandleMapper* mapper);
58  virtual DtHandleMapper* handleMapper() const;
60 
62  virtual DtInteractionClassHandle handle() const;
63 
65  virtual unsigned int parameterCount() const;
66 
68  virtual const char *name() const;
69 
71  virtual const DtPhvps& phvps() = 0;
72 
75  virtual bool setFromPhvps(const DtPhvps& set) = 0;
76 
79  virtual bool parametersAreInvalid();
80 
82  virtual DtFederateHandle federateHandle() const;
83  virtual void setFederateHandle(DtFederateHandle handle);
84 
86  virtual DtMomBaseInteractionType interactionType() const;
87 
88 protected:
89 
91  virtual void encodeFederateHandle(
92  const DtMomInteraction& data,
93  DtPhvps* parameters,
94  DtParameterHandle parameterHandle);
95 
97  virtual void decodeFederateHandle(
98  DtMomInteraction* data,
99  const DtPhvps& parameters,
100  int index);
101 
102 protected:
103 
104  const char *myName;
105  DtFederateHandle myFederateHandle;
106  int myParameterCount;
107 
111  DtPhvps *myParameters;
112 #ifdef DtIFSPEC1516
114 #elif defined(DtIFSPEC1516E)
116 #endif
117 
118  DtHandleMapper* myHandleMapper;
119 
120 protected:
121  const char *FEDERATE_PARAMETER_NAME;
122  DtMomBaseInteractionType myBaseInteractionType;
123 
124 };
125 
126 typedef DtMomInteraction DtReportInteraction;
127 typedef DtMomInteraction DtRequestInteraction;
128 typedef DtMomInteraction DtAdjustInteraction;
129 typedef DtMomInteraction DtServiceInteraction;
130 
131 #endif
132 #endif

Document ID: Generated on Wed Mar 11 20:26:49 EDT 2015 from SVN revision 150939
Copyright © 2005-2015 VT MÄK Inc. All Rights Reserved (www.mak.com)