VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simLocalEntityNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2000 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: lclEntNetIf.h,v $ $Revision: 1.26 $ $State: Exp $
7 *******************************************************************************/
8 
11 
17 
18 
19 #ifndef DtSimLocalEntityNetInterface_H_
20 #define DtSimLocalEntityNetInterface_H_
21 
23 #include <vl/globalObjectDesignator.h>
24 #include "vrfobjcore/vrfObject.h"
25 
26 class DtObjectPublisher;
27 
37 
40 {
41 protected:
44 
45 public:
46 
48  DtSimLocalEntityNetInterface(const DtString& name, DtVrfObject* vrfObject,
49  DtReaderWriterRegistry* parentRegistry = 0,
50  bool publishObject = true);
51 
57  DtReaderWriterRegistry * parentRegistry = 0);
58 
62 
65 
67  virtual bool init(const DtEntityIdentifier& id = DtEntityIdentifier::nullId());
68 
71  virtual void onTick();
72 
78  virtual void tick();
79 
82  virtual void setMinTickPeriod(double minTickPeriod);
83 
85  virtual double minTickPeriod() const;
86 
88  virtual void setMinTickPeriodVariance(double minTickPeriodVariance);
89 
91  virtual double minTickPeriodVariance() const;
92 
96  virtual void setNextTickTime(double nextTickTime);
97 
99  virtual double nextTickTime() const;
100 
106  virtual double calculateNextTickTime() const;
107 
110  virtual bool publisherUserSupplied() const;
111 
114  virtual void updatePublisher() = 0;
115 
118  virtual bool createPublisher(const DtEntityIdentifier& id = DtEntityIdentifier::nullId()) = 0;
119 
122  virtual void destroyPublisher() = 0;
123 
125  virtual DtObjectPublisher* publisher() = 0;
126 
129  virtual void updateNet();
130 
135  virtual void setupNetworkRepository() = 0;
136 
138  virtual void updateUuid() = 0;
139 
140  DtVrfObject * vrfObject() const;
141 
145  static bool isVrfGlobalId(const DtGlobalObjectDesignator& identifier);
146 
148  virtual bool isLocal() const { return true; }
149 
150  virtual bool isAggregate() const = 0;
151 
155  static DtSimLocalEntityNetInterface * isLocalEntityNetInterface(const
156  DtSimObjectNetInterface * objNetInterface);
157 
162  static void setVrfDataTimeThreshold(DtTime time);
163 
164 #ifdef DtDIS
165  static void setHeartbeatVariance(double variance);
169  static double heartbeatVariance();
170 #endif
171 
172 protected:
174 
176 
179 
183 
184  static double theHeartbeatVariance;
185 
186 };
187 
188 #endif
189 
190 
Class Description: DtSimLocalEntityNetInterface.
Definition: simLocalEntityNetInterface.h:39
double myMinTickPeriodVariance
Definition: simLocalEntityNetInterface.h:181
virtual bool init()
Derived classes that need to perform virtual construction my override this function as desired...
Definition: simObjectNetInterface.h:66
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
double myMinTickPeriod
Definition: simLocalEntityNetInterface.h:180
virtual void onTick()=0
Depending on the whether or not the entity is local or remote, this will cause the VR-Link network re...
Definition: readerWriterRegistry.h:39
virtual bool isLocal() const
This network interface is for local entities.
Definition: simLocalEntityNetInterface.h:148
Class Description: DtSimEntityNetInterface.
Definition: simEntityNetInterface.h:36
bool myPublisherUserSupplied
Definition: simLocalEntityNetInterface.h:173
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
double myNextTickTime
Definition: simLocalEntityNetInterface.h:182
static double theHeartbeatVariance
Definition: simLocalEntityNetInterface.h:184
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:37
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
virtual void tick()
Clears the changed flag for the tick, then calls onTick().
const DtSimEntityNetInterface & operator=(const DtSimEntityNetInterface &orig)
assignment operator
DtSimManager * mySimManager
Obtained from our DtVrfObject, and cached for use in sendVrfObject().
Definition: simLocalEntityNetInterface.h:178
bool myPublishObject
Definition: simLocalEntityNetInterface.h:175

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)