#ifndef TDIJoyState2H #define TDIJoyState2H // ========================================================================== // File: TDIJoyState2.H // Authors: BCB_Code_Generator v2.00, // Darren Dwyer (source code, documentation, demos, website), // Hugh Edwards (documentation, icons) // Description: This file defines the TDIJoyState2 Component // // "TDx9_Input_Library v1.00" // (c) 2005 BCB-Tools.com Pty. Ltd., Sydney, Australia. // All Rights Reserved. // // Refer to the 'Licence.Txt' file for licencing & copyright information. // ========================================================================== // -------------------------------------------------------------------------- #include "TDx_Library_Defns.H" #include "TDx_Library_Functions.H" // -------------------------------------------------------------------------- #include "TDx9_Input_Library_Defns.H" #include "TDx9_Input_Library_Functions.H" // -------------------------------------------------------------------------- // ========================================================================== // Class: TDIJoyState2 // Description: The TDIJoyState2 object is used to ... // ========================================================================== #if (__BORLANDC__ >= 0x0530) // BCB Version 3 + class PACKAGE TDIJoyState2 : public TComponent { // -------------------------------------------------------------------------- #else // BCB Version 1 class TDIJoyState2 : public TComponent { #endif // ========================================================================== __published: // ========================================================================== // ---------------------------------------------------------------------- // Property: ARx // Description: ... // ---------------------------------------------------------------------- __property long ARx = { read=FGetARx, write=FSetARx, default=0 }; // ---------------------------------------------------------------------- // Property: ARy // Description: ... // ---------------------------------------------------------------------- __property long ARy = { read=FGetARy, write=FSetARy, default=0 }; // ---------------------------------------------------------------------- // Property: ARz // Description: ... // ---------------------------------------------------------------------- __property long ARz = { read=FGetARz, write=FSetARz, default=0 }; // ---------------------------------------------------------------------- // Property: ASlider // Description: ... // ---------------------------------------------------------------------- __property long ASlider[dword pIndex] = { read=FGetASlider, write=FSetASlider }; // ---------------------------------------------------------------------- // Property: AX // Description: ... // ---------------------------------------------------------------------- __property long AX = { read=FGetAX, write=FSetAX, default=0 }; // ---------------------------------------------------------------------- // Property: AY // Description: ... // ---------------------------------------------------------------------- __property long AY = { read=FGetAY, write=FSetAY, default=0 }; // ---------------------------------------------------------------------- // Property: AZ // Description: ... // ---------------------------------------------------------------------- __property long AZ = { read=FGetAZ, write=FSetAZ, default=0 }; // ---------------------------------------------------------------------- // Property: FRx // Description: ... // ---------------------------------------------------------------------- __property long FRx = { read=FGetFRx, write=FSetFRx, default=0 }; // ---------------------------------------------------------------------- // Property: FRy // Description: ... // ---------------------------------------------------------------------- __property long FRy = { read=FGetFRy, write=FSetFRy, default=0 }; // ---------------------------------------------------------------------- // Property: FRz // Description: ... // ---------------------------------------------------------------------- __property long FRz = { read=FGetFRz, write=FSetFRz, default=0 }; // ---------------------------------------------------------------------- // Property: FSlider // Description: ... // ---------------------------------------------------------------------- __property long FSlider[dword pIndex] = { read=FGetFSlider, write=FSetFSlider }; // ---------------------------------------------------------------------- // Property: FX // Description: ... // ---------------------------------------------------------------------- __property long FX = { read=FGetFX, write=FSetFX, default=0 }; // ---------------------------------------------------------------------- // Property: FY // Description: ... // ---------------------------------------------------------------------- __property long FY = { read=FGetFY, write=FSetFY, default=0 }; // ---------------------------------------------------------------------- // Property: FZ // Description: ... // ---------------------------------------------------------------------- __property long FZ = { read=FGetFZ, write=FSetFZ, default=0 }; // ---------------------------------------------------------------------- // Property: POV // Description: ... // ---------------------------------------------------------------------- __property dword POV[dword pIndex] = { read=FGetPOV, write=FSetPOV }; // ---------------------------------------------------------------------- // Property: Rx // Description: ... // ---------------------------------------------------------------------- __property long Rx = { read=FGetRx, write=FSetRx, default=0 }; // ---------------------------------------------------------------------- // Property: Ry // Description: ... // ---------------------------------------------------------------------- __property long Ry = { read=FGetRy, write=FSetRy, default=0 }; // ---------------------------------------------------------------------- // Property: Rz // Description: ... // ---------------------------------------------------------------------- __property long Rz = { read=FGetRz, write=FSetRz, default=0 }; // ---------------------------------------------------------------------- // Property: Slider // Description: ... // ---------------------------------------------------------------------- __property long Slider[dword pIndex] = { read=FGetSlider, write=FSetSlider }; // ---------------------------------------------------------------------- // Property: VRx // Description: ... // ---------------------------------------------------------------------- __property long VRx = { read=FGetVRx, write=FSetVRx, default=0 }; // ---------------------------------------------------------------------- // Property: VRy // Description: ... // ---------------------------------------------------------------------- __property long VRy = { read=FGetVRy, write=FSetVRy, default=0 }; // ---------------------------------------------------------------------- // Property: VRz // Description: ... // ---------------------------------------------------------------------- __property long VRz = { read=FGetVRz, write=FSetVRz, default=0 }; // ---------------------------------------------------------------------- // Property: VSlider // Description: ... // ---------------------------------------------------------------------- __property long VSlider[dword pIndex] = { read=FGetVSlider, write=FSetVSlider }; // ---------------------------------------------------------------------- // Property: VX // Description: ... // ---------------------------------------------------------------------- __property long VX = { read=FGetVX, write=FSetVX, default=0 }; // ---------------------------------------------------------------------- // Property: VY // Description: ... // ---------------------------------------------------------------------- __property long VY = { read=FGetVY, write=FSetVY, default=0 }; // ---------------------------------------------------------------------- // Property: VZ // Description: ... // ---------------------------------------------------------------------- __property long VZ = { read=FGetVZ, write=FSetVZ, default=0 }; // ---------------------------------------------------------------------- // Property: X // Description: ... // ---------------------------------------------------------------------- __property long X = { read=FGetX, write=FSetX, default=0 }; // ---------------------------------------------------------------------- // Property: Y // Description: ... // ---------------------------------------------------------------------- __property long Y = { read=FGetY, write=FSetY, default=0 }; // ---------------------------------------------------------------------- // Property: Z // Description: ... // ---------------------------------------------------------------------- __property long Z = { read=FGetZ, write=FSetZ, default=0 }; // ---------------------------------------------------------------------- // Event: OnError() // Description: The OnError event is called when an error occurs in the // TDIJoyState2 component. // ---------------------------------------------------------------------- __property TDx_Error OnError = {read=FOnError, write=FOnError, nodefault}; // ========================================================================== public: // ========================================================================== // ---------------------------------------------------------------------- // Property: Buttons // Description: ... // ---------------------------------------------------------------------- __property byte Buttons[dword pIndex] = { read=FGetButtons, write=FSetButtons }; // ---------------------------------------------------------------------- // Property: ErrorValue // Description: The ErrorValue property contains the last error value // returned from a call to a TDIJoyState2 method or // fget/fset. eg. DI_OK or DDERR_SURFACELOST or TDX_ERROR // ---------------------------------------------------------------------- __property HRESULT ErrorValue = { read=FGetErrorValue, write=FSetErrorValue, default=DI_OK }; // ---------------------------------------------------------------------- // Property: Size // Description: The Size property contains the size in bytes of the // internal { structure. // ---------------------------------------------------------------------- __property dword Size = { read=FGetSize, write=FSetSize, nodefault }; // ---------------------------------------------------------------------- // Method: Clear() // Description: The Clear() method can be used to clear the contents of // the TDIJoyState2's internal JOYSTATE2 structure. // Note: if you have manually linked a structure member to a // chunk of memory, make sure you release this memory before // calling Clear(). // ---------------------------------------------------------------------- virtual void __fastcall Clear(); // ---------------------------------------------------------------------- // Constructor() and Destructor() // ---------------------------------------------------------------------- __fastcall TDIJoyState2(TComponent* Owner); virtual __fastcall ~TDIJoyState2(); // ---------------------------------------------------------------------- // Internal Structure Access // ---------------------------------------------------------------------- __property JOYSTATE2* Internal_JOYSTATE2_Ptr = { read=FGetInternal_JOYSTATE2_Ptr, nodefault }; void __fastcall Internal_JOYSTATE2_Update(); // ========================================================================== protected: // ========================================================================== // ---------------------------------------------------------------------- // Property Access Methods // ---------------------------------------------------------------------- long __fastcall FGetARx(); void __fastcall FSetARx( long pARx ); long __fastcall FGetARy(); void __fastcall FSetARy( long pARy ); long __fastcall FGetARz(); void __fastcall FSetARz( long pARz ); long __fastcall FGetASlider( dword pIndex ); void __fastcall FSetASlider( dword pIndex, long pASlider ); long __fastcall FGetAX(); void __fastcall FSetAX( long pAX ); long __fastcall FGetAY(); void __fastcall FSetAY( long pAY ); long __fastcall FGetAZ(); void __fastcall FSetAZ( long pAZ ); byte __fastcall FGetButtons( dword pIndex ); void __fastcall FSetButtons( dword pIndex, byte pButtons ); HRESULT __fastcall FGetErrorValue(); void __fastcall FSetErrorValue( HRESULT pErrorValue ); long __fastcall FGetFRx(); void __fastcall FSetFRx( long pFRx ); long __fastcall FGetFRy(); void __fastcall FSetFRy( long pFRy ); long __fastcall FGetFRz(); void __fastcall FSetFRz( long pFRz ); long __fastcall FGetFSlider( dword pIndex ); void __fastcall FSetFSlider( dword pIndex, long pFSlider ); long __fastcall FGetFX(); void __fastcall FSetFX( long pFX ); long __fastcall FGetFY(); void __fastcall FSetFY( long pFY ); long __fastcall FGetFZ(); void __fastcall FSetFZ( long pFZ ); dword __fastcall FGetPOV( dword pIndex ); void __fastcall FSetPOV( dword pIndex, dword pPOV ); long __fastcall FGetRx(); void __fastcall FSetRx( long pRx ); long __fastcall FGetRy(); void __fastcall FSetRy( long pRy ); long __fastcall FGetRz(); void __fastcall FSetRz( long pRz ); dword __fastcall FGetSize(); void __fastcall FSetSize( dword pSize ); long __fastcall FGetSlider( dword pIndex ); void __fastcall FSetSlider( dword pIndex, long pSlider ); long __fastcall FGetVRx(); void __fastcall FSetVRx( long pVRx ); long __fastcall FGetVRy(); void __fastcall FSetVRy( long pVRy ); long __fastcall FGetVRz(); void __fastcall FSetVRz( long pVRz ); long __fastcall FGetVSlider( dword pIndex ); void __fastcall FSetVSlider( dword pIndex, long pVSlider ); long __fastcall FGetVX(); void __fastcall FSetVX( long pVX ); long __fastcall FGetVY(); void __fastcall FSetVY( long pVY ); long __fastcall FGetVZ(); void __fastcall FSetVZ( long pVZ ); long __fastcall FGetX(); void __fastcall FSetX( long pX ); long __fastcall FGetY(); void __fastcall FSetY( long pY ); long __fastcall FGetZ(); void __fastcall FSetZ( long pZ ); // ========================================================================== private: // ========================================================================== // ---------------------------------------------------------------------- // Internal Structure Access // ---------------------------------------------------------------------- JOYSTATE2* __fastcall FGetInternal_JOYSTATE2_Ptr(); void __fastcall FSetInternal_JOYSTATE2( JOYSTATE2* pJOYSTATE2 ); // ---------------------------------------------------------------------- // Property Variables // ---------------------------------------------------------------------- HRESULT fErrorValue; dword fSize; // ---------------------------------------------------------------------- // Structure Variables // ---------------------------------------------------------------------- JOYSTATE2 fJOYSTATE2; // ---------------------------------------------------------------------- // Event Variables // ---------------------------------------------------------------------- TDx_Error FOnError; }; // -------------------------------------------------------------------------- #endif // --------------------------------------------------------------------------