VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
objectPublisherDIS.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #if DtDIS
11 
12 
13 #ifndef DtDISObjectPublisher_H_
14 #define DtDISObjectPublisher_H_
15 
16 
17 #include <vlutil/vlMachineTypes.h>
18 #include "objectId.h"
19 #include <vlutil/vlTime.h>
20 
23 class DT_DLL_VL DtPdu;
24 
31 {
32 public:
33 
40  DtStateRepository* stateRep,
41  DtStateRepository* asSeenByRemote,
42  bool okToDeleteStateRep = true);
43 
45  virtual ~DtObjectPublisher();
46 
47 private:
48 
51 
53  DtObjectPublisher& operator= (const DtObjectPublisher& orig);
54 
55 public:
56 
59  virtual DtStateRepository* stateRep();
60 
63  virtual DtStateRepository* sr();
64 
66  virtual DtExerciseConn* exerciseConn();
67 
69  virtual const DtObjectId& localId() const = 0;
71  virtual const DtObjectId& id() const = 0;
73  virtual const DtGlobalObjectDesignator& globalId() const = 0;
74 
76  virtual void forceUpdate()=0;
77 
79  virtual void tick() = 0;
80 
83  virtual void setTimeThreshold(DtTime time);
85  virtual DtTime timeThreshold() const;
86 
91  virtual DtStateRepository* approximateRemoteStateRep();
92 
95  virtual DtTime lastTimeUpdated() const;
96 
99  virtual DtTime lastSimTimeUpdated() const;
100 
103  virtual void setUseCustomThreshold(bool useCustom);
104 
107  virtual bool useCustomThreshold();
108 
109 public:
110 
115  static void setDfltTimeThreshold(DtTime time);
116 
118  static DtTime dfltTimeThreshold();
119 
120 protected:
121 
122 
124  virtual void send(DtPdu* pdu) const;
125 
126 
127 protected:
128 
129  DtExerciseConn *myExConn;
130  DtStateRepository *myStateRep;
131  DtStateRepository *myAsSeenByRemote;
132  bool myOkToDeleteStateRepFlag;
133  bool myUseCustomThreshold;
134 
135  DtTime myTimeThreshold;
136 
138  mutable DtTime mySimTimeLastUpdate;
139 
141  mutable DtTime myRealTimeLastUpdate;
142 
143 protected:
144 
145  static DtTime theDfltTimeThreshold;
146 
147 };
148 
150 {
151  return myStateRep;
152 }
153 
155 {
156  return myStateRep;
157 }
158 
160 {
161  return myExConn;
162 }
163 
165 {
166  return myAsSeenByRemote;
167 }
168 
169 #endif //DtObjectPublisher_H_
170 #endif //DtDIS
171 

Document ID: Generated on Fri May 15 06:36:13 EDT 2015 from SVN revision 153263
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)