![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: rotWngFolwCtl.h,v $ $Revision: 1.23 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00014 00015 00016 #ifndef DtRotFollowEntityController_H_ 00017 #define DtRotFollowEntityController_H_ 00018 00019 00020 #include "vrfmodel/rotWngMvToCtl.h" 00021 #include <vlutil/vlString.h> 00022 #include <matrix/vlVector.h> 00023 00024 class DtSimManager; 00025 class DtSimMessage; 00026 00036 #include "vrfmodel/vrfmodelDefines.h" 00037 class DT_DLL_vrfmodel DtRotaryWingFollowEntityController : public DtRotaryWingMoveToControllerComponent 00038 { 00039 00040 public: 00041 00044 DtRotaryWingFollowEntityController(const DtString& name, 00045 DtVrfObject* owner, 00046 DtSimManager* simManager, 00047 DtComponentDescriptor* desc = 0, 00048 DtReaderWriterRegistry* parentRegistry = 0); 00049 00051 virtual ~DtRotaryWingFollowEntityController(); 00052 00055 virtual DtString type() const; 00056 00057 00061 static void followEntityCallback(DtSimMessage * msg, void * usrData); 00062 00065 virtual void processFollowEntityTask(DtSimMessage * msg); 00066 00068 virtual const DtString& entityToFollow() const; 00069 virtual void setEntityToFollow(const DtString& entity); 00070 00073 virtual const DtVector& offsetVector() const; 00074 virtual void setOffsetVector(const DtVector& offsets); 00075 00079 static DtSimComponent * creator(const DtString& name, 00080 DtVrfObject* owner, 00081 DtSimManager* simManager, 00082 DtComponentDescriptor* desc = 0, 00083 DtReaderWriterRegistry* parentRegistry = 0); 00084 00085 protected: 00088 DtRotaryWingFollowEntityController(); 00089 00091 DtRotaryWingFollowEntityController(const DtRotaryWingFollowEntityController & 00092 orig); 00093 00095 const DtRotaryWingFollowEntityController & operator=(const 00096 DtRotaryWingFollowEntityController & orig); 00097 00099 virtual void registerTaskMsgCallbacks(); 00100 00104 virtual void tick(); 00105 00108 virtual void stop(); 00109 00119 virtual void pilotProperties(); 00120 00121 00122 protected: 00123 00125 DtVrfObject * myEntityPointer; 00126 00127 }; 00128 00129 #endif