VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
environmentProcessPublisherDIS.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
9 
10 #ifndef DtEnvironmentProcessPublisher_H_
11 #define DtEnvironmentProcessPublisher_H_
12 
13 #if DtDIS
14 
15 
16 #include "objectPublisherDIS.h"
17 #include "pdu.h"
21 
31 {
32 
33 public:
36  typedef DtEnvironmentProcessRepository* (*DtStateRepCreator)();
37 
38 public:
39 
42  DtEnvironmentProcessRepository* stateRepToUse,
43  DtExerciseConn* conn,
44  const DtObjectId& id = DtObjectId::defaultId());
45 
48  DtExerciseConn* conn,
49  const DtObjectId& id = DtObjectId::defaultId());
50 
53 
59  virtual bool tick();
60 
63  virtual DtEnvironmentProcessRepository* environmentProcessStateRep();
64 
66  virtual DtEnvironmentProcessRepository* epsr();
67 
71  virtual DtEnvironmentProcessDecoder* decoder();
72 
75  virtual DtEnvironmentProcessEncoder* encoder();
76 
78  virtual const DtObjectId& id() const;
79 
81  virtual const DtObjectId& localId() const;
82 
84  virtual const DtGlobalObjectDesignator& globalId() const;
85 
89  virtual void sendFinalPduOnDestruction(bool onOff);
90 
93  virtual void forceUpdate();
94 
95 public:
96 
98  static void setStateRepCreator(DtStateRepCreator creator);
99  static DtStateRepCreator stateRepCreator(void);
100 
101  static void setClassDfltTimeThreshold(DtTime threshold);
102 
103 protected:
104 
106  void sendFinalPdu();
107 
109  void init(const DtEntityIdentifier& vehId);
110 
111  //copy constructor -- not implemented
113 
116  (const DtEnvironmentProcessPublisher& orig);
117 
118 protected:
119 
124 
125 protected:
126  static DtStateRepCreator theStateRepCreator;
129 };
130 
133 {
134  return epsr();
135 }
136 
138 {
139  return static_cast<DtEnvironmentProcessRepository*>(myStateRep);
140 }
141 
143 {
144  return myEncoder;
145 }
146 
148 {
149  return myDecoder;
150 }
151 
152 
154 {
155  mySendFinalInDtor = onOff;
156 }
157 
159 {
160  return myId;
161 }
162 
164 {
165  return id();
166 }
167 
168 #endif
169 #endif
170 
DtStateRepository * myStateRep
Definition: objectPublisherDIS.h:193
virtual void sendFinalPduOnDestruction(bool onOff)
Set flag indicating whether to send a final PDU with the &quot;FinalPdu&quot; appearance bit set...
Definition: environmentProcessPublisherDIS.h:153
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
Contains the DtEnvironmentProcessRepository class declaration.
virtual DtEnvironmentProcessEncoder * encoder()
Returns a pointer to the Encoder being used to encode current state into an entity state PDU...
Definition: environmentProcessPublisherDIS.h:142
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual DtEnvironmentProcessDecoder * decoder()
Returns a pointer to the Decoder being used to decode PDUs that we send back into the asSeenByRemote ...
Definition: environmentProcessPublisherDIS.h:147
Instances of DtEnvironmentProcessPublisher are used for local or source simulations of environment pr...
Definition: environmentProcessPublisherDIS.h:30
static const DtEntityIdentifier & defaultId()
Returns a reference to an instance of -1:-1:-1.
virtual DtEnvironmentProcessRepository * environmentProcessStateRep()
Returns a pointer to the EnvironmentProcessRepository - through which you can set or inspect current ...
Definition: environmentProcessPublisherDIS.h:132
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherDIS.h:36
virtual void forceUpdate()=0
For publisher to send PDU on next tick.
static DtStateRepCreator theStateRepCreator
Definition: environmentProcessPublisherDIS.h:126
static bool theClassDfltIsSetFlag
Definition: environmentProcessPublisherDIS.h:128
virtual const DtObjectId & id() const =0
The id is the same as the globalId, a DtEntityIdentifier unique to this object.
virtual const DtObjectId & localId() const
Get the environment process&#39;s localId - same as id for DIS.
Definition: environmentProcessPublisherDIS.h:163
This file declares the DIS version of DtEnvironmentProcessEncoder.
virtual DtEnvironmentProcessRepository * epsr()
Synonym for environmentProcessStateRep().
Definition: environmentProcessPublisherDIS.h:137
virtual const DtObjectId & id() const
Get the environment process&#39;s identifier.
Definition: environmentProcessPublisherDIS.h:158
virtual const DtGlobalObjectDesignator & globalId() const =0
The entityIdentifier unique to this object.
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
Instances of DtEnvironmentProcessRepository are used to store state information for environmental pro...
Definition: environmentProcessRepository.h:27
DtObjectId myId
Definition: environmentProcessPublisherDIS.h:120
This class declares the DIS version of DtObjectPublisher.
DtEnvironmentProcessDecoder * myDecoder
Definition: environmentProcessPublisherDIS.h:121
bool mySendFinalInDtor
Definition: environmentProcessPublisherDIS.h:123
virtual bool tick()=0
Tick (update) this object.
virtual const DtObjectId & localId() const =0
The localId is the same as the globalId, a DtEntityIdentifier unique to this object.
Instances of DtEnvironmentProcessEncoder are used to take state information from a DtEnvironmentProce...
Definition: environmentProcessEncoderDIS.h:23
DtEnvironmentProcessEncoder * myEncoder
Definition: environmentProcessPublisherDIS.h:122
static DtTime theClassDfltTimeThreshold
Definition: environmentProcessPublisherDIS.h:127
Instances of DtEnvironmentProcessDecoder process Environment Process PDU&#39;s into DtEnvironmentProcessR...
Definition: environmentProcessDecoderDIS.h:24

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)