MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
hlaStateObject.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef hlaStateObject_H_
11 #define hlaStateObject_H_
12 
13 #include <lgrSim/lgrSim.h>
14 
15 #include <lgrCore/stateObject.h>
16 #include <lgrUtil/absoluteTime.h>
17 #include "hlaMessageFactory.h"
19 
20 #include <list>
21 #include <map>
22 
23 #include <vl/rtiCompatibility.h>
24 
25 namespace MAKLogger
26 {
27  class DtLgrHlaMessage;
28  class DtLgrHlaMessageState;
29  class DtLgrHlaSimulationManager;
30 
34  {
35  public:
36 
39 
40  void update(DtAbsoluteTime time, const DtLgrHandleValueReferenceMap* attributes);
41 
42  //Generate a list of timed AHVPSets.
43  void generate(DtTimedHandleValueMapList& outputList);
44 
45  typedef std::map<DtLgrHlaHandle,DtHlaTimeStampedAttribute*> HandleTimedAttributeMap;
46  const HandleTimedAttributeMap& attributes() const;
47 
48  protected:
49 
51  };
52 
56  {
57 
58  public:
59 
61  DT_VIRTUAL_CTR(DtHlaStateObject,(DtLgrHlaMessageState&, const DtPacket&))
62 
63 
65 
66 
67  virtual ~DtHlaStateObject();
68 
70  virtual bool isEntity() const;
71 
73  virtual bool isAggregate() const;
74 
76  virtual DtU64 uniqueId() const;
77 
79  virtual DtU64 uniqueId(const DtHlaObject* object) const;
80 
82  virtual const DtString& name() const;
83 
85  virtual DtU64 packetId(const DtPacket& packet) const;
86 
89  virtual void setPacketId(DtU64,DtPacket&) const;
90 
92  virtual DtPacket* createUpdate(const DtAbsoluteTime& currentTime) const;
93 
95  virtual DtPacket* createUpdates(const DtAbsoluteTime& currentTime) const;
96 
98  virtual DtPacket* createRemoval(const DtAbsoluteTime& currentTime) const;
99 
101  virtual bool packetForMe(const DtPacket&) const;
102 
104  virtual void updateViaPacket(const DtPacket&);
105 
107  virtual DtHlaTimeStampledStateRep* attributes();
108 
110  virtual const DtRegionDescSet& regionSet() const;
111 
112  inline DtLgrHlaHandle objectHandle() const{ return myObjectHandle;}
113  inline DtLgrHlaHandle classHandle() const{ return myClassHandle;}
114  inline const DtString& tag() const { return myTag;}
115 
116  protected:
117 
118  DtLgrHlaHandle myObjectHandle;
119  DtLgrHlaHandle myClassHandle;
120  DtString myName;
121  DtString myTag;
122 
123  DtLgrHlaMessageState* myState;
125  DtRegionDescSet myRegions;
126 
127  mutable const DtBaseObjClassDesc* myClassDesc;
128 
129  };
130 
131 }
132 
133 #endif

Document ID: Generated on Thu Apr 7 20:50:59 EDT 2016 from SVN revision 163818
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)