VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
remoteExtendedPropertiesNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 
19 #include <vl/reflectedObject.h>
20 
21 #ifdef DtHLA
23 #else
25 #endif
26 
29 namespace makVrf
30 {
31  template <typename BaseNetInterface, typename BaseStateRepository>
33  {
34  protected:
35 
38 
39  public:
40 
43  DtStateData * simObject, DtVrlinkNetworkInterface* mgr, bool publishObject = false)
44  : BaseNetInterface(simObject, mgr, publishObject)
45  , myIsUninitialized(true)
46  {
47  }
48 
51 
53  virtual bool initExtendedProperties()
54  {
55  bool result = true;
56 
57  BaseStateRepository* stateRep =
58  dynamic_cast<BaseStateRepository*>(this->myNetworkState);
59 
60  initializeNetWithProperties();
61 
62  myIsUninitialized = false;
63 
64  return result;
65  }
66 
68  virtual void initializeNetWithProperties() = 0;
69 
74  {
75  if (myIsUninitialized)
76  {
77  initExtendedProperties();
78  }
79 
80  BaseNetInterface::updateFromReflectedObject();
81  }
82 
84  DtStateData * simObject, DtVrlinkNetworkInterface* mgr, bool publishObject)
85  {
86  return new
88  simObject, mgr, publishObject);
89  }
90 
92  std::map<DtString, DtReaderWriterRegistryData *> myStatePropertyMap;
93  std::map<DtString, DtReaderWriterRegistryData *> myParamPropertyMap;
94  };
95 }
static DtSimObjectNetInterface * creator(DtStateData *simObject, DtVrlinkNetworkInterface *mgr, bool publishObject)
Definition: remoteExtendedPropertiesNetInterface.h:83
DtRemoteExtendedPropertiesNetInterface()
default constructor
Definition: remoteExtendedPropertiesNetInterface.h:37
virtual void updateFromReflectedObject()
Calls the base class function to copy the network data to the local state repository, then does the same for the extended property attributes.
Definition: remoteExtendedPropertiesNetInterface.h:73
virtual bool initExtendedProperties()
Initializer.
Definition: remoteExtendedPropertiesNetInterface.h:53
Contains the DtSensorFieldOfViewPublisher class declaration.
DtRemoteExtendedPropertiesNetInterface(DtStateData *simObject, DtVrlinkNetworkInterface *mgr, bool publishObject=false)
read/writable constructor
Definition: remoteExtendedPropertiesNetInterface.h:42
bool myIsUninitialized
Definition: remoteExtendedPropertiesNetInterface.h:91
The overall structure of the DtStateData mechanism is: The DtStateData contains a list of double buff...
Definition: stateData.h:398
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:50
Definition: remoteExtendedPropertiesNetInterface.h:32
std::map< DtString, DtReaderWriterRegistryData * > myParamPropertyMap
Definition: remoteExtendedPropertiesNetInterface.h:93
std::map< DtString, DtReaderWriterRegistryData * > myStatePropertyMap
Definition: remoteExtendedPropertiesNetInterface.h:92
virtual ~DtRemoteExtendedPropertiesNetInterface()
destructor
Definition: remoteExtendedPropertiesNetInterface.h:50

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)