MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrDisStateObject.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2016 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #if DtDIS
12 
13 #include <lgrSim/lgrSim.h>
14 #include <lgrCore/stateObject.h>
15 #include <lgrUtil/absoluteTime.h>
16 #include <list>
17 
18 struct DtNetPduHeader;
19 
20 namespace MAKLogger
21 {
22 
23  class DtMessageState;
24  class DtLgrDisMessageState;
25 
29  {
30  public:
31 
34 
35  virtual ~DtDisStateObject();
36 
38  virtual DtU64 uniqueId() const;
39 
41  virtual const DtString& name() const;
42 
44  virtual DtU64 packetId(const DtPacket& packet) const;
45 
48  virtual void setPacketId(DtU64,DtPacket&) const;
49 
51  virtual bool packetForMe(const DtPacket&) const;
52 
54  virtual void updateViaPacket(const DtPacket&);
55 
57  virtual DtPacket* createUpdate(const DtAbsoluteTime* time) const;
58 
60  virtual void createUpdate(const DtAbsoluteTime* time, std::list<DtPacket*>& packetlist) const;
61 
63  virtual DtPacket* createRemoval(const DtAbsoluteTime& time) const;
64 
67 
68  virtual bool isEntity() const;
69  virtual bool isAggregate() const;
70  virtual bool isEnvironmentalProcess() const;
71  virtual bool isGriddedData() const;
72  virtual bool isTransmitter() const;
73  virtual bool isReceiver() const;
74  virtual bool isDiGuy() const;
75  virtual bool isRelativeLocation() const;
77 
78 
79  protected:
80 
82  virtual void copyPacket(const DtPacket& packet,
83  DtNetPduHeader** lastPdu, int& lastPduSize, int& lastBufferSize);
84 
86  virtual void createUpdate(DtNetPduHeader* lastPdu, int lastPduSize,
87  const DtAbsoluteTime* time, std::list<DtPacket*>& packetlist) const;
88 
89  protected:
90 
92  DtNetPduHeader* myLastPdu;
93  DtString myName;
95 
96  DtNetPduHeader* myLastDiGuyAppearancePdu;
97  DtNetPduHeader* myLastDiGuyTypePdu;
98  DtNetPduHeader* myLastDiGuyActionPdu;
99 
108  };
109 
110 }
111 
112 #endif

Document ID: Generated on Thu Jul 23 15:05:27 EDT 2020 from SVN revision 215371
Copyright © 2020 MAK Technologies. All Rights Reserved (www.mak.com)