VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
aerodromeLocalNetInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
13 struct DtRunwayStateData;
15 
16 namespace makVrf
17 {
18  class DtAerodromeStateComponent;
19  class DtVrfStateComponent;
20 
26 
28  {
29  private:
32 
35 
38  orig);
39 
40  public:
41 
46  DtAerodromeLocalNetInterface(DtStateData * simObject, DtVrlinkNetworkInterface* objectManager, bool publishObject = true);
47 
49  virtual ~DtAerodromeLocalNetInterface() override;
50 
53  virtual DtString type() const override;
54 
55  static DtSimObjectNetInterface * creator(
56  DtStateData* vrfObject, DtVrlinkNetworkInterface* mgr, bool publishObject);
57 
58  virtual bool isUnit() const override { return false; }
59  virtual bool isEntity() const override { return false; }
60  virtual bool isEnvironmental() const override { return false; }
61  virtual bool init (const DtEntityIdentifier& id = DtEntityIdentifier()) override;
62 
63  virtual bool isLocal() const override {
64  return true;
65  }
66 
67  virtual bool publishObject() const override {
68  return myPublishObject;
69  }
70 
71  virtual bool wantsToCreatePublisher() const override;
72 
73  virtual void onTick() override;
74 
75  #if DtHLA
76  virtual RTI::ObjectClassHandle objectClassHandle() const override;
77  #endif
78 
79  protected:
80  virtual bool createPublisher(const DtAerodromeStateComponent*);
81  virtual void updatePublisher(DtObjectPublisher*, const DtAerodromeStateComponent*);
82  virtual void updateRunway(const DtRunwayStateData&, DtRunwayStateRepository*);
83  virtual void updateAerodrome(const DtAerodromeStateComponent* data, DtAerodromeStateRepository*);
84  virtual void updateVrfDataAsSeenByRemote(DtAerodromeStateRepository*);
85  virtual const DtVrfStateComponent* vrfStateComponent();
86 
87  virtual void updatePublisher();
88 
89  virtual const DtAerodromeStateComponent* aerodromeStateComponent();
90  virtual void firstTimeInitialize();
91 
92  protected:
94  std::vector<DtRunwayStateRepository*> myRunways;
96 
100  };
101 }
Definition: vrfAerodromePublisher.h:21
virtual bool isLocal() const override
Is this network interface for a local (true) or remote (false) object? Local network interfaces shoul...
Definition: aerodromeLocalNetInterface.h:63
bool myFirstTimeInitialize
Definition: aerodromeLocalNetInterface.h:99
virtual bool isEnvironmental() const override
Definition: aerodromeLocalNetInterface.h:60
bool myPublishObject
Definition: aerodromeLocalNetInterface.h:98
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
DtVrfAerodromePublisher * myPublisher
Definition: aerodromeLocalNetInterface.h:97
const DtAerodromeStateComponent * myAerodromeComponent
Definition: aerodromeLocalNetInterface.h:93
Class Description: DtSimObjectNetInterface.
Definition: simObjectNetInterface.h:50
std::vector< DtRunwayStateRepository * > myRunways
Definition: aerodromeLocalNetInterface.h:94
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: aerodromeStateComponent.h:20
const DtVrfStateComponent * myVrfStateComponent
Definition: aerodromeLocalNetInterface.h:95
virtual bool isEntity() const override
Definition: aerodromeLocalNetInterface.h:59
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
Class Description: DtAerodromeLocalNetInterface.
Definition: aerodromeLocalNetInterface.h:27
virtual bool isUnit() const override
Is this network interface for a local (true) or remote (false) object? Deriving network interfaces sh...
Definition: aerodromeLocalNetInterface.h:58
virtual bool publishObject() const override
Definition: aerodromeLocalNetInterface.h:67
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)