VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfEmbarkationPSR.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 
13 #include <readerWriter/rwInt.h>
14 #include <readerWriter/rwBoolean.h>
15 #include <readerWriter/rwString.h>
16 #include "readerWriter/rwVector.h"
17 #include "vrfutil/rwTaitBryan.h"
19 #include "vrfutil/rwVectorList.h"
20 #include <vrfutil/rwUUID.h>
21 
26 
30 {
31 public:
33  {
34  DtIdle = 0,
35  DtMoveToEgress = 5,
52  DtSendMoveAlongToEgressTask
55  };
56 
57 public:
58 
60  DtVrfEmbarkationPSR(DtVrfObject* vrfObject,
61  const DtString& rwName = DtString::nullString(),
62  DtReaderWriterRegistry* parentRegistry = 0);
63 
66  const DtString& rwName = DtString::nullString(),
67  DtReaderWriterRegistry* parentRegistry = 0);
68 
70  virtual ~DtVrfEmbarkationPSR();
71 
74 
77  const DtString& rwName = DtString::nullString(),
78  DtReaderWriterRegistry* parentRegistry = 0) const;
79 
82  virtual DtString type() const;
83 
86  virtual void setEmbarkationState(DtEmbarkationControllerState state);
87  virtual DtEmbarkationControllerState embarkationState() const;
89 
92  virtual void setEmbarkationInformation(const DtUUID& parent,
93  bool useEmbarkationOverride = false, const DtVector& embarkationOverridePosition = DtVector::zero(),
94  int embarkInSlot = -1, bool chooseAnyIfSlotTaken = true);
95 
96  virtual void getEmbarkationInformation(DtRwVrfObjectReference& parent, bool& useEmbarkationOverride,
97  DtVector& embarkationOverridePosition, int& embarkInSlot, bool& chooseAnyIfSlotTaken);
98  virtual const DtRwVrfObjectReference& embarkationParent() const;
99  virtual bool embarkationLocationOverride() const;
100  virtual const DtVector& embarkationLocationOverridePosition() const;
101  virtual int embarkInSlot() const;
102  virtual bool chooseAnyAvailableSlotIfTaken() const;
103 
105  virtual void setControlPoint(const DtUUID&);
106 
108  virtual const DtRwVrfObjectReference& controlPoint() const;
109  virtual DtRwVrfObjectReference& controlPoint();
110 
111  virtual void setPath(const std::vector<DtVector>&);
112  virtual const std::vector<DtVector>& path() const;
113 
114  virtual void setEmbarkedAppearance(int);
115  virtual int embarkedAppearance() const;
116 
117  virtual void setEmbarkedAnimation(const DtString&);
118  virtual const DtString& embarkedAnimation() const;
119 
120  virtual void setSlotName(const DtString&);
121  virtual const DtString& slotName() const;
122 
123  virtual void setSlotType(const DtString&);
124  virtual const DtString& slotType() const;
125 
126  virtual void setPublishLoadPoints(bool);
127  virtual bool publishLoadPoints() const;
128 
129  virtual void setOnGroundBeforeDisembark(bool);
130  virtual bool onGroundBeforeDisembark() const;
131 
132  virtual void setEmbarkedOrientation(const DtTaitBryan&);
133  virtual const DtTaitBryan& embarkedOrientation() const;
134 
135  virtual void clearEmbarkationInformation();
136 
137  virtual void setJumpToLocation(bool b);
138  virtual bool jumpToLocation() const;
139 
140  virtual void setTurnToHeading(bool b);
141  virtual bool turnToHeading() const;
142 
143  virtual void setOrientOnIngress(bool b);
144  virtual bool orientOnIngress() const;
145 
146  virtual void setInvisibleWhenEmbarked(bool b);
147  virtual bool invisibleWhenEmbarked() const;
148 
149  virtual void setWasInvisibleBeforeEmbark(bool b);
150  virtual bool wasInvisibleBeforeEmbark() const;
151 
152  virtual void setExitPosition(const DtVector&);
153  virtual const DtVector& exitPosition() const;
154 
155  virtual void setTechnique(const DtString&);
156  virtual const DtString& technique() const;
157 
159  virtual void setCurrentSubordinateTask(const DtSimTaskMessageType&);
160  virtual DtSimTaskMessageType currentSubordinateTask() const;
161 
162  virtual void addTaskedSubordinate(const DtUUID& name);
163  virtual bool removeTaskedSubordinate(const DtUUID& name);
164  virtual const DtRwVrfObjectReferenceList& taskedSubordinates() const;
165  virtual DtRwVrfObjectReferenceList& taskedSubordinates();
166  virtual void clearTaskedSubordinates();
167 
169 
170  virtual void prePutSelf();
171  virtual void postGetSelf();
172 
173  virtual DtString stateString(DtEmbarkationControllerState s);
174 public:
175 
177  static DtVrfProcessStateRepository* creator (const DtString& rwName,
178  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
179 
180 protected:
181 
204  std::vector<DtVector> myPath;
205 
209 };
210 
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
virtual void prePutSelf()
Called before either version of put self (file or environment). Default is no-op. ...
class DtVrfEmbarkationPSR:
Definition: vrfEmbarkationPSR.h:29
DtRwBoolean myEmbarkationLocationOverride
Definition: vrfEmbarkationPSR.h:185
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
Definition: vrfEmbarkationPSR.h:48
DtRwBoolean myTurnToHeading
Definition: vrfEmbarkationPSR.h:198
DtRwBoolean myOnGroundBeforeDisembark
Definition: vrfEmbarkationPSR.h:196
DtRwInt myEmbarkInSlot
Definition: vrfEmbarkationPSR.h:192
DtRwVector myExitPosition
Definition: vrfEmbarkationPSR.h:187
DtRwBoolean myJumpToLocation
Definition: vrfEmbarkationPSR.h:197
Definition: vrfEmbarkationPSR.h:47
DtRwVector myEmbarkationLocationOverridePosition
Definition: vrfEmbarkationPSR.h:186
DtEmbarkationControllerState
Definition: vrfEmbarkationPSR.h:32
virtual void postGetSelf()
Called after either version of getSelf (mtl or environment). Default is no-op.
Definition: vrfEmbarkationPSR.h:42
DtRwString mySlotType
Definition: vrfEmbarkationPSR.h:191
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
Definition: vrfEmbarkationPSR.h:43
File: rwTaitBryan.h.
Definition: rwTaitBryan.h:24
Definition: readerWriterRegistry.h:39
Definition: vrfEmbarkationPSR.h:44
DtRwBoolean myWasInvisibleBeforeEmbark
Definition: vrfEmbarkationPSR.h:200
Definition: vrfEmbarkationPSR.h:40
DtRwOffsetVectorList myRwPath
Definition: vrfEmbarkationPSR.h:203
DtRwTaitBryan myEmbarkedOrientation
Definition: vrfEmbarkationPSR.h:194
DtRwBoolean myOrientOnIngress
Definition: vrfEmbarkationPSR.h:199
Definition: rwVector.h:23
Definition: vrfEmbarkationPSR.h:41
Definition: vrfEmbarkationPSR.h:50
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::vector< DtVector > myPath
Definition: vrfEmbarkationPSR.h:204
Description: Readable, Writable int.
Definition: rwInt.h:25
DtRwInt myEmbarkedAppearance
Definition: vrfEmbarkationPSR.h:188
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
Definition: vrfEmbarkationPSR.h:39
class DtRwOffsetVectorList:
Definition: rwVectorList.h:63
DtRwBoolean myPublishLoadPoints
Definition: vrfEmbarkationPSR.h:195
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
DtRwString myTechnique
Definition: vrfEmbarkationPSR.h:202
DtRwVrfObjectReference myControlPoint
Definition: vrfEmbarkationPSR.h:183
DtRwVrfObjectReference myEmbarkationParent
Definition: vrfEmbarkationPSR.h:184
DtRwString mySlotName
Definition: vrfEmbarkationPSR.h:190
Class used as the reader/writer implementation of the DtVrfObjectReference.
Definition: vrfObjectReference.h:204
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories.
Definition: vrfProcessStateRepository.h:43
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
Definition: vrfEmbarkationPSR.h:49
Definition: vrfEmbarkationPSR.h:51
Definition: vrfEmbarkationPSR.h:38
DtRwString myCurrentSubordinateTask
Definition: vrfEmbarkationPSR.h:208
DtRwString myEmbarkedAnimation
Definition: vrfEmbarkationPSR.h:189
DtRwInt myEmbarkationState
Definition: vrfEmbarkationPSR.h:182
DtRwVrfObjectReferenceList myTaskedSubordinates
Aggregates only.
Definition: vrfEmbarkationPSR.h:207
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
DtRwBoolean myChooseAnyAvailableIfSlotTaken
Definition: vrfEmbarkationPSR.h:193
Definition: vrfEmbarkationPSR.h:36
If you use a list of object names to archive which objects are part of a controller (or any object) u...
Definition: vrfObjectReference.h:305
Definition: vrfEmbarkationPSR.h:37
DtRwBoolean myInvisibleWhenEmbarked
Definition: vrfEmbarkationPSR.h:201
File: rwVector.h.
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)

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)