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();
36 
39  const DtString& rwName = DtString::nullString(),
40  DtReaderWriterRegistry* parentRegistry = 0) const;
41 
43  virtual DtString type() const;
44 
46  static DtVrfProcessStateRepository* creator(const DtString& rwName,
47  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry = 0);
48 
49  virtual DtRwSyncMatrixPhaseList& phases();
50  virtual const DtRwSyncMatrixPhaseList& phases() const;
51 
52  virtual DtRwSyncMatrixObjectList& objects();
53  virtual const DtRwSyncMatrixObjectList& objects() const;
54 
55  virtual const DtRwSyncMatrixPlanList& plans() const;
56 
57  virtual DtRwSyncMatrixPhase* addPhase(const DtString& name, int phaseIndex = -1);
58  virtual void renamePhase(const DtString& currentPhaseName, const DtString& requestedPhaseName);
59  virtual void removePhase(const DtString& phaseName);
60  virtual DtRwSyncMatrixPhase* movePhase(const DtString& name, int phaseIndex);
61 
62  virtual DtString currentPhaseName() const;
63 
64  virtual DtRwSyncMatrixPhaseList::iterator* phaseIterator();
65 
66  virtual void postGetSelf();
67 
68  virtual void resetPhaseIterator();
69 
70  virtual void moveToNextPhase();
71 
72  virtual void syncLinkStatusForPhases();
73  virtual void removePlanFromPhase(const DtUUID&, const DtString&);
74  virtual void removePlansByUUID(const DtUUID&);
75  virtual bool planContinuedIntoNextPhase(DtRwSyncMatrixPlan*);
76  virtual DtRwSyncMatrixPlan* addPlan(const DtUUID& uuid,const DtString& phaseName, const DtPlan* plan = NULL);
77  virtual DtRwSyncMatrixPlan* getPlanFromPhase(const DtUUID& uuid,const DtString& phaseName);
78 
79 protected:
85  typedef std::map<DtString, std::map<DtUUID, DtRwSyncMatrixPlan*>> PlansByPhase;
87 };
88 
UUID is a unique ID wrapper class.
Definition: uuid.h:59
class DtRwSyncMatrixPlan:
Definition: rwSyncMatrixPlan.h:23
DtRwString myCurrentPhaseName
Definition: syncMatrixControllerPSR.h:83
DtRwSyncMatrixPhaseList::iterator * myPhaseIterator
Definition: syncMatrixControllerPSR.h:84
std::map< DtString, std::map< DtUUID, DtRwSyncMatrixPlan * > > PlansByPhase
Definition: syncMatrixControllerPSR.h:85
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:81
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:82
PlansByPhase myPlansByPhase
Definition: syncMatrixControllerPSR.h:86
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 procSRTypes.h.
DtRwSyncMatrixPhaseList myPhases
Definition: syncMatrixControllerPSR.h:80
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
This list stores entries of DtRwSyncMatrixPlan.
Definition: rwSyncMatrixPlanList.h:17

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)