VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simLocalControlObjectNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
14 
15 #pragma once
16 
18 #include <vlutil/vlString.h>
19 #include <vlutil/vlList.h>
20 #include <vl/globalObjectDesignator.h>
22 
23 class DtVrfObject;
26 class DtObjectPublisher;
27 class DtSimManager;
28 
37 
39 {
40 protected:
43 
44 public:
45 
48  DtVrfObject* vrfObject,
49  DtReaderWriterRegistry* parentRegistry = 0,
50  bool publishObject = true);
51 
58  DtReaderWriterRegistry * parentRegistry = 0);
59 
63 
66 
70  virtual void onTick();
71 
74 
76  virtual void updatePublisher();
77 
80  virtual bool createPublisher(const DtEntityIdentifier& id = DtEntityIdentifier::nullId());
81 
84  virtual void destroyPublisher();
85 
87  virtual DtObjectPublisher* publisher();
88 
98  virtual bool setEntityPublisher(DtVrfExtControlObjectPublisher* publisher);
99 
101  virtual DtVrfExtControlObjectPublisher* controlObjectPublisher() const;
102 
104  virtual void updateUuid();
105 
107  virtual DtString type() const;
108 
109  static DtSimObjectNetInterface* creator(const DtString& name,
110  DtVrfObject* vrfObject,
111  DtReaderWriterRegistry* parentRegistry,
112  bool publishObject);
113 
114 protected:
117  virtual bool updateGeometry(
119 
121  virtual bool updateBoundingGeometry(
123 
125  virtual bool updateObjectState(
127 
128  virtual bool updateEnvModelType(
130 
133  virtual bool updateVrfDataAsSeenByRemote();
134 
135  virtual DtEnvironmentProcessRepository* _createSR() const;
136 
137 protected:
138 
140 
142 
143  std::vector<char> myPropertyBuffer;
146 };
virtual DtEnvironmentProcessRepository * _createSR() const
Override this functions to use a subclass of DtEnvironmentProcessStateRepository. ...
Contains the DtSimEnvironmentalModelType class declaration.
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtClock myClock
Definition: simLocalControlObjectNetInterface.h:144
virtual void destroyPublisher()
Called by the destructor (and also by setPublisher() in some cases, deletes a publisher.
Definition: readerWriterRegistry.h:39
const DtSimLocalEnvironmentalNetInterface & operator=(const DtSimLocalEnvironmentalNetInterface &orig)
assignment operator; see note on copy constructor above.
DtControlObjectRepository class extends the DtControlObjectBaseRepository to be able to handle extend...
Definition: controlObjectRepository.h:27
virtual DtString type() const =0
Return type string for publisher that can be refered to in ope files (see &quot;vrfNetIfTypes.h&quot;)
Class Description: DtSimLocalControlObjectNetInterface.
Definition: simLocalControlObjectNetInterface.h:38
Class Description: DtSimLocalEnvironmentalNetInterface.
Definition: simLocalEnvironmentalNetInterface.h:42
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual void updateUuid()=0
Updates the UUID to be published to the network.
virtual bool setEntityPublisher(DtEnvironmentProcessPublisher *publisher)
If the user needs to supply a publisher other than the one created by the network interface...
virtual void updatePublisher()=0
This will copy from the local state repository to the specific type of publisher created in deriving ...
virtual void onTick()
Override of base class onTick() Checks if VR-Forces-specific data has changed.
This class extends DtVrfControlObjectPublisher to support the publishing of VR-Forces state propertie...
Definition: vrfExtControlObjectPublisher.h:15
bool myPublisherUserSupplied
Definition: simLocalControlObjectNetInterface.h:139
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:37
virtual bool createPublisher(const DtEntityIdentifier &id=DtEntityIdentifier::nullId())
Called by init() to create a VR-Link publisher, deriving classes create the type of publisher needed ...
std::vector< char > myPropertyBuffer
Definition: simLocalControlObjectNetInterface.h:143
Definition: vrfOverlayObjectStateRepository.h:29
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
virtual DtControlObjectRepository * controlObjectNetworkState() const
DtTime myLastEncodeTime
Definition: simLocalControlObjectNetInterface.h:145
virtual DtObjectPublisher * publisher()
Returns the publisher used by this net interface.
DtVrfExtControlObjectPublisher * myControlObjectPublisher
Definition: simLocalControlObjectNetInterface.h:141

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)