VR-Forces Developer's Guide
 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;
13 class DtString;
14 
15 #include <map>
16 
19 {
23 };
24 
25 
26 
28 #include "vrfutil/rwUUID.h"
29 #include <set>
30 
31 class DtlObjPtr;
32 class DtlInputStream;
33 
45 {
46 public:
47 
48  typedef std::map<DtUUID, char*> CachedPlanMap;
49 
50 public:
51 
54 
58 
61  virtual void cachePlan(const DtUUID& sObjName, DtlObjPtr planBlock);
62 
64  virtual void clearCachedPlans();
65 
67  virtual bool init();
68 
72  virtual const char* lookupCachedPlan(const DtUUID& sObjName);
73 
77  virtual bool readPlanFile(const DtString& filename, DtlObjPtr* retArgs = 0);
78  virtual bool readPlanFileFromZipFile(const DtString& scenarioZipFile, const DtString& filename, DtlObjPtr* retArgs = 0);
79  virtual bool readPlanFile(const std::string& buffer, DtlObjPtr* retArgs = 0);
80 
81  virtual bool readPlanFile(DtlObjPtr& args);
82 
84  virtual void writePlanFile(const DtString& filename) const;
85  virtual void writePlanFile(std::string& planFile) const;
86 
90  virtual void enablePlanExecutionState();
91  virtual void disablePlanExecutionState();
93 
96  virtual void ignoreThisUUIDOnPlanRead(const DtUUID&);
97  virtual void clearIgnoreUUIDsOnPleanRead();
98  const std::set<DtUUID>& ignoreUUIDsOnPlanRead() const
99  {
100  return myIgnoreUUIDsOnPlanRead;
101  }
102 
104  virtual bool planExecutionEnabled() const;
105 
107  static void setPlanCallback(DtSimMessage* msg, void* usr);
109  virtual void processSetPlan(DtSimMessage* msg);
110 
112  static void setMultiplePlanCallback(DtSimMessage* msg, void* usr);
114  virtual void processSetMultiplePlan(DtSimMessage* msg);
115 
117  static void requestPlanCallback(DtSimMessage* msg, void* usr);
119  virtual void processRequestPlan(DtSimMessage* msg);
120 
122  static void requestMultiPlanCallback(DtSimMessage* msg, void* usr);
127  virtual void processRequestMultiPlan(DtSimMessage* msg);
128 
130  static void abandonPlanCallback(DtSimMessage* msg, void* usr);
132  virtual void processAbandonPlan(DtSimMessage* msg);
133 
135  static void restartPlanCallback(DtSimMessage* msg, void* usr);
137  virtual void processRestartPlan(DtSimMessage* msg);
138 
139  virtual void clearObjectManager();
140 
141 protected:
142  virtual bool processPlanStream(DtlInputStream*, DtlObjPtr* retArgs = 0);
143 
144 protected:
145 
148 
151 
153  DtVrfObjectPlanAdministrator& operator=(
154  const DtVrfObjectPlanAdministrator& orig);
155 
156 protected:
158 
165 
167 
170 
171  std::set<DtUUID> myIgnoreUUIDsOnPlanRead;
172 
173 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
class DtLocalObjectManager:
Definition: localObjectManager.h:151
const std::set< DtUUID > & ignoreUUIDsOnPlanRead() const
Definition: vrfObjectPlanAdministrator.h:98
&quot;0.1&quot;
Definition: vrfObjectPlanAdministrator.h:21
Contains the DtUUID class declaration.
Definition: vrfObjectPlanAdministrator.h:20
bool myExecuting
Definition: vrfObjectPlanAdministrator.h:166
static PlanFileVersion planFileCurrentVersion
The current plan file version.
Definition: vrfObjectPlanAdministrator.h:169
std::map< DtUUID, char * > CachedPlanMap
Definition: vrfObjectPlanAdministrator.h:48
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::set< DtUUID > myIgnoreUUIDsOnPlanRead
Definition: vrfObjectPlanAdministrator.h:171
PlanFileVersion
The known Plan File version &quot;numbers&quot;.
Definition: vrfObjectPlanAdministrator.h:18
File: simMsg.h.
Definition: simMessage.h:35
The DtVrfObjectPlanAdministrator performs plan-related tasks that must be done in a centralized manne...
Definition: vrfObjectPlanAdministrator.h:44
CachedPlanMap myCachedPlans
Plan scripts for non-VRF entities Used during scenario load. If a plan exists, but the intended entit...
Definition: vrfObjectPlanAdministrator.h:164
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
&quot;1.0&quot;
Definition: vrfObjectPlanAdministrator.h:22
DtLocalObjectManager * myObjectManager
Definition: vrfObjectPlanAdministrator.h:157

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)