VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfObjectPlanManager.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 
12 
13 class DtPlan;
14 class DtPlanExecutor;
15 class DtSimBlock;
16 class DtSimCondExpr;
17 class DtSimMessage;
18 class DtSimulationAddress;
19 class DtVrfObjectMessage;
20 class DtIfPlan;
21 class DtTaskMessage;
22 
31 
34 {
35 public:
36 
39 
41  virtual ~DtVrfObjectPlanManager();
42 
44  virtual bool init();
45 
48  virtual void tick();
49 
52  virtual DtPlanExecutor* createPlanExecutor();
53 
58  virtual DtPlan* createAndInitPlan();
59 
61  virtual DtPlan* plan();
62 
64  virtual DtPlan* getOrCreatePlan();
65 
68  virtual void setPlan(DtPlan* plan);
69 
73  virtual bool sendPlan();
74 
77  virtual bool sendPlanStatement(int statementId,
78  const DtSimulationAddress& address) const;
79 
81  virtual void setTaskIssuedFromPlan(bool taskIssuedFromPlan);
82 
95  virtual void taskExecuted(const DtTaskMessage& msg, bool abandonPlan = true);
96 
98  static DtVrfObjectPlanManagerFactory* factory();
100  static void setFactory(DtVrfObjectPlanManagerFactory* factory);
101 
104  virtual void processSetPlan(DtSimMessage* msg);
105  virtual void processSetPlan(DtIfPlan* msgData);
106 
108  virtual void prepareForReinitialization();
109 
114  virtual void processRequestPlan(const DtSimMessage* msg);
115 
118  virtual void processAbandonPlan(DtSimMessage* msg);
119 
122  virtual void processRestartPlan(DtSimMessage* msg);
123 
125  virtual void restartPlan();
126 
129  static void currentStatementChangedCallback(const DtPlan& plan,
130  void* usrData);
133  virtual void processCurrentStatementChanged(const DtPlan& plan);
134 
137  static DtVrfObjectPlanManager* creator(DtVrfObject* vrfObject);
138 
143  static DtVrfObjectPlanManager* createVrfObjectPlanManager(
144  const DtString& type, DtVrfObject* vrfObject);
145 
149  virtual bool hasPlan() const;
150 
152  virtual bool isGlobalPlan() const;
153 
155  virtual bool executingPlan() const;
156 
159  virtual void notifyTaskCompletion(int taskId);
160 
161 protected:
162 
165 
168 
170  DtVrfObjectPlanManager& operator=(const DtVrfObjectPlanManager& orig);
171 
172 protected:
173 
180 
183 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)