VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rotaryWingFollowEntityController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 #pragma once
12 
13 
15 #include <vlutil/vlString.h>
16 #include <matrix/vlVector.h>
17 
19 class DtSimMessage;
22 
34 {
35 
36 public:
37 
41  DtLocalObject* owner,
42  DtSimulationServices* simManager,
43  DtComponentDescriptor* desc = 0,
44  DtReaderWriterRegistry* parentRegistry = 0);
45 
48 
51  virtual const char* type() const;
52 
53 
57  static void followEntityCallback(DtSimMessage * msg, void * usrData);
58 
61  virtual void processFollowEntityTask(DtSimMessage * msg);
62 
64  virtual DtUUID entityToFollow() const;
65  virtual void setEntityToFollow(const DtUUID& entity);
66 
69  virtual const DtVector& offsetVector() const;
70  virtual void setOffsetVector(const DtVector& offsets);
71 
75  static DtSimComponent * creator(const DtString& name,
76  DtLocalObject* owner,
77  DtSimulationServices* simManager,
78  DtComponentDescriptor* desc = 0,
79  DtReaderWriterRegistry* parentRegistry = 0);
80 
81 protected:
85 
88  orig);
89 
93 
95  virtual void registerTaskMsgCallbacks();
96 
100  virtual void tick();
101 
104  virtual void stop();
105 
115  virtual void pilotProperties();
116 
118  virtual double findDesiredSpeed(const DtVector& target, bool& matchingTarget);
119 
121  virtual bool passedDestination(const DtVector& target);
122 
124  virtual bool atDestination(const DtVector& target);
125  virtual bool getCurrentLeaderState(
126  DtVector& localPosition, DtVector& localVelocity,
127  DtTaitBryan& topoOrientation, DtVector& topoRotationRate);
128 
129  virtual void calculateDesiredVelocity(double desiredSpeed, const DtVector& nextPoint);
130 
131 protected:
132 
135 
137 
139 
142 };
143 
UUID is a unique ID wrapper class.
Definition: uuid.h:59
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtMovementSimObjectFacade myEntityPointerSimObjectFacade
Definition: rotaryWingFollowEntityController.h:141
This repository holds all information that is common to all the forms of local rotary wing entities w...
Definition: rotaryWingEntityStateRepository.h:27
virtual void registerTaskMsgCallbacks()
Overrides this so it can register its interest in MoveTo commands.
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
Definition: readerWriterRegistry.h:39
DtRotaryWingEntityStateRepository * myRotaryWingEntityState
Definition: rotaryWingFollowEntityController.h:138
virtual void pilotProperties()
Sets the appropriate properties for the wait controller: The position selector is 1...
DtRotaryWingFollowEntityController is a controller component that models following behavior for rotar...
Definition: rotaryWingFollowEntityController.h:33
DtRotaryWingFollorTaskDescriptor; descriptor for the rotary wing follow task components.
Definition: rotaryWingFollowTaskDescriptor.h:17
const DtRotaryWingFollowTaskDescriptor * myFollowDescriptor
Definition: rotaryWingFollowEntityController.h:136
File: simMsg.h.
Definition: simMessage.h:35
virtual const char * type() const
Returns a string identifies the class type of component. Type values are defined in compTypes...
DtSimObjectReference myEntityPointer
Set fresh each frame by setupControlPoint.
Definition: rotaryWingFollowEntityController.h:134
const DtRotaryWingMoveToControllerComponent & operator=(const DtRotaryWingMoveToControllerComponent &orig)
assignment operator; see comments on copy constructor!
DtRotaryWingMoveToControllerComponent is a controller used to model the movement of a helicopter alon...
Definition: rotaryWingMoveToControllerComponent.h:27
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:91
virtual void stop()
Overridden by DtRotaryWindEmbarkationController.
DtDcm myLocalToTopoDcm
Definition: rotaryWingFollowEntityController.h:140
virtual void tick()
Sets the desired position and velocity for use by the parent controller, then calls the parent&#39;s tick...
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 Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)