VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedArealObjectDIS.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2014 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtDIS
13 
16 #include <vl/reflectedObjectDIS.h>
17 #include <vl/objectIdHashKey.h>
18 
20 
24 
29 {
30 public:
31 
33  typedef DtArealObjectRepository* (*DtStateRepCreator)();
34 
35 public:
36 
39  const DtEntityIdentifier& id );
40 
42  virtual ~DtReflectedArealObject();
43 
45  virtual inline DtArealObjectRepository* arealObjectStateRep() const { return myStateRepository; }
46 
48  virtual inline DtArealObjectRepository* aosr() const { return myStateRepository; }
49 
52  virtual inline DtStateRepository* stateRep() const { return myStateRepository; }
53 
56  virtual void processStateMessage( const DtStateMsg& msg );
57 
59  virtual DtReflectedArealObject* next() const;
60 
62  virtual DtReflectedArealObject* prev() const;
63 
66  virtual DtReflectedArealObject* wrapNext() const;
67 
70  virtual DtReflectedArealObject* wrapPrev() const;
71 
73  virtual void addPostUpdateCallback(
74  DtArealObjectCallbackFunction cb, void* usr );
75  virtual void removePostUpdateCallback(
76  DtArealObjectCallbackFunction cb, void* usr );
77 
79  virtual inline const DtBaseHashKey& hashKey() const { return myHashKey; }
80 
82  virtual inline DtString idString() const { return myIdString; }
83 
86  virtual const DtGlobalObjectDesignator& globalId() const;
87 
89  static void setStateRepCreator( DtStateRepCreator creator );
90  static DtStateRepCreator stateRepCreator();
91 
92 protected:
93 
96 
99 
100 protected:
101 
102  static DtStateRepCreator theStateRepCreator;
103 
108 
109 };
110 
111 #endif // DtDIS
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
Contains the DtArealObjectRepository class declaration.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Contains the DIS DtArealObjectDecoder class declaration.
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
virtual DtArealObjectRepository * arealObjectStateRep() const
Get the areal object&#39;s state repository.
Definition: reflectedArealObjectDIS.h:45
virtual DtArealObjectRepository * aosr() const
Synonym for arealObjectStateRep().
Definition: reflectedArealObjectDIS.h:48
Provides decoding logic for the DtArealObjectStatePdu class.
Definition: arealObjectDecoderDIS.h:20
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
DtString myIdString
Definition: reflectedArealObjectDIS.h:105
virtual const DtBaseHashKey & hashKey() const
Get a hash key for this object.
Definition: reflectedArealObjectDIS.h:79
static DtStateRepCreator theStateRepCreator
Definition: reflectedArealObjectDIS.h:102
virtual DtString idString() const
Get a string identification of this object.
Definition: reflectedArealObjectDIS.h:82
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
DtArealObjectDecoder * myDecoder
Definition: reflectedArealObjectDIS.h:107
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
DtArealObjectRepository * myStateRepository
Definition: reflectedArealObjectDIS.h:106
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
Instances of DtArealObjectRepository are used to maintain state information needed by areal object en...
Definition: arealObjectRepository.h:30
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
DtEntityIdentifierHashKey myHashKey
Definition: reflectedArealObjectDIS.h:104
void * wrapPrev() const
Definition: vlList.h:288
Instances of DtString are used to represent strings.
Definition: vlString.h:29
void(* DtArealObjectCallbackFunction)(DtReflectedArealObject *, void *)
Callback function that takes a DtReflectedArealObject and user data.
Definition: reflectedArealObjectDIS.h:23
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
virtual DtStateRepository * stateRep() const
Returns a pointer to the StateRepository through which you can inspect current state information...
Definition: reflectedArealObjectDIS.h:52
Instances of DtReflectedArealObject represent Areal Objects simulated by remote applications.
Definition: reflectedArealObjectDIS.h:28

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)