VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aerodromeRemoteNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
13 struct DtRunwayStateData;
15 class DtReflectedObject;
16 
17 namespace makVrf
18 {
19  class DtAerodromeStateComponent;
20  class DtVrfStateComponent;
21  class DtStatePropertiesStateComponent;
22 
29  {
30  private:
33 
36 
39  orig);
40 
41  public:
42 
48  bool publishObject = true);
49 
51  virtual ~DtAerodromeRemoteNetInterface() override;
52 
55  virtual DtString type() const override;
56 
57  static DtSimObjectNetInterface * creator(
58  DtStateData* vrfObject, DtVrlinkNetworkInterface* mgr, bool publishObject);
59 
60  virtual bool wantsToCreatePublisher() const override {
61  return false;
62  }
63 
64  virtual void onTick() override;
65 
66  virtual bool isUnit() const override
67  {
68  return false;
69  }
70 
71  virtual bool isEntity() const override
72  {
73  return false;
74  }
75 
76  virtual bool isEnvironmental() const override
77  {
78  return false;
79  }
80 
81  virtual bool isLocal() const override { return false; }
82 
83  virtual void setReflectedObject(DtReflectedObject* reflectedObject);
84  virtual void clearReflectedObject();
85  virtual void toBeRemoved() override;
86 
87  #if DtHLA
88  virtual RTI::ObjectClassHandle objectClassHandle() const override;
90  #endif
91 
94  virtual void setUpdateReceived(bool updateReceived);
95 
97  virtual bool updateReceived() const;
98 
99  protected:
100  static void reflectedObjectUpdateCallbackFunction(DtReflectedObject* obj,
101  void* userData);
102 
103  virtual void setupFromNetworkRepository();
104  virtual void initializeRemoteStateComponents();
105  virtual void updateFromReflectedObject();
106  virtual DtVrfStateComponent* getOrCreateVrfStateComponent();
107  virtual void updateAerodromeInformation();
108  virtual void updateRunwayInformation();
109  virtual void updateRunwayStateData(DtRunwayStateData&, DtRunwayStateRepository*);
110  virtual void updateVrfStateInformation();
111  virtual DtStatePropertiesStateComponent* getOrCreateStatePropertiesStateComponent(DtExtAerodromeStateRepository* netState);
112 
113  protected:
116  bool myUpdateReceived = false;
117  };
118 }
Class Description: DtAerodromeRemoteNetInterface.
Definition: aerodromeRemoteNetInterface.h:28
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: statePropertiesStateComponent.h:93
virtual bool isUnit() const override
Is this network interface for a local (true) or remote (false) object? Deriving network interfaces sh...
Definition: aerodromeRemoteNetInterface.h:66
DtReflectedObject * myReflectedObject
Definition: aerodromeRemoteNetInterface.h:115
virtual bool isLocal() const override
Is this network interface for a local (true) or remote (false) object? Local network interfaces shoul...
Definition: aerodromeRemoteNetInterface.h:81
virtual bool isEnvironmental() const override
Definition: aerodromeRemoteNetInterface.h:76
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: vrfStateComponent.h:62
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
virtual bool isEntity() const override
Definition: aerodromeRemoteNetInterface.h:71
virtual bool wantsToCreatePublisher() const override
Returns true if this interface wants to create a publisher. This cannot be done in parallel...
Definition: aerodromeRemoteNetInterface.h:60
DtExtAerodromeStateRepository * myAerodrome
Definition: aerodromeRemoteNetInterface.h:114
DtExtAerodromeStateRepository class extends the DtExtAerodromeBaseStateRepository to be able to handl...
Definition: extAerodromeStateRepository.h:27
Definition: aerodromeStateData.h:355

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)