VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
syncMatrixControllerPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
15 #include "vrfobjcore/simObject.h"
16 
21 {
22 public:
25  const DtString& rwName = DtString::nullString(),
26  DtReaderWriterRegistry* parentRegistry = 0);
29  const DtString& rwName = DtString::nullString(),
30  DtReaderWriterRegistry* parentRegistry = 0);
33  const DtSyncMatrixControllerPSR& orig);
35  virtual ~DtSyncMatrixControllerPSR() override;
36 
39  const DtString& rwName = DtString::nullString(), DtReaderWriterRegistry* parentRegistry = 0) const override;
40 
42  virtual DtString type() const override;
43 
45  static DtVrfProcessStateRepository* creator(const DtString& rwName,
46  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry = 0);
47 
48  virtual DtRwSyncMatrixPhaseList& phases();
49  virtual const DtRwSyncMatrixPhaseList& phases() const;
50 
51  virtual DtRwSyncMatrixObjectList& objects();
52  virtual const DtRwSyncMatrixObjectList& objects() const;
53 
54  virtual const DtRwSyncMatrixPlanList& plans() const;
55 
56  virtual DtRwSyncMatrixPhase* addPhase(const DtString& name, int phaseIndex = -1);
57  virtual void renamePhase(const DtString& currentPhaseName, const DtString& requestedPhaseName);
58  virtual void removePhase(const DtString& phaseName);
59  virtual DtRwSyncMatrixPhase* movePhase(const DtString& name, int phaseIndex);
60 
61  virtual DtString currentPhaseName() const;
62 
63  virtual DtRwSyncMatrixPhaseList::iterator* phaseIterator();
64 
65  virtual void postGetSelf() override;
66 
67  virtual void resetPhaseIterator();
68 
69  virtual void moveToNextPhase();
70 
71  virtual void syncLinkStatusForPhases();
72  virtual void removePlanFromPhase(const DtUUID&, const DtString&);
73  virtual void removePlansByUUID(const DtUUID&);
74  virtual bool planContinuedIntoNextPhase(DtRwSyncMatrixPlan*);
75  virtual DtRwSyncMatrixPlan* addPlan(const DtUUID& uuid,const DtString& phaseName, const DtPlan* plan = NULL);
76  virtual DtRwSyncMatrixPlan* getPlanFromPhase(const DtUUID& uuid,const DtString& phaseName);
77 
78 protected:
84  typedef std::map<DtString, std::map<DtUUID, DtRwSyncMatrixPlan*>> PlansByPhase;
86 };
87 
UUID is a unique ID wrapper class.
Definition: uuid.h:59
class DtRwSyncMatrixPlan:
Definition: rwSyncMatrixPlan.h:23
DtRwString myCurrentPhaseName
Definition: syncMatrixControllerPSR.h:82
DtRwSyncMatrixPhaseList::iterator * myPhaseIterator
Definition: syncMatrixControllerPSR.h:83
std::map< DtString, std::map< DtUUID, DtRwSyncMatrixPlan * > > PlansByPhase
Definition: syncMatrixControllerPSR.h:84
virtual void postGetSelf()
Called after either version of getSelf (mtl or environment). Default is no-op.
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwSyncMatrixObjectList myObjects
Definition: syncMatrixControllerPSR.h:80
Definition: readerWriterRegistry.h:39
Description: DtIteratorBase is the base class for iterators used to iterate over a DtList...
Definition: iteratorBase.h:32
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
This list stores entries of DtRwSyncMatrixPlan.
Definition: rwSyncMatrixObjectList.h:17
DtRwSyncMatrixPlanList myPlans
Definition: syncMatrixControllerPSR.h:81
PlansByPhase myPlansByPhase
Definition: syncMatrixControllerPSR.h:85
class DtPlan:
Definition: plan.h:92
class DtRwSyncMatrixPhase:
Definition: rwSyncMatrixPhase.h:23
DtSyncMatrixControllerPSR is a process state repository which holds state variables for the DtSyncMat...
Definition: syncMatrixControllerPSR.h:20
Definition: rwSyncMatrixPhaseList.h:17
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories. Process state repositories represent (potentially) shared, savable information for one or more components functioning together to achieve some process or set of processes; such as aiming and firing a weapon; moving an object; or just waiting a specified amount of time.
Definition: vrfProcessStateRepository.h:45
virtual DtString type() const =0
Returns the string type of the repository, as defined in psrTypes.h.
DtRwSyncMatrixPhaseList myPhases
Definition: syncMatrixControllerPSR.h:79
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)
A locally simulated VRF object.
Definition: localObject.h:98
This list stores entries of DtRwSyncMatrixPlan.
Definition: rwSyncMatrixPlanList.h:17

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)