VR-Link API Documentation for DIS
hReflectedEnt.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
7 #ifndef hReflectedEnt_H_
8 #define hReflectedEnt_H_
9 
10 #if DtHLA
11 
12 #include "entitySR.h"
13 #include "hReflectedObj.h"
14 
19 
21 
23 typedef void (*DtEntityCallbackFunction)(
24  DtReflectedEntity* obj, void* userData);
25 
30 {
31 public:
32 
34  typedef DtEntityStateRepository* (*DtStateRepCreator)();
35 
36 public:
37 
39  DtReflectedEntity(DtHlaObject* obj, DtExerciseConn* conn);
40 
45 
47  DtReflectedEntity(DtHlaObject* obj, DtExerciseConn* conn,
48  DtBaseStateRepCreator esrToUse);
49 
51  virtual ~DtReflectedEntity();
52 
55  virtual DtEntityStateRepository* entityStateRep() const;
56 
58  virtual DtEntityStateRepository* esr() const;
59 
61  virtual DtReflectedEntity* next() const;
62 
64  virtual DtReflectedEntity* prev() const;
65 
68  virtual DtReflectedEntity* wrapNext() const;
69 
72  virtual DtReflectedEntity* wrapPrev() const;
73 
75  virtual void addPostUpdateCallback(
76  DtEntityCallbackFunction cb, void* userData);
77  virtual void removePostUpdateCallback(
78  DtEntityCallbackFunction cb, void* userData);
79 
80  virtual void diGuyObjectUpdated();
81 
82 
83 public:
84 
86  static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
87 
88 public:
89 
91  typedef DtStateRepCreator DtEsrCreator;
92 
94 #if DtHLA_1516
95  virtual RTI::ObjectInstanceHandle entityObjectId() const;
96 #else
97  virtual RTI::ObjectHandle entityObjectId() const;
98 #endif
99 
102  static DtEsrCreator setEsrCreator(DtEsrCreator creator);
103 
104 protected:
105 
108 
111 
112 protected:
113 
114  static DtStateRepCreator theStateRepCreator;
115 };
116 
118 {
119  return (DtEntityStateRepository*) myStateRep;
120 }
121 
123 {
124  return (DtEntityStateRepository*) myStateRep;
125 }
126 
127 #endif
128 #endif
129 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)