VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedUnderwaterAcousticsDIS.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2013 VT MAK
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 
30 {
31 public:
32 
34  typedef DtUnderwaterAcousticsStateRepository* (*DtStateRepCreator)();
35 
36 public:
37 
40  const DtGlobalObjectDesignator& hostEntity );
41 
44 
45 public:
46 
49  {
50  return myStateRepository;
51  }
52 
54  virtual inline DtUnderwaterAcousticsStateRepository* usr() const { return myStateRepository; }
55 
58  virtual inline DtStateRepository* stateRep() const { return myStateRepository; }
59 
61  virtual inline DtUnderwaterAcousticsDecoder* decoder() { return &myDecoder; }
62 
65  virtual void processStateMessage( const DtStateMsg& msg );
66 
68  virtual DtReflectedUnderwaterAcoustics* next() const;
69 
71  virtual DtReflectedUnderwaterAcoustics* prev() const;
72 
76 
80 
82  virtual void addPostUpdateCallback( DtUnderwaterAcousticsCallbackFunction cb, void* usr );
83 
84  virtual void removePostUpdateCallback( DtUnderwaterAcousticsCallbackFunction cb, void* usr );
85 
87  virtual inline const DtBaseHashKey& hashKey() const { return myHashKey; }
88 
90  virtual inline DtString idString() const { return myIdString; }
91 
94  virtual const DtGlobalObjectDesignator& globalId() const;
95 
96 public:
97 
99  static void setStateRepCreator( DtStateRepCreator creator );
100  static DtStateRepCreator stateRepCreator();
101 
102 protected:
103 
106 
109 
110 protected:
111 
112  static DtStateRepCreator theStateRepCreator;
113 
118 
119 };
120 
121 #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
Contains the DtUnderwaterAcousticsStateRepository class declaration.
virtual DtUnderwaterAcousticsStateRepository * underwaterAcousticsStateRep() const
Get the underwater acoustic object&#39;s state repository.
Definition: reflectedUnderwaterAcousticsDIS.h:48
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
virtual DtUnderwaterAcousticsDecoder * decoder()
Returns a pointer to the Decoder being used to decode state messages.
Definition: reflectedUnderwaterAcousticsDIS.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual const DtBaseHashKey & hashKey() const
Get a hash key for this object.
Definition: reflectedUnderwaterAcousticsDIS.h:87
DtBaseHashKey is an abstract base class for hash keys.
Definition: vlHashKeys.h:39
Instances of DtReflectedUnderwaterAcoustics represent underwater acoustics objects simulated by remot...
Definition: reflectedUnderwaterAcousticsDIS.h:29
DtUnderwaterAcousticsStateRepository * myStateRepository
Definition: reflectedUnderwaterAcousticsDIS.h:116
virtual DtStateRepository * stateRep() const
Returns a pointer to the StateRepository through which you can inspect current state information...
Definition: reflectedUnderwaterAcousticsDIS.h:58
DtReflectedObject & operator=(const DtReflectedObject &orig)
assignment operator – not implemented
Instances of DtUnderwaterAcousticsDecoder are used to take state information from an emission state P...
Definition: underwaterAcousticsDecoderDIS.h:26
DtString myIdString
Definition: reflectedUnderwaterAcousticsDIS.h:115
Contains the DIS DtUnderwaterAcousticsDecoder class declaration.
static DtStateRepCreator theStateRepCreator
Definition: reflectedUnderwaterAcousticsDIS.h:112
Instances of DtUnderwaterAcousticsStateRepository are used to store state data for all underwater aco...
Definition: underwaterAcousticsStateRepository.h:37
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
virtual DtString idString() const
Get a string identification of this object.
Definition: reflectedUnderwaterAcousticsDIS.h:90
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
DtObjectIdHashKey myHashKey
Definition: reflectedUnderwaterAcousticsDIS.h:114
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
DtUnderwaterAcousticsDecoder myDecoder
Definition: reflectedUnderwaterAcousticsDIS.h:117
virtual DtUnderwaterAcousticsStateRepository * usr() const
Synonym for underwaterAcousticsStateRep().
Definition: reflectedUnderwaterAcousticsDIS.h:54
virtual void processStateMessage(const DtStateMsg &msg)
Process an entity state PDU.
void(* DtUnderwaterAcousticsCallbackFunction)(DtReflectedUnderwaterAcoustics *, void *)
Callback function that takes a DtReflectedUnderwaterAcoustics and user data.
Definition: reflectedUnderwaterAcousticsDIS.h:23
void * wrapPrev() const
Definition: vlList.h:288
Instances of DtString are used to represent strings.
Definition: vlString.h:29
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)