VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
embeddedEntitiesController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
13 
15 
17 
18 struct DtEmbeddedEntity;
20 
25 {
26 public:
28  DtVrfObject* owner,
29  DtSimManager* simManager,
30  DtComponentDescriptor* desc = 0,
31  DtReaderWriterRegistry* parentRegistry = 0);
33 
34  static DtSimComponent* creator(const DtString& name,
35  DtVrfObject* owner,
36  DtSimManager* simManager,
37  DtComponentDescriptor* desc = 0,
38  DtReaderWriterRegistry* parentRegistry = 0);
39  virtual DtString type() const;
40 
42  virtual bool init();
46  virtual void preFirstTickInit();
47 
48  virtual void registerTaskMsgCallbacks();
49  virtual DtEmbeddedEntitiesPSR* createPSR();
50 
53  virtual void clearTask(int tskId);
54 
56  virtual void tick();
57 
62  virtual void processEmbeddedEntityCurrentlyInContext(double deltaTime);
66  virtual bool checkWithinRecoveryRange();
69  virtual bool performDeployment();
71  virtual bool performRecovery();
73  virtual bool performSetForward();
75  virtual bool performTaskForward();
77  virtual DtVector calculateSpawnPosOfTarget();
80  virtual bool commandEeToReturn(const DtString& entityName);
82 
85  virtual DtString getObjectNameOfEmbeddedEntity(std::string eeName, bool& found);
86 
90  getStatusOfEmbeddedEntity(std::string eeName, bool& found);
91 
93  static void setForwardTaskCallback(DtSimMessage * msg, void * usrData);
95  static void taskForwardTaskCallback(DtSimMessage * msg, void * usrData);
97  virtual void processForwardTask(DtSimMessage * msg);
98 
100  static void deployTaskCallback(DtSimMessage * msg, void * usrData);
102  static void recoverTaskCallback(DtSimMessage * msg, void * usrData);
104  virtual void processTask(DtSimMessage * msg);
105 
107  virtual std::list<DtEmbeddedEntity> availableEmbeddedEntities();
108 
110 
111  static void deletionCallback(DtVrfObject* spawnedObject, void* usrData);
112  virtual void processDeletion(DtVrfObject* spawnedObject);
114 
116 
117  static void nameChangedCallback(const DtVrfObjectNameChangedCallbackInfo& changeInfo, void *usrData);
118  virtual void processNameChanged(const DtVrfObjectNameChangedCallbackInfo& changeInfo);
120 
122 
123  static void hostRestoreCallback(DtSimMessage* message, void* usrData);
126  virtual void processHostRestore(DtSimMessage* message);
128 
129 protected:
131  virtual void restoreEmbedded(DtRwEmbeddedEntityStatus* const eeStatus);
132 
133 protected:
136 
140 
143  std::map<std::string, DtRwEmbeddedEntity*> myNamedEntityMap;
144 
147  std::list<int> myFaultedTasks;
148 };

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)