VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
reflectedExtEntity.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
8 #include <vl/reflectedEntity.h>
9 
10 #define DtEntReflectedObjectType DtReflectedEntity
11 
13 
14 // Callback function that takes a DtReflectedExtEntity
15 // and usr data.
16 
18 
19 typedef void (*DtExtEntityCallbackFunction)
20 (
21  DtReflectedExtEntity* obj, void* userData
22 );
23 
24 class DtExerciseConn;
25 
28 {
29 public:
30 
31 #if DtHLA
33  (
34  DtHlaObject* obj,
35  DtExerciseConn* conn
36  );
37  DtReflectedExtEntity(DtExerciseConn* conn, DtEntityStateRepository* esrToUse);
38 #elif (DtDIS || DtTENA)
39  // constructor
41  (
42  DtExerciseConn* conn,
43  const DtEntityIdentifier& id,
44  const DtEntityType& type
45  );
46 #endif
47 
48  // destructor
49  virtual ~DtReflectedExtEntity();
50 
51  // Returns ptr to environmentProcessStateRepository --
52  // through which you can inspect current state info.
53  virtual DtExtEntityStateRepository* extEntityStateRep() const;
54 
55  // Synonym for extEntityStateRep().
56  virtual DtExtEntityStateRepository* eesr() const;
57 
58  // Implementation for abstract base class. Calls cosr().
59  virtual DtStateRepository* stateRep() const;
60 
61 #if DtDIS
62  // Process an environment process state PDU.
63  // Calls processEnvironmentProcess().
64  virtual void processStateMessage(const DtStateMsg& msg);
65 #endif
66 
67  // Get the next and previous elements in the reflected
68  // cwenvironment process list.
69  virtual DtReflectedExtEntity* nextEE() const;
70  virtual DtReflectedExtEntity* prevEE() const;
71 
72  // Get the next and previous elements, wrap at the ends of the list.
73  virtual DtReflectedExtEntity* wrapNextEE() const;
74  virtual DtReflectedExtEntity* wrapPrevEE() const;
75 
76  // Environment Process callback registration/deregistration.
77  virtual void addPostUpdateCallback
78  (
79  DtExtEntityCallbackFunction cb, void* userData
80  );
81  virtual void removePostUpdateCallback
82  (
83  DtExtEntityCallbackFunction cb, void* userData
84  );
85 
86  static void postUpdateCallback
87  (
88  DtReflectedExtEntity* ent, void* userData
89  );
90 
91  virtual void processPostUpdate();
92 
95 #if DtHLA
96  virtual void diGuyObjectUpdated();
97 #endif
98 
99  virtual void updateExtensions();
100 
101  // Overridden from bast class to make public.
102  virtual void processPostUpdateCallbacks();
103 
104 private:
105 
106  // copy constructor
108 
109  // assignment operator
110  DtReflectedExtEntity& operator=(const DtReflectedExtEntity& orig);
111 };

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)