![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: turretJoyCtl.h,v $ $Revision: 1.16 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00014 00015 00016 #ifndef DtGroundJoyTurretController_H_ 00017 #define DtGroundJoyTurretController_H_ 00018 00019 #include "vrfmodel/turretCntlr.h" 00020 #include "vrfobjcore/simRadio.h" 00021 00022 class DtString; 00023 class DtSimManager; 00024 class DtJoyDevice; 00025 class DtTurretJoyDeviceControllerDescriptor; 00026 00031 #include "vrfmodel/vrfmodelDefines.h" 00032 class DT_DLL_vrfmodel DtGroundJoyTurretController : public DtTurretSlewController 00033 { 00034 public: 00035 00037 DtGroundJoyTurretController(const DtString& name, DtVrfObject* owner, 00038 DtSimManager* simManager, DtComponentDescriptor* desc, 00039 DtReaderWriterRegistry * parentRegistry = 0); 00040 00042 virtual ~DtGroundJoyTurretController(); 00043 00045 virtual void tick(); 00046 00049 virtual DtString type() const; 00050 00051 virtual void setComponentDescriptor(DtComponentDescriptor *descriptor); 00052 00053 static void setJoyDeviceSwitchCallbacks(DtSimMessage * msg, void * usrData); 00054 00055 virtual void processSetJoyDeviceSwitch(DtSimMessage * msg); 00056 00057 virtual void calcAndSetPortValues(double dT); 00058 00059 virtual bool joystickEnabled() const; 00060 00064 static DtSimComponent * creator(const DtString& name, 00065 DtVrfObject* owner, 00066 DtSimManager* simManager, 00067 DtComponentDescriptor* desc = 0, 00068 DtReaderWriterRegistry* parentRegistry = 0); 00069 00070 virtual void setTurn(DtReal turn); 00071 00072 private: 00073 00075 virtual void initializeJoyDevice(); 00076 00078 virtual void setRadio(DtSimRadio * radio); 00079 00080 00082 DtGroundJoyTurretController(); 00083 00085 DtGroundJoyTurretController& operator=( 00086 const DtGroundJoyTurretController& orig); 00087 00089 DtGroundJoyTurretController(const DtGroundJoyTurretController& orig); 00090 00091 private: 00092 00093 const DtTurretJoyDeviceControllerDescriptor* myTurretJoyDeviceDescriptor; 00094 00095 DtJoyDevice * myJoyDevice; 00096 bool myInitialized; 00097 DtReal myTurning; 00098 00099 bool myJoystickEnabled; 00100 }; 00101 00102 #endif