![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2004 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: rotWngMvToCtl.h,v $ $Revision: 1.26 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00014 00015 00016 #ifndef DtRotMoveToControllerComponent_H_ 00017 #define DtRotMoveToControllerComponent_H_ 00018 00019 00020 #include "vrfmodel/rotWingTaskCtl.h" 00021 00022 class DtString; 00023 class DtSimManager; 00024 class DtSimMessage; 00025 00026 00031 #include "vrfmodel/vrfmodelDefines.h" 00032 class DT_DLL_vrfmodel DtRotaryWingMoveToControllerComponent : public DtRotaryWingTaskController 00033 { 00034 public: 00035 00038 DtRotaryWingMoveToControllerComponent(const DtString& name, 00039 DtVrfObject* owner, 00040 DtSimManager* simManager, 00041 DtComponentDescriptor* desc = 0, 00042 DtReaderWriterRegistry* parentRegistry = 0); 00043 00045 virtual ~DtRotaryWingMoveToControllerComponent(); 00046 00049 virtual void tick(); 00050 00053 virtual DtString type() const; 00054 00055 00059 static void moveToCallback(DtSimMessage * msg, void * usr); 00060 static void moveToAltitudeCallback(DtSimMessage * msg, void * usr); 00061 00065 virtual void processMoveToTask(DtSimMessage * msg); 00066 00070 virtual void processMoveToAltitudeTask(DtSimMessage * msg); 00071 00075 static DtSimComponent * creator(const DtString& name, 00076 DtVrfObject* owner, 00077 DtSimManager* simManager, 00078 DtComponentDescriptor* desc = 0, 00079 DtReaderWriterRegistry* parentRegistry = 0); 00080 00081 protected: 00083 virtual void registerTaskMsgCallbacks(); 00084 00087 DtRotaryWingMoveToControllerComponent(); 00088 00090 DtRotaryWingMoveToControllerComponent( 00091 const DtRotaryWingMoveToControllerComponent & orig); 00092 00094 const DtRotaryWingMoveToControllerComponent & operator=(const 00095 DtRotaryWingMoveToControllerComponent & orig); 00096 00100 virtual bool setupControlPoint(); 00101 00107 virtual bool createWorkingControlPoint(const DtVector location); 00108 00110 virtual void stop(); 00111 00118 00119 virtual void pilotProperties(); 00120 00122 virtual void getDesiredPosition(DtVector& desiredPosition); 00123 00124 protected: 00125 00128 DtVrfObject * myControlPoint; 00129 00131 DtVrfObject* myWorkingControlPoint; 00132 }; 00133 00134 #endif