VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simAggregateLocalEntityNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
16 #include <vl/variableDatumRecord.h>
17 
21 
25 {
26 protected:
27 
30 
31 public:
32 
35  DtVrfObject* vrfObject,
36  DtReaderWriterRegistry* parentRegistry = 0,
37  bool publishObject = true);
38 
42  DtReaderWriterRegistry * parentRegistry = 0);
43 
47 
50 
52  bool init(const DtEntityIdentifier& id = DtEntityIdentifier::nullId());
53 
55  virtual void updateNet();
56 
62  virtual void tick();
63 
66  virtual void setMinTickPeriod(double minTickPeriod);
67 
69  virtual double minTickPeriod() const;
70 
72  virtual void setMinTickPeriodVariance(double minTickPeriodVariance);
73 
75  virtual double minTickPeriodVariance() const;
76 
80  virtual void setNextTickTime(double nextTickTime);
81 
83  virtual double nextTickTime() const;
84 
90  virtual void updatePublisher();
91 
93  virtual bool createPublisher(const DtEntityIdentifier& id = DtEntityIdentifier::nullId());
94 
96  virtual void destroyPublisher();
97 
99  virtual DtObjectPublisher* publisher();
100 
110  virtual bool setAggregatePublisher(DtVrfExtAggregatePublisher * publisher);
111 
115  virtual void setupNetworkRepository();
116 
119  virtual DtVrfExtAggregatePublisher * aggregatePublisher() const;
120 
123  virtual DtExtAggregateStateRepository * aggregateNetworkState() const;
124 
125  virtual DtVrfAggregateStateRepository * aggregateLocalState() const;
126 
128  virtual void updateUuid();
129 
133  virtual bool setUserVariableDatum( int userRecordNumber,
134  const DtVariableDatumRecord& record);
135 
137  virtual bool getUserVariableDatum( int userRecordNumber,
138  DtVariableDatumRecord& rec);
139 
142  virtual bool encodeVariableDatum();
143 
149  virtual bool isANetSubordinate(const DtGlobalObjectDesignator&
150  globalId);
151 
154  virtual bool isPseudoAggregate() const { return false; }
155 
156  virtual bool isAggregate() const { return true; }
157 
160  virtual DtString type() const;
161 
165  virtual void setForceUpdate(bool flag);
166 
167 #if DtHLA
168  virtual RTI::ObjectClassHandle objectClassHandle() const;
170 #endif
171 
176  isAggregateLocalEntityNetInterface(const DtSimObjectNetInterface *
177  objNetInterface);
178 
179  static DtSimObjectNetInterface * creator(const DtString & name,
180  DtVrfObject* vrfObject,
181  DtReaderWriterRegistry* parentRegistry,
182  bool publishObject);
183 
184 protected:
186  virtual bool updateVrfDataAsSeenByRemote();
187 
188 protected:
189 
191 
195 
198 };
Class Description: DtSimLocalEntityNetInterface.
Definition: simLocalEntityNetInterface.h:39
This class extends DtVrfAggregatePublisher to support the publishing of VR-Forces state properties as...
Definition: vrfExtAggregatePublisher.h:15
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
virtual RTI::ObjectClassHandle objectClassHandle() const =0
Returns the HLA object class handle of the published or reflected object.
virtual void updateNet()
Cause any necessary data to be send to the network.
double myMinTickPeriodVariance
Definition: simAggregateLocalEntityNetInterface.h:193
Definition: readerWriterRegistry.h:39
virtual DtString type() const =0
Returns the type of net interface object.
virtual double minTickPeriodVariance() const
access the variance in the minimum tick period
virtual bool isAggregate() const
Definition: simAggregateLocalEntityNetInterface.h:156
Derived from DtSimLocalEntityNetInterface, this class provides an interface between an aggregate loca...
Definition: simAggregateLocalEntityNetInterface.h:24
DtVrfExtAggregatePublisher * myAggregatePublisher
Definition: simAggregateLocalEntityNetInterface.h:190
virtual void tick()
Override base class tick.
virtual DtObjectPublisher * publisher()=0
Returns the publisher used by this net interface.
virtual bool createPublisher(const DtEntityIdentifier &id=DtEntityIdentifier::nullId())=0
Called by init() to create a VR-Link publisher, deriving classes create the type of publisher needed ...
double myMinTickPeriod
Definition: simAggregateLocalEntityNetInterface.h:192
virtual void updatePublisher()=0
This will copy from the local state repository to the specific type of publisher created in deriving ...
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual double minTickPeriod() const
access the minimum tick period
virtual void setMinTickPeriod(double minTickPeriod)
specifies a minimum tick period (which can also be thought of as
virtual void destroyPublisher()=0
Called by the destructor (and also by setPublisher() in some cases), deletes a publisher.
bool myFirstPause
Definition: simAggregateLocalEntityNetInterface.h:196
virtual void setNextTickTime(double nextTickTime)
The next tick time is normally calculated internally.
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:37
virtual double nextTickTime() const
access the next tick time
virtual void updateUuid()=0
Updates the UUID to be published to the network.
bool myForceUpdate
Definition: simAggregateLocalEntityNetInterface.h:197
const DtSimLocalEntityNetInterface & operator=(const DtSimLocalEntityNetInterface &orig)
assignment operator; see note on copy constructor above.
virtual void setupNetworkRepository()=0
Initializes parts of the network repository created by the publisher This needs to be done after the ...
Definition: vrfAggregateStateRepository.h:22
virtual void setMinTickPeriodVariance(double minTickPeriodVariance)
set the variance in the minimum tick time
virtual bool isPseudoAggregate() const
Returns true if this interface supports a pseudo-aggregate entity, false otherwise (true aggregate)...
Definition: simAggregateLocalEntityNetInterface.h:154
DtExtAggregateStateRepository class extends the DtExtAggregateBaseStateRepository to be able to handl...
Definition: extAggregateStateRepository.h:26
double myNextTickTime
Definition: simAggregateLocalEntityNetInterface.h:194

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)