VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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 
16 
18 
31 
36 
38 
41 
42 #include <vrvCore/DtEntityState.h>
47 
48 #include <vrfutil/rwUUID.h>
49 
50 #include <vlpi/entityType.h>
51 #include <matrix/vlVector.h>
52 
53 #if DtHLA
55 #else
57 #endif
58 
62 
63 namespace makVrv
64 {
65  class DtVrlinkElement;
66  class DtEmbarkationUpdaterAgent;
67 
68  namespace DT_PROTOCOL_NAMESPACE
69  {
70  class DtEntitySimDataProcessor;
71  class DtAggregateElement;
72  class DtVrlinkTacticalGraphicStateListener;
74  }
75 }
76 
77 namespace makVrf
78 {
79  namespace VRF_PROTOCOL_NAMESPACE
80  {
82  {
83  public:
84  static DtAggregateStateInterceptorCreator& instance(makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& sim);
85 
88 
90 
92  };
93 
96  {
97  public:
98 
100  makVrv::DtStateListener& listener, int modelSet);
101 
104 
105  protected:
106 
107  virtual void modelDefinitionCreated(const std::string&);
108 
110  virtual void forceSet(int);
111  };
112 
115 
118  {
119  public:
121 
124 
125  protected:
126  virtual void postUpdate();
127  };
128 
131  {
132  public:
134  : DtVrlinkTacticalGraphicStateListener(connection, id),
136 
139 
140  protected:
141  virtual void postUpdate(DtReflectedControlObject* cObj);
142  };
143 
145  {
146  public:
147 
151 
154 
155  #ifdef DtHLA
156 
157  //functionality.
158  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(DtHlaObject* object);
159  #endif
160 
161  #ifdef DtDIS
162 
163 
164  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkEntityStateListener* create(const DtEntityIdentifier& id,
165  const DtEntityType& type);
166  #endif
167 
170  };
171 
172 
175  {
176  public:
178 
181 
183  virtual void updateSubordinates();
184 
185  protected:
186  virtual void slot_subordinateAdded(const DtUUID&, const DtUUID&);
187  virtual void slot_subordinateRemoved(const DtUUID&, const DtUUID&);
188  virtual const DtUUID& uuid();
189 
190  protected:
191  std::set<std::string> myOrbatOnlySubordinates;
195  };
196 
198  {
199  public:
200 
204 
207 
208  #ifdef DtHLA
209 
210  //functionality.
211  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(DtHlaObject* object);
212  #endif
213 
214  #ifdef DtDIS
215 
216 
217  virtual makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkAggregateStateListener* create(const DtEntityIdentifier& id,
218  const DtEntityType& type);
219  #endif
220 
223  };
224 
227  {
228  public:
229 
232 
234 
235  #if DtHLA
237  #endif
238 
239  protected:
241  };
242 
246  {
247  public:
248 
251  makVrv::DT_PROTOCOL_NAMESPACE::DtVrlinkConnection& c) : DtVrlinkTacticalGraphicStateListenerCreator(c) {};
252 
255 
256  #ifdef DtHLA
257 
258  //functionality.
260  {
261  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
262  }
263  #endif
264 
265  #if DtDIS
266 
267 
269  const DtEntityIdentifier& id, const DtEntityType& type)
270  {
271  return new DtVrfVrlinkTacticalGraphicStateListener(mySim, mySim.sceneInterface().createNewUniqueId());
272  }
273  #endif
274  };
275 
284  {
285  public:
287 
288  #if DtHLA
290  const DtDDMRegionSet& regionsToUse);
291  #endif
292 
294 #if DtHLA
295 
296 
297 
298  virtual DtReflectedEntity* newReflectedObject(DtHlaObject* obj) const;
299 
303  virtual void removeAndDelete(DtReflectedObject* entity, char* msg = NULL);
304  virtual void resolveOrphans();
305 #endif
306 
307  #if DtDIS
308 
309  //Hacked class which allows setting the esr of an newly created reflected
310  //Entity
312  {
313  public:
314  DtVrfVrvReflectedEntity(DtExerciseConn* conn,
315  const DtEntityIdentifier& id,
316  const DtEntityType& type,
318  : DtReflectedExtEntity(conn,id,type)
319  {
320  delete myEntityStateRep;
321  myEntityStateRep = esr;
322  myEntityStateRep->setClock(conn->clock());
323  myEntityStateRep->setGlobalId(id);
324  myEntityStateRep->setDisObjectManager( conn->disObjectManager() );
325  }
326 
327  };
328 
333  virtual DtReflectedEntity* newReflectedEntity(
334  const DtEntityIdentifier& id,
335  const DtEntityType& type) const;
336 
339  virtual void removeAndDelete(DtReflectedObject* obj, char* msg = NULL);
340  #endif
341 
342  //Whenever an entity is added.
343  virtual void objectAdded(DtReflectedObject* ent);
344 
345  protected:
346 
347  typedef std::map<DtReflectedExtEntity*,makVrv::DtEntityStateListener*>
349 
350 
353  };
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 
404  {
405  public:
407 
410 
412 
414  };
415 
417  {
418  public:
419 
422  makVrv::DtStateListener& listener, int modelSet );
423 
426 
427  virtual void createModelAgents();
428  };
429 
432  }
433 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)