VR-Link API Documentation for DIS
pointObjectStatePdu.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include "hostStructs.h"
16 #include "stateMsg.h"
17 #include <matrix/vlMath.h>
18 #include "packets/pointObjStP.h"
20 
23 
25 typedef void (*DtPointObjectStatePduCb)(DtPointObjectStatePdu* pdu, void* usr);
26 
27 
32 
34 {
35 
36 public:
37 
41  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
43 
45  virtual ~DtPointObjectStatePdu();
46 
49 
51  virtual void setObjectID(const DtEntityIdentifier& id);
52  virtual const DtEntityIdentifier& objectID() const;
53 
55  virtual void setReferencedObjectID(const DtEntityIdentifier& id);
56  virtual const DtEntityIdentifier& referencedObjectID() const;
57 
59  virtual void setUpdateNumber(DtU16 field);
60  virtual DtU16 updateNumber() const;
61 
63  virtual void setForceID(DtForceType force);
64  virtual DtForceType forceID() const;
65 
67  virtual void setModifications(DtU8 value);
68  virtual DtU8 modifications() const;
69 
71  virtual void setModificationsField(
72  DtModificationField field, bool value);
73  virtual bool modificationsField(
74  DtModificationField field) const;
75 
77  virtual void setObjectType(const DtSyntheticEnvironmentObjectType& type);
78  virtual const DtSyntheticEnvironmentObjectType& objectType() const;
79 
81  virtual void setLocation(const DtVector& coords);
82  virtual const DtVector& location() const;
83 
85  virtual void setOrientation(const DtTaitBryan& orientation);
86  virtual const DtTaitBryan& orientation() const;
87 
89  virtual void setAppearance(DtU16 app);
90  virtual DtU16 appearance() const;
91 
93  virtual void setAppearanceAttribute(
95  virtual DtAppearAttrVal appearanceAttribute(
96  DtAppearAttribute attr) const;
97 
99  virtual void setSpecificAppearance(DtU32 app);
100  virtual DtU32 specificAppearance() const;
101 
103  virtual void setSpecificAppearanceAttribute(
104  const DtAppearAttribute attr, const DtAppearAttrVal val);
105  virtual DtAppearAttrVal specificAppearanceAttribute(
106  const DtAppearAttribute attr) const;
107 
109  virtual void setRequesterID(const DtSimulationAddress& type);
110  virtual const DtSimulationAddress& requesterID() const;
111 
113  virtual void setReceivingID(const DtSimulationAddress& type);
114  virtual const DtSimulationAddress& receivingID() const;
115 
117  virtual void printData() const;
118 
120  virtual void printDataToStream(std::ostream& stream) const;
121 
122 public:
123 
126  static DtPdu* create(const DtNetPacket* initial,
127  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0);
128 
131  static void addCallback(DtExerciseConn* conn,
132  DtPointObjectStatePduCb cb, void* usr);
133  static void removeCallback(DtExerciseConn* conn,
134  DtPointObjectStatePduCb cb, void* usr);
135 
136 protected:
137 
139  virtual DtPduKind internalGetPduKind() const;
140 
142  virtual DtNetPointObjectStatePdu* netPduStruct() const;
143 
146  DtPointObjectStatePdu* self() const;
147 
148 protected:
149 
151  static const int theStaticSize;
152 
153 protected:
154 
161 
162 };
163 
164 #endif

Document ID: Generated on Wed Oct 23 22:25:48 EDT 2013 from SVN revision 132765
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)