VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
embeddedEntitiesPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
14 #include "vrfobjcore/simObject.h"
15 
17 #include <vrfutil/rwUUID.h>
18 
19 #include <readerWriter/rwInt.h>
20 #include <readerWriter/rwReal.h>
22 
25 {
26 
27 public:
30  {
38  DtUnable //Error state(unable to perform task as requested)
39  };
40 
41 public:
42 
44  DtRwEmbeddedEntityTaskState(const DtString& rwName, DtReaderWriterRegistry* parentRegistry = 0);
50  virtual ~DtRwEmbeddedEntityTaskState();
51 
53  virtual void increaseTimeWaited(double delta);
55  virtual void resetToIdle();
56 
59  virtual void setTaskState(const DtEmbeddedEntityControlState& stateEnum);
60  virtual DtEmbeddedEntityControlState taskState() const;
62 
65  virtual void setTaskId(const int& tskId);
66  virtual int taskId() const;
68 
72  virtual void setSubtaskId(const int& subtskId);
73  virtual int subtaskId() const;
75 
78  virtual void setTimeWaiting(const double& time);
79  virtual double timeWaiting() const;
81 
84  virtual void setEntityName(const DtString& entName);
85  virtual const DtString& entityName() const;
87 
88 private:
91 
92 protected:
98 };
99 
104 
105 public:
108  const DtString& rwName = DtString::nullString(),
109  DtReaderWriterRegistry* parentRegistry = 0);
110 
113  const DtString& rwName = DtString::nullString(),
114  DtReaderWriterRegistry* parentRegistry = 0);
115 
117  virtual ~DtEmbeddedEntitiesPSR();
118 
121 
124  const DtString& rwName = DtString::nullString(),
125  DtReaderWriterRegistry* parentRegistry = 0) const;
126 
129  virtual DtString type() const;
130 
133  virtual const DtRwTemplatedListPtr<DtRwEmbeddedEntityStatus, true>& entityStatusList() const;
134  virtual DtRwTemplatedListPtr<DtRwEmbeddedEntityStatus, true>& entityStatusList();
136 
139  virtual const DtRwTemplatedListPtr<DtRwEmbeddedEntityTaskState, true>& entityTaskStateList() const;
140  virtual DtRwTemplatedListPtr<DtRwEmbeddedEntityTaskState, true>& entityTaskStateList();
142 
145  virtual bool entityDeployed(const DtString& entityName);
146  virtual bool entityTasking(const DtString& entityName);
148 
151  virtual DtRwEmbeddedEntityStatus* const findEntityStatusByName(const DtString& entityName);
152  virtual DtRwEmbeddedEntityStatus* const findEntityStatusByUUID(const DtUUID& uuid);
153 
155  virtual void const addNewEntityStatus(
156  const DtString& entityName, const DtString& rwElemName = "embedded-entity");
158 
161  virtual DtRwEmbeddedEntityTaskState* const findEntityTaskStateByName(const DtString& name);
162  virtual DtRwEmbeddedEntityTaskState* const findEntityTaskStateByTaskId(const int& tskId);
163 
165  virtual void const addNewEntityTaskState(
166  const DtString& entityName, const DtString rwElemName = "ee-task-state");
168 
169 public:
171  static DtVrfProcessStateRepository* creator (const DtString& rwName,
172  DtLocalObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
173 protected:
174  //DtRwString myRecoveryWaypointName;
175 
178 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtEmbeddedEntityControlState
State enumeration used by DtEmbeddedEntitiesController and stored here for controller state transitio...
Definition: embeddedEntitiesPSR.h:29
Definition: embeddedEntitiesPSR.h:37
DtRwInt mySubtaskId
Definition: embeddedEntitiesPSR.h:95
DtRwString myEntityName
Definition: embeddedEntitiesPSR.h:97
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwTemplatedListPtr< DtRwEmbeddedEntityStatus, true > myEntityStatusList
Definition: embeddedEntitiesPSR.h:176
Definition: readerWriterRegistry.h:39
Contains the DtUUID class declaration.
Definition: embeddedEntitiesPSR.h:31
Holds data and provides accessors pertinent to the task state of a single Embedded Entity...
Definition: embeddedEntitiesPSR.h:24
Definition: embeddedEntitiesPSR.h:34
#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
contains the DtRwEmbeddedEntity and DtRwEmbeddedEntityStatus classes
DtRwInt myTaskState
Definition: embeddedEntitiesPSR.h:93
Description: Readable, Writable DtReal (double)
Definition: rwReal.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
Definition: embeddedEntitiesPSR.h:33
DtRwTemplatedListPtr< DtRwEmbeddedEntityTaskState, true > myEntityTaskStateList
Definition: embeddedEntitiesPSR.h:177
DtRwReal myTimeWaiting
Definition: embeddedEntitiesPSR.h:96
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
PSR for use by DtEmbeddedEntitiesController Primarily concerned with managing lists of DtRwEmbeddedEn...
Definition: embeddedEntitiesPSR.h:103
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
Definition: embeddedEntitiesPSR.h:35
Contains data concerning one Embedded Entity&#39;s deployment state. For use by DtEmbeddedEntitiesControl...
Definition: rwEmbeddedEntity.h:113
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
DtRwInt myTaskId
Definition: embeddedEntitiesPSR.h:94

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)