VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfObjectPlanAdministrator.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 class DtSimMessage;
12 class DtVrfObject;
13 class DtVrfObjectManager;
14 class DtString;
15 
16 #include <map>
17 
20 {
24 };
25 
37 
39 #include "vrfutil/rwUUID.h"
40 #include <set>
41 
42 class DtlObjPtr;
43 class DtlInputStream;
44 
46 {
47 public:
48 
49  typedef std::map<DtUUID, char*> CachedPlanMap;
50 
51 public:
52 
55 
59 
62  virtual void cachePlan(const DtUUID& sObjName, DtlObjPtr planBlock);
63 
65  virtual void clearCachedPlans();
66 
68  virtual bool init();
69 
73  virtual const char* lookupCachedPlan(const DtUUID& sObjName);
74 
78  virtual bool readPlanFile(const DtString& filename, DtlObjPtr* retArgs = 0);
79  virtual bool readPlanFileFromZipFile(const DtString& scenarioZipFile, const DtString& filename, DtlObjPtr* retArgs = 0);
80  virtual bool readPlanFile(const std::string& buffer, DtlObjPtr* retArgs = 0);
81 
82  virtual bool readPlanFile(DtlObjPtr& args);
83 
85  virtual void writePlanFile(const DtString& filename) const;
86  virtual void writePlanFile(std::string& planFile) const;
87 
91  virtual void enablePlanExecutionState();
92  virtual void disablePlanExecutionState();
94 
97  virtual void ignoreThisUUIDOnPlanRead(const DtUUID&);
98  virtual void clearIgnoreUUIDsOnPleanRead();
99  const std::set<DtUUID>& ignoreUUIDsOnPlanRead() const
100  {
101  return myIgnoreUUIDsOnPlanRead;
102  }
103 
105  virtual bool planExecutionEnabled() const;
106 
108  static void setPlanCallback(DtSimMessage* msg, void* usr);
110  virtual void processSetPlan(DtSimMessage* msg);
111 
113  static void setMultiplePlanCallback(DtSimMessage* msg, void* usr);
115  virtual void processSetMultiplePlan(DtSimMessage* msg);
116 
118  static void requestPlanCallback(DtSimMessage* msg, void* usr);
120  virtual void processRequestPlan(DtSimMessage* msg);
121 
123  static void requestMultiPlanCallback(DtSimMessage* msg, void* usr);
128  virtual void processRequestMultiPlan(DtSimMessage* msg);
129 
131  static void abandonPlanCallback(DtSimMessage* msg, void* usr);
133  virtual void processAbandonPlan(DtSimMessage* msg);
134 
136  static void restartPlanCallback(DtSimMessage* msg, void* usr);
138  virtual void processRestartPlan(DtSimMessage* msg);
139 
140 protected:
141  virtual bool processPlanStream(DtlInputStream*, DtlObjPtr* retArgs = 0);
142 
143 protected:
144 
147 
150 
152  DtVrfObjectPlanAdministrator& operator=(
153  const DtVrfObjectPlanAdministrator& orig);
154 
155 protected:
157 
164 
166 
169 
170  std::set<DtUUID> myIgnoreUUIDsOnPlanRead;
171 
172 };
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
const std::set< DtUUID > & ignoreUUIDsOnPlanRead() const
Definition: vrfObjectPlanAdministrator.h:99
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
&quot;0.1&quot;
Definition: vrfObjectPlanAdministrator.h:22
Definition: vrfObjectPlanAdministrator.h:21
bool myExecuting
Definition: vrfObjectPlanAdministrator.h:165
static PlanFileVersion planFileCurrentVersion
The current plan file version.
Definition: vrfObjectPlanAdministrator.h:168
std::map< DtUUID, char * > CachedPlanMap
Definition: vrfObjectPlanAdministrator.h:49
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::set< DtUUID > myIgnoreUUIDsOnPlanRead
Definition: vrfObjectPlanAdministrator.h:170
PlanFileVersion
The known Plan File version &quot;numbers&quot;.
Definition: vrfObjectPlanAdministrator.h:19
File: simMsg.h.
Definition: simMessage.h:35
DtVrfObjectManager * myVrfObjectManager
Definition: vrfObjectPlanAdministrator.h:156
Definition: vrfObjectPlanAdministrator.h:45
class DtVrfObjectManager:
Definition: vrfObjectManager.h:202
CachedPlanMap myCachedPlans
Plan scripts for non-VRF entities Used during scenario load.
Definition: vrfObjectPlanAdministrator.h:163
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
&quot;1.0&quot;
Definition: vrfObjectPlanAdministrator.h:23

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)