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-2025 MAK Technologies, Inc
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 isDesignator() const;
75  virtual bool isDiGuy() const;
76  virtual bool isRelativeLocation() const;
78 
79 
80  protected:
81 
83  virtual void copyPacket(const DtPacket& packet,
84  DtNetPduHeader** lastPdu, int& lastPduSize, int& lastBufferSize);
85 
87  virtual void createUpdate(DtNetPduHeader* lastPdu, int lastPduSize,
88  const DtAbsoluteTime* time, std::list<DtPacket*>& packetlist) const;
89 
90  protected:
91 
93  DtNetPduHeader* myLastPdu;
94  DtString myName;
96 
97  DtNetPduHeader* myLastDiGuyAppearancePdu;
98  DtNetPduHeader* myLastDiGuyTypePdu;
99  DtNetPduHeader* myLastDiGuyActionPdu;
100 
109  };
110 
111 }
112 
113 #endif
int myDiGuyAppearancePduBufferSize
Definition: lgrDisStateObject.h:106
Defines IMPORT/EXPORT macros for lgrSim library.
#define DT_DLL_LGRSIM
Definition: lgrSim.h:21
A DIS state object.
Definition: lgrDisStateObject.h:28
int myPduBufferSize
Definition: lgrDisStateObject.h:105
#define DT_VIRTUAL_BASE_CTR(BASE_NAME, ARG_TYPES_LIST)
Declare a Virtual Base Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where BASE_...
Definition: virtualConstructor.h:118
#define DT_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where CLASS_NAME...
Definition: virtualConstructor.h:34
bool myIsUpdateFromPast
Definition: lgrDisStateObject.h:95
A generic object that has state.
Definition: stateObject.h:27
int myLastPduSize
Definition: lgrDisStateObject.h:101
Responsible for maintaining a DIS simulation state.
Definition: lgrDisMessageState.h:32
int myLastDiGuyAppearancePduSize
Definition: lgrDisStateObject.h:102
DtAbsoluteTime myLastUpdateTime
Definition: lgrDisStateObject.h:92
DtNetPduHeader * myLastDiGuyTypePdu
Definition: lgrDisStateObject.h:98
int myLastDiGuyTypePduSize
Definition: lgrDisStateObject.h:103
int myDiGuyTypePduBufferSize
Definition: lgrDisStateObject.h:107
DtNetPduHeader * myLastDiGuyActionPdu
Definition: lgrDisStateObject.h:99
DtNetPduHeader * myLastDiGuyAppearancePdu
Definition: lgrDisStateObject.h:97
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
A generic packed of typed binary data.
Definition: packet.h:41
int myDiGuyActionPduBufferSize
Definition: lgrDisStateObject.h:108
DtNetPduHeader * myLastPdu
Definition: lgrDisStateObject.h:93
The Abstract message state maintained by the logger.
Definition: messageState.h:33
DtString myName
Definition: lgrDisStateObject.h:94
Contains MAKLogger::DtStateObject class.
int myLastDiGuyActionPduSize
Definition: lgrDisStateObject.h:104
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)