VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
humanMoveAlongPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 #pragma once
9 
11 #include "vrfobjcore/simObject.h"
12 #include <readerWriter/rwReal.h>
13 #include <readerWriter/rwInt.h>
14 #include <readerWriter/rwBoolean.h>
15 #include <readerWriter/rwString.h>
16 #include "readerWriter/rwVector.h"
20 #include <vrfutil/rwUUID.h>
22 
28 {
29 public:
30 
33  const DtString& rwName = DtString::nullString(),
34  DtReaderWriterRegistry* parentRegistry = 0);
35 
38  const DtString& rwName = DtString::nullString(),
39  DtReaderWriterRegistry* parentRegistry = 0);
40 
42  virtual ~DtHumanMoveAlongPSR();
43 
46 
49  const DtString& rwName = DtString::nullString(),
50  DtReaderWriterRegistry* parentRegistry = 0) const;
51 
54  virtual DtString type() const;
55 
61  virtual void setWorldDestination(const DtVector& destination);
62  virtual const DtVector& worldDestination() const;
64 
68  virtual void setRoute(const DtUUID&);
69 
71  virtual DtSimObjectReference route() const;
73 
77  virtual void setMoveToPoint(const DtUUID&);
78 
80  virtual DtSimObjectReference moveToPoint() const;
82 
84  virtual const DtLocalVertexList& routeVertices() const;
85 
87  virtual void resetRouteState();
88 
91  virtual void setReversePatrol(bool flag);
92  virtual bool reversePatrol() const;
94 
98  virtual void setCurrentVertex(int vertex);
99  virtual int currentVertex() const;
101 
103  virtual bool currentVertexIsValid() const;
104 
106  virtual void moveToNextVertex();
107 
109  virtual DtVector currentVertexLocation() const;
110 
112  virtual DtVector previousVertexLocation() const;
113 
116  virtual DtVector lastVertexLocation() const;
117 
120  virtual void setSpeedOverride(double speed);
121  virtual double speedOverride() const;
122  virtual void setIsSpeedOverrideSpecified(bool o);
123  virtual bool isSpeedOverrideSpecified() const;
125 
127  virtual void putSelf(std::string& fp, int indentLevel = 0, bool writeUnspecified = false,
128  const DtFilename& path = DtReaderWriter::appPath());
129 
130 public:
131 
133  static DtVrfProcessStateRepository* creator (const DtString& rwName,
134  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
135 
136 protected:
137 
141 
144 
147 
152 
155 
158 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtRwSimObjectReference myMoveToPoint
When the move to subtask is issued, this is the point moving to.
Definition: humanMoveAlongPSR.h:143
DtRwReal mySpeedOverride
The speed override.
Definition: humanMoveAlongPSR.h:157
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
DtRwVector myWorldDestination
World point for move to location tasks.
Definition: humanMoveAlongPSR.h:154
Definition: readerWriterRegistry.h:39
Contains the DtUUID class declaration.
Definition: rwVector.h:23
Specialized reader/writer version of the shared object reference that will encapsulate the actual sha...
Definition: rwSimObjectReference.h:21
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Description: Readable, Writable int.
Definition: rwInt.h:25
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
DtRwBoolean myReverseFlag
From DtGroundPatrolRouteController (gndPtrlRtCtl.h)
Definition: humanMoveAlongPSR.h:151
DtRwInt myCurrentVertex
Read/write variables to capture route state.
Definition: humanMoveAlongPSR.h:146
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file. If write unspecified is true, will write entries that are uns...
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
class DtHumanMoveAlongPSR:
Definition: humanMoveAlongPSR.h:27
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
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
class DtLocalVertexList:
Definition: localVertexList.h:20
DtRwSimObjectReference myRoute
If tasked() is true, this is the name of the route object we&#39;re moving to.
Definition: humanMoveAlongPSR.h:140
File: rwVector.h.
static const DtFilename & appPath()
Gets the current working directory. The first time this accessor is called, it determines the current...
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

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)