VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
runwayPublisherDIS.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 1992-2025 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtDIS
13 
14 #include <vl/objectPublisherDIS.h>
15 
16 #include <vl/objectId.h>
17 #include <vlpi/entityIdentifier.h>
18 
19 
20 
22 class DtRunwayEncoder;
23 class DtRunwayDecoder;
24 
28 {
29 public:
31  typedef DtRunwayStateRepository* (*DtStateRepCreator)();
32 
33 public:
36  DtRunwayStateRepository* stateRepToUse,
37  DtExerciseConn* conn,
38  const DtObjectId& id = DtObjectId::nullId());
39 
42  DtExerciseConn* conn,
43  const DtObjectId& id = DtObjectId::nullId());
44 
46  virtual ~DtRunwayPublisher();
47 
48 private:
51 
54  const DtRunwayPublisher& orig);
55 
56 public:
57 
60  virtual DtRunwayStateRepository* runwayStateRep();
61 
63  virtual DtRunwayStateRepository* rsr();
64 
66  virtual bool tick();
67 
69  virtual void forceUpdate();
70 
72  virtual const DtObjectId& id() const;
73 
75  virtual const DtObjectId& localId() const;
76 
78  virtual const DtGlobalObjectDesignator& globalId() const;
79 
80 public:
82  static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
83 
84 protected:
86  void sendFinalPdu();
87 
88 protected:
89  static DtStateRepCreator theStateRepCreator;
93 
94 };
95 
97 {
99 }
100 
102 {
104 }
105 
106 
107 
108 #endif
Contains the DtEntityIdentifier class declaration.
Contains the DtObjectId class declaration.
DtStateRepository * myStateRep
Definition: objectPublisherDIS.h:193
static const DtEntityIdentifier & nullId()
Returns a reference to an instance of 0:0:0.
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
Instances of DtRunwayEncoder encode data from DtAerodromeStateRepository objects to the net structure...
Definition: runwayEncoderDIS.h:26
DtObjectId myId
Definition: runwayPublisherDIS.h:90
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherDIS.h:36
virtual void forceUpdate()=0
For publisher to send PDU on next tick.
virtual const DtObjectId & id() const =0
The id is the same as the globalId, a DtEntityIdentifier unique to this object.
virtual const DtGlobalObjectDesignator & globalId() const =0
The entityIdentifier unique to this object.
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
virtual DtRunwayStateRepository * rsr()
Synonym for aerodromeStateRep().
Definition: runwayPublisherDIS.h:101
DtObjectPublisher & operator=(const DtObjectPublisher &orig)
assignment operator – not implemented
Instances of DtRunwayDecoder decode data from Runway PDUs to update a DtRunwayStateRepository.
Definition: runwayDecoderDIS.h:25
Instances of DtRunwayStateRepository are used to store state data for runway objects.
Definition: runwayStateRepository.h:19
DtRunwayEncoder * myEncoder
Definition: runwayPublisherDIS.h:92
This class declares the DIS version of DtObjectPublisher.
virtual DtRunwayStateRepository * runwayStateRep()
Returns a pointer to the DtRunwayStateRepository - through which you can set or inspect current state...
Definition: runwayPublisherDIS.h:96
virtual bool tick()=0
Tick (update) this object.
DtRunwayDecoder * myDecoder
Definition: runwayPublisherDIS.h:91
static DtStateRepCreator theStateRepCreator
Definition: runwayPublisherDIS.h:89
virtual const DtObjectId & localId() const =0
The localId is the same as the globalId, a DtEntityIdentifier unique to this object.
Instances of DtRunwayPublisher publish Aerodrome objects to the network.
Definition: runwayPublisherDIS.h:27

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)