VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedSubsurfaceLayerDIS.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 
8 #if DtDIS
9 
10 #include <vl/reflectedObjectDIS.h>
12 #include <vl/metocPdu.h>
13 #include <vlutil/vlMachineTypes.h>
14 #include <vlutil/vlHashKeys.h>
16 
17 class DtExerciseConn;
18 
22 
23 
26  DtReflectedSubsurfaceLayer* obj, void* userData);
27 
30 {
31 public:
33  typedef DtSubsurfaceLayerStateRepository* (*DtStateRepCreator)();
34 
35 public:
38 
40  virtual ~DtReflectedSubsurfaceLayer();
41 
42 private:
45 
48 
49 public:
52  virtual DtSubsurfaceLayerStateRepository* subsurfaceLayerStateRep() const;
53 
55  virtual DtSubsurfaceLayerStateRepository* ssr() const;
56 
60  virtual DtStateRepository* stateRep() const;
61 
64  virtual DtSubsurfaceLayerDecoder* decoder();
65 
68  virtual const DtGlobalObjectDesignator& globalId() const;
69 
71  virtual DtReflectedSubsurfaceLayer* next() const;
72  virtual DtReflectedSubsurfaceLayer* prev() const;
73 
75  virtual DtReflectedSubsurfaceLayer* wrapNext() const;
76  virtual DtReflectedSubsurfaceLayer* wrapPrev() const;
77 
79  virtual void addPostUpdateCallback(
80  DtSubsurfaceLayerCallbackFunction cb, void* userData);
81  virtual void removePostUpdateCallback(
82  DtSubsurfaceLayerCallbackFunction cb, void* userData);
83 
85  virtual void setHashKey(const DtEntityIdentifier& uniqueVal);
86 
89  virtual const DtBaseHashKey& hashKey() const;
90 
92  virtual DtString idString() const;
93 
95  virtual void processStateMessage(const DtStateMsg& msg);
96 
99  virtual void processSubsurfaceLayerState(const DtMetocPdu& pdu);
100 
101 public:
103  static void setStateRepCreator(DtStateRepCreator creator);
104  static DtStateRepCreator stateRepCreator(void);
105 
106 protected:
107  static DtStateRepCreator theStateRepCreator;
111 
112 };
113 
114 #endif
Instances of DtEntityIdentifierHashKey are hash keys made from DtEntityIdentifiers.
Definition: entityIdentifierHashKey.h:21
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.
Instances of DtMetocEncoder encode data from DtMETOC_RootStateRepository objects to the net structure...
Definition: subsurfaceLayerDecoderDIS.h:26
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Instances of DtMetocPdu are used for DIS network packets which encode the DtMetocRootStateRepository ...
Definition: metocPdu.h:37
This file contains typedefs used to represent objects in a protocol neutral way.
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
This file declares DtEntityIdentifierHashKey.
Instances of DtSubsurfaceLayerStateRepository are used to store state data for METOC_Root.EnvironmentCondition.SubsurfaceLayer objects.
Definition: subsurfaceLayerStateRepository.h:32
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.
Contains the DtMetocPdu class declaration.
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
Definition: reflectedSubsurfaceLayerDIS.h:29
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
This file declares DtBaseHashKey.
DtSubsurfaceLayerStateRepository * myStateRep
Definition: reflectedSubsurfaceLayerDIS.h:109
DtEntityIdentifierHashKey myHashKey
Definition: reflectedSubsurfaceLayerDIS.h:108
void(* DtSubsurfaceLayerCallbackFunction)(DtReflectedSubsurfaceLayer *obj, void *userData)
Definition: reflectedSubsurfaceLayerDIS.h:25
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
virtual DtString idString() const =0
Get a string identification of this object.
static DtStateRepCreator theStateRepCreator
Definition: reflectedSubsurfaceLayerDIS.h:107
void * wrapPrev() const
Definition: vlList.h:288
DtSubsurfaceLayerDecoder * myDecoder
Definition: reflectedSubsurfaceLayerDIS.h:110
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
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)