VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
arealObjectStatePdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include "hostStructs.h"
16 #include "stateMsgDIS.h"
17 #include <matrix/vlMath.h>
18 #include "exerciseConn.h"
19 
20 #include "packets/arealObjStP.h"
21 
23 
25 
26 
28 typedef void (*DtArealObjectStatePduCb)(
29  DtArealObjectStatePdu* pdu, void* usr);
30 
31 
37 {
38 
39 public:
40 
44  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
46 
48  virtual ~DtArealObjectStatePdu();
49 
52  static DtPdu* create(const DtNetPacket* initial,
53  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
54 
57  static void addCallback(DtExerciseConn* conn,
58  DtArealObjectStatePduCb cb, void* usr);
59  static void removeCallback(DtExerciseConn* conn,
60  DtArealObjectStatePduCb cb, void* usr);
61 
64 
66  virtual void setObjectID(const DtEntityIdentifier& id);
67  virtual const DtEntityIdentifier& objectID() const;
68 
70  virtual void setReferencedObjectID(const DtEntityIdentifier& id);
71  virtual const DtEntityIdentifier& referencedObjectID() const;
72 
74  virtual void setUpdateNumber(DtU16 field);
75  virtual DtU16 updateNumber() const;
76 
78  virtual void setForceID(DtForceType force);
79  virtual DtForceType forceID() const;
80 
82  virtual void setModifications(DtU8 value);
83  virtual DtU8 modifications() const;
84 
86  virtual void setModificationsField(
87  DtModificationField field, bool value);
88  virtual bool modificationsField(
89  DtModificationField field) const;
90 
92  virtual void setObjectType(const DtSyntheticEnvironmentObjectType& type);
93  virtual const DtSyntheticEnvironmentObjectType& objectType() const;
94 
96  virtual void setAppearance(DtU16 app);
97  virtual DtU16 appearance() const;
98 
100  virtual void setAppearanceAttribute(
102  virtual DtAppearAttrVal appearanceAttribute(
103  DtAppearAttribute attr) const;
104 
106  virtual void setSpecificAppearance(DtU32 app);
107  virtual DtU32 specificAppearance() const;
108 
110  virtual void setSpecificAppearanceAttribute(
111  const DtAppearAttribute attr, const DtAppearAttrVal val);
112  virtual DtAppearAttrVal specificAppearanceAttribute(
113  const DtAppearAttribute attr) const;
114 
116  virtual bool setNumPoints(DtU16 num);
117  virtual DtU16 numPoints() const;
118 
120  virtual void setRequesterID(const DtSimulationAddress& type);
121  virtual const DtSimulationAddress& requesterID() const;
122 
124  virtual void setReceivingID(const DtSimulationAddress& type);
125  virtual const DtSimulationAddress& receivingID() const;
126 
128  virtual bool setPointLocation(int index,
129  const DtVector& init);
130  virtual bool getPointLocation(int index,
131  DtVector& record) const;
132 
134  virtual void printData() const;
135 
137  virtual void printDataToStream(std::ostream& stream) const;
138 
139 protected:
140 
142  virtual DtPduKind internalGetPduKind() const;
143 
145  virtual DtNetArealObjectStatePdu* netPduStruct() const;
146 
149  DtArealObjectStatePdu* self() const;
150 
152  virtual char* var() const;
153 
154 protected:
155 
157  static const int theStaticSize;
158 
159 protected:
160 
165 
166 };
167 
168 #endif

Document ID: Generated on Thu Feb 22 04:26:36 EST 2018 from SVN revision 186468
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)