VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedTimeAndDateDIS.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 1992-2025 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
6 #pragma once
7 
11 
12 #if DtDIS
13 
14 #include <vlutil/vlMachineTypes.h>
15 #include <vlutil/vlHashKeys.h>
16 #include <vl/reflectedObjectDIS.h>
18 #include <vl/timeAndDatePdu.h>
20 
21 class DtExerciseConn;
22 
26 
27 
29  DtReflectedTimeAndDate* obj, void* userData);
30 
31 
33 {
34 public:
35 
37  typedef DtTimeAndDateStateRepository* (*DtStateRepCreator)();
38 
39 public:
40 
43 
45  virtual ~DtReflectedTimeAndDate();
46 
47 private:
50 
53 public:
54 
57  virtual DtTimeAndDateStateRepository* timeAndDateStateRep() const;
58 
60  virtual DtTimeAndDateStateRepository* tsr() const;
61 
65  virtual DtStateRepository* stateRep() const;
66 
69  virtual DtTimeAndDateDecoder* decoder();
70 
73  virtual const DtGlobalObjectDesignator& globalId() const;
74 
76  virtual DtReflectedTimeAndDate* next() const;
77  virtual DtReflectedTimeAndDate* prev() const;
78 
80  virtual DtReflectedTimeAndDate* wrapNext() const;
81  virtual DtReflectedTimeAndDate* wrapPrev() const;
82 
84  virtual void addPostUpdateCallback(
85  DtTimeAndDateStateCallbackFunction cb, void* userData);
86  virtual void removePostUpdateCallback(
87  DtTimeAndDateStateCallbackFunction cb, void* userData);
88 
90  virtual void setHashKey(const DtEntityIdentifier& uniqueVal);
91 
94  virtual const DtBaseHashKey& hashKey() const;
95 
97  virtual DtString idString() const;
98 
99 
101  virtual void processStateMessage(const DtStateMsg& msg);
102 
105  virtual void processTimeAndDateState(const DtTimeAndDatePdu& pdu);
106 
108  virtual void runwayUpdated();
109 
110 public:
111 
113  static void setStateRepCreator(DtStateRepCreator creator);
114  static DtStateRepCreator stateRepCreator(void);
115 
116 protected:
117 
118  static DtStateRepCreator theStateRepCreator;
122 };
123 
124 
125 
126 #endif
Instances of DtEntityIdentifierHashKey are hash keys made from DtEntityIdentifiers.
Definition: entityIdentifierHashKey.h:21
DtTimeAndDateDecoder * myDecoder
Definition: reflectedTimeAndDateDIS.h:121
void * next() const
Return next (previous) elements on the list, or NULL if hit the end (beginning) of the list...
Definition: vlList.h:272
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:62
virtual const DtBaseHashKey & hashKey() const =0
Get a hash key for this object.
void(* DtTimeAndDateStateCallbackFunction)(DtReflectedTimeAndDate *obj, void *userData)
Definition: reflectedTimeAndDateDIS.h:28
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Definition: reflectedTimeAndDateDIS.h:32
This file contains typedefs used to represent objects in a protocol neutral way.
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
Instances of DtTimeAndDatePdu are used for DIS network packets which encode the DtTimeAndDate reposit...
Definition: timeAndDatePdu.h:29
This file declares DtEntityIdentifierHashKey.
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
virtual const DtGlobalObjectDesignator & globalId() const =0
Get the Global ID for this object.
void * prev() const
Definition: vlList.h:277
void * wrapNext() const
Return next (previous) elements on the list, but wrap to the beginning (end) of the list when you hit...
Definition: vlList.h:282
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
Instances of DtTimeAndDateDecoder decode data from TimeAndDate PDUs to update a DtTimeAndDateStateRep...
Definition: timeAndDateDecoderDIS.h:25
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
static DtStateRepCreator theStateRepCreator
Definition: reflectedTimeAndDateDIS.h:118
This file declares DtBaseHashKey.
DtEntityIdentifierHashKey myHashKey
Definition: reflectedTimeAndDateDIS.h:119
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
virtual DtString idString() const =0
Get a string identification of this object.
void * wrapPrev() const
Definition: vlList.h:288
DtTimeAndDateStateRepository * myStateRep
Definition: reflectedTimeAndDateDIS.h:120
Contains the DtTimeAndDatePdu class declaration.
Instances of DtString are used to represent strings.
Definition: vlString.h:36
virtual DtStateRepository * stateRep() const =0
Returns a pointer to the StateRepository - through which you can inspect current state information...
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
Instances of DtTimeAndDateStateRepository are used to store state data for MAK_TimeAndDate objects...
Definition: timeAndDateStateRepository.h:26
This file contains typedefs for machine dependant types.

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)