VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfVrvExtensions.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
24 
31 
32 #include <vrvCore/DtEntityState.h>
34 #include <vrfExtObjects/reflectedExtEntity.h>
35 #include <vrfExtObjects/reflectedExtEntityList.h>
36 
37 #include <vlpi/entityType.h>
38 #include <matrix/vlVector.h>
39 
40 namespace makVrv
41 {
42  class DtVrlinkElement;
43 
44  namespace DT_PROTOCOL_NAMESPACE
45  {
46  class DtEntitySimDataProcessor;
47  class DtAggregateElement;
48  }
49 }
50 
51 namespace makVrf
52 {
53  namespace VRF_PROTOCOL_NAMESPACE
54  {
56  {
57  public:
58  static DtAggregateStateInterceptorCreator& instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
59 
62 
63  virtual DtAggregateStateRepository* create(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* listener);
64 
66  };
67 
70  {
71  public:
72 
74  makVrv::DtStateListener& listener, int modelSet);
75 
78 
79  protected:
80 
81  virtual void modelDefinitionCreated(const std::string&);
82 
84  virtual void forceSet(int);
85  };
86 
89 
92  {
93  public:
95 
98 
99  protected:
100  virtual void postUpdate();
101  };
102 
105  {
106  public:
108  : DtVrlinkTacticalGraphicStateListener(connection, id),
110 
113 
114  protected:
115  virtual void postUpdate(DtReflectedControlObject* cObj);
116  };
117 
119  {
120  public:
121 
125 
128 
129  #ifdef DtHLA
130 
131  //functionality.
132  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(DtHlaObject* object);
133  #endif
134 
135  #ifdef DtDIS
136 
137 
138  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(const DtEntityIdentifier& id,
139  const DtEntityType& type);
140  #endif
141 
144  };
145 
146 
149  {
150  public:
152 
155  };
156 
158  {
159  public:
160 
164 
167 
168  #ifdef DtHLA
169 
170  //functionality.
171  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(DtHlaObject* object);
172  #endif
173 
174  #ifdef DtDIS
175 
176 
177  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(const DtEntityIdentifier& id,
178  const DtEntityType& type);
179  #endif
180 
183  };
184 
186  {
187  public:
189 
192 
194 
196  };
197 
199  {
200  public:
201 
204 
205  virtual DtReflectedEntityList* create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityExistenceListener&);
206 
207  #if DtHLA
208  virtual DtReflectedEntityList* create(makVrv::DT_PROTOCOL_NAMESPACE::DtEntityExistenceListener&, DtDDMRegionSet&);
209  #endif
210 
211  protected:
213  };
214 
217  {
218  public:
219 
222 
224 
225  #if DtHLA
227  #endif
228 
229  protected:
231  };
232 
236  {
237  public:
238 
241  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& c) : DtVrlinkTacticalGraphicStateListenerCreator(c) {};
242 
245 
246  #ifdef DtHLA
247 
248  //functionality.
250  {
251  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
252  }
253  #endif
254 
255  #if DtDIS
256 
257 
259  const DtEntityIdentifier& id, const DtEntityType& type)
260  {
261  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
262  }
263  #endif
264  };
265 
267  {
268  public:
270 
271  #if DtHLA
273  const DtDDMRegionSet& regionsToUse);
274  #endif
275 
277 #if DtHLA
278 
279 
280 
281  virtual DtReflectedEntity* newReflectedObject(DtHlaObject* obj) const;
282 
286  virtual void removeAndDelete(DtReflectedObject* entity, char* msg = NULL);
287  virtual void resolveOrphans();
288 #endif
289 
290  #if DtDIS
291 
292  //Hacked class which allows setting the esr of an newly created reflected
293  //Entity
295  {
296  public:
297  DtVrfVrvReflectedEntity(DtExerciseConn* conn,
298  const DtEntityIdentifier& id,
299  const DtEntityType& type,
301  : DtReflectedExtEntity(conn,id,type)
302  {
303  delete myEntityStateRep;
304  myEntityStateRep = esr;
305  myEntityStateRep->setClock(conn->clock());
306  myEntityStateRep->setGlobalId(id);
307  myEntityStateRep->setDisObjectManager( conn->disObjectManager() );
308  }
309 
310  };
311 
316  virtual DtReflectedEntity* newReflectedEntity(
317  const DtEntityIdentifier& id,
318  const DtEntityType& type) const;
319 
322  virtual void removeAndDelete(DtReflectedObject* obj, char* msg = NULL);
323  #endif
324 
325  //Whenever an entity is added.
326  virtual void objectAdded(DtReflectedObject* ent);
327 
328  protected:
329 
330  typedef std::map<DtReflectedExtEntity*,makVrv::DtEntityStateListener*>
332 
333 
336  };
337 
342  {
343  public:
346  makVrv::DtStateListener& listener, int modelSet);
347 
350  };
351 
354 
360  {
361  public:
364  makVrv::DtStateListener& listener, int modelSet);
365 
368 
370  virtual void createModelAgents();
371 
372  protected:
373  virtual bool hasPhysicalFootprint();
374  };
375 
378 
384  {
385  public:
388  makVrv::DtStateListener& listener, int modelSet);
389 
392 
394  virtual void createModelAgents();
395 
396  protected:
397  virtual bool hasPhysicalFootprint();
398  };
399 
402  }
403 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)