VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
localEntitySetController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 
13 #pragma once
14 
15 #include "vrfmodel/setController.h"
17 
18 class DtSimMessage;
19 class DtVrfObject;
20 
28 
31 {
32 
33 public:
34 
38  DtVrfObject* owner,
39  DtSimManager* simManager,
40  DtComponentDescriptor* desc = 0,
41  DtReaderWriterRegistry* parentRegistry = 0);
42 
44  virtual ~DtLocalEntitySetController();
45 
47  virtual bool init();
48 
51  virtual const char* type() const;
52 
56  virtual void processSetStateProperties(DtSimMessage * msg);
57 
58  virtual void processSetForce(DtSimMessage * msg);
59  virtual void processSetAppearance(DtSimMessage * msg);
60  virtual void processSetCapabilities(DtSimMessage * msg);
61  virtual void processSetAltitude(DtSimMessage * msg);
62  virtual void processSetResource(DtSimMessage * msg);
63  virtual void processSetSOR(DtSimMessage * msg);
64  virtual void processSetSpeed(DtSimMessage * msg);
65  virtual void processSetCurrentSpeed(DtSimMessage * msg);
66  virtual void processSetEngagementRules(DtSimMessage * msg);
67  virtual void processSetRestore(DtSimMessage * msg);
68  virtual void processSetConcealed(DtSimMessage * msg);
69  virtual void processSetInvisible(DtSimMessage * msg);
70  virtual void processSetAiEnabled(DtSimMessage * msg);
71  virtual void processSetEngagementZones(DtSimMessage* msg);
72  virtual void processSetHideOccupants(DtSimMessage* msg);
73  virtual void processSetSkillLevel(DtSimMessage * msg);
74  virtual void processSetTargetPriorityList(DtSimMessage* msg);
75  virtual void processSetUndetectable(DtSimMessage * msg);
76 
83  virtual void processSetLocation(DtSimMessage * msg);
84 
85  virtual void processSetSuperior(DtSimMessage * msg);
86 
89  virtual void setLocation(DtVector geocentricLocation);
90 
92  virtual void setLocation(DtVector geocentricLocation, bool& dataAvailable);
93 
100  virtual void processSetHeading(DtSimMessage * msg);
101 
103  virtual void setHeading(DtReal heading);
104 
107  virtual void tick();
108 
112  virtual bool tickWhileDestroyed() const { return true; }
113 
121  virtual bool createPSR();
122 
123 public:
129  static void setStatePropertiesCallback(DtSimMessage * msg, void * usr);
130 
131  static void setHeadingCallback(DtSimMessage * msg, void * usrData);
132  static void setForceCallback(DtSimMessage * msg, void * usrData);
133  static void setLocationCallback(DtSimMessage * msg, void * usrData);
134  static void setSuperiorCallback(DtSimMessage * msg, void * usrData);
135  static void setAppearanceCallback(DtSimMessage * msg, void * usrData);
136  static void setCapabilitiesCallback(DtSimMessage * msg, void * usrData);
137  static void setAltitudeCallback(DtSimMessage * msg, void * usrData);
138  static void setResourceCallback(DtSimMessage * msg, void * usrData);
139  static void setSORCallback(DtSimMessage * msg, void * usrData);
140  static void setSpeedCallback(DtSimMessage * msg, void * usrData);
141  static void setCurrentSpeedCallback(DtSimMessage * msg, void * usrData);
142  static void setEngagementRulesCallback(DtSimMessage * msg, void * usrData);
143  static void setRestoreCallback(DtSimMessage * msg, void * usrData);
144  static void setConcealedCallback(DtSimMessage * msg, void * usrData);
145  static void setInvisibleCallback(DtSimMessage * msg, void * usrData);
146  static void setAiEnabledCallback(DtSimMessage * msg, void * usrData);
147  static void setEngagementZonesCallback(DtSimMessage * msg, void * usrData);
148  static void setHideOccupantsCallback(DtSimMessage *msg, void* usrData);
149  static void setSkillLevelCallback(DtSimMessage * msg, void * usrData);
150  static void setTargetPriorityListCallback(DtSimMessage * msg, void * usrData);
151  static void setUndetectableCallback(DtSimMessage * msg, void * usrData);
152 
156  static DtSimComponent * creator(const DtString& name,
157  DtVrfObject* owner,
158  DtSimManager* simManager,
159  DtComponentDescriptor* desc = 0,
160  DtReaderWriterRegistry* parentRegistry = 0);
161 
162 protected:
166 
169 
173 
174 
175 protected:
177  virtual void initializeSetsToRegister();
178 
179 protected:
182 
186 };
187 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtLocalEntitySetControllerPSR * myProcessState
Container for state data associated with this component.
Definition: localEntitySetController.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
class DtLocalEntitySetControllerPSR:
Definition: localEntitySetControllerPSR.h:23
virtual bool init()
Calls setRadio()
const DtSetController & operator=(const DtSetController &orig)
assignment operator; not implemented
virtual const char * type() const =0
This returns a string from compTypes.h, and identifies the type of component.
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
DtVrfObject * myLocalEntity
Cached pointer to parent object.
Definition: localEntitySetController.h:181
File: simMsg.h.
Definition: simMessage.h:35
virtual void tick()
This gives the thread of control to the component.
virtual bool tickWhileDestroyed() const
Tick while destroyed so that sets that do some processing during tick can be resolved while the entit...
Definition: localEntitySetController.h:112
This class will define a basic set controller that will allow for adding sets of that can be register...
Definition: setController.h:21
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:102
void processSetLocation(DtSetDataRequest *set, const DtVertexList &vertices, double position, DtMoveAlongRouteTimeEstimator *est)
These functions handle the standard sets that can affect the time estimates.
void processSetCurrentSpeed(DtSetDataRequest *set, const DtVertexList &vertices, double position, DtMoveAlongRouteTimeEstimator *est)
DtLocalEntitySetController is a controller that handles all DtSetDataRequest messages for an entity a...
Definition: localEntitySetController.h:30

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)