#ifndef TD3DXPass_DescH #define TD3DXPass_DescH // ========================================================================== // File: TD3DXPass_Desc.H // Authors: BCB_Code_Generator v2.00, // Darren Dwyer (source code, documentation, demos, website), // Hugh Edwards (documentation, icons) // Description: This file defines the TD3DXPass_Desc Component // // "TDx9_3DXEffect_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_3DXEffect_Library_Defns.H" #include "TDx9_3DXEffect_Library_Functions.H" // -------------------------------------------------------------------------- // external classes used by TD3DXPass_Desc properties. #include "TD3DXSemantic.H" // -------------------------------------------------------------------------- // ========================================================================== // Class: TD3DXPass_Desc // Description: The TD3DXPass_Desc object is used to ... // ========================================================================== #if (__BORLANDC__ >= 0x0530) // BCB Version 3 + class PACKAGE TD3DXPass_Desc : public TComponent { // -------------------------------------------------------------------------- #else // BCB Version 1 class TD3DXPass_Desc : public TComponent { #endif // ========================================================================== __published: // ========================================================================== // ---------------------------------------------------------------------- // Property: Annotations // Description: ... // ---------------------------------------------------------------------- __property uint Annotations = { read=FGetAnnotations, write=FSetAnnotations, default=0 }; // ---------------------------------------------------------------------- // Property: Name // Description: ... // ---------------------------------------------------------------------- __property AnsiString Name = { read=FGetName, write=FSetName, nodefault }; // ---------------------------------------------------------------------- // Property: PSSampers // Description: ... // ---------------------------------------------------------------------- __property AnsiString PSSampers = { read=FGetPSSampers, write=FSetPSSampers, nodefault }; // ---------------------------------------------------------------------- // Property: PSSamplersUsed // Description: ... // ---------------------------------------------------------------------- __property uint PSSamplersUsed = { read=FGetPSSamplersUsed, write=FSetPSSamplersUsed, default=0 }; // ---------------------------------------------------------------------- // Property: PSSemanticUsed // Description: ... // ---------------------------------------------------------------------- __property uint PSSemanticUsed = { read=FGetPSSemanticUsed, write=FSetPSSemanticUsed, default=0 }; // ---------------------------------------------------------------------- // Property: PSSemantics // Description: ... // ---------------------------------------------------------------------- __property TD3DXSemantic* PSSemantics[dword pIndex] = { read=FGetPSSemantics, write=FSetPSSemantics }; // ---------------------------------------------------------------------- // Property: PSVersion // Description: ... // ---------------------------------------------------------------------- __property dword PSVersion = { read=FGetPSVersion, write=FSetPSVersion, default=0 }; // ---------------------------------------------------------------------- // Property: VSSemanticUsed // Description: ... // ---------------------------------------------------------------------- __property uint VSSemanticUsed = { read=FGetVSSemanticUsed, write=FSetVSSemanticUsed, default=0 }; // ---------------------------------------------------------------------- // Property: VSSemantics // Description: ... // ---------------------------------------------------------------------- __property TD3DXSemantic* VSSemantics[dword pIndex] = { read=FGetVSSemantics, write=FSetVSSemantics }; // ---------------------------------------------------------------------- // Property: VSVersion // Description: ... // ---------------------------------------------------------------------- __property dword VSVersion = { read=FGetVSVersion, write=FSetVSVersion, default=0 }; // ---------------------------------------------------------------------- // Event: OnError() // Description: The OnError event is called when an error occurs in the // TD3DXPass_Desc component. // ---------------------------------------------------------------------- __property TDx_Error OnError = {read=FOnError, write=FOnError, nodefault}; // ========================================================================== public: // ========================================================================== // ---------------------------------------------------------------------- // Property: ErrorValue // Description: The ErrorValue property contains the last error value // returned from a call to a TD3DXPass_Desc method or // fget/fset. eg. D3D_OK or DDERR_SURFACELOST or TDX_ERROR // ---------------------------------------------------------------------- __property HRESULT ErrorValue = { read=FGetErrorValue, write=FSetErrorValue, default=D3D_OK }; // ---------------------------------------------------------------------- // Property: Size // Description: The Size property contains the size in bytes of the // internal _D3DXPASS_DESC structure. // ---------------------------------------------------------------------- __property dword Size = { read=FGetSize, write=FSetSize, nodefault }; // ---------------------------------------------------------------------- // Method: Clear() // Description: The Clear() method can be used to clear the contents of // the TD3DXPass_Desc's internal D3DXPASS_DESC 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 TD3DXPass_Desc(TComponent* Owner); virtual __fastcall ~TD3DXPass_Desc(); // ---------------------------------------------------------------------- // Internal Structure Access // ---------------------------------------------------------------------- __property D3DXPASS_DESC* Internal_D3DXPASS_DESC_Ptr = { read=FGetInternal_D3DXPASS_DESC_Ptr, nodefault }; void __fastcall Internal_D3DXPASS_DESC_Update(); // ========================================================================== protected: // ========================================================================== // ---------------------------------------------------------------------- // Property Access Methods // ---------------------------------------------------------------------- uint __fastcall FGetAnnotations(); void __fastcall FSetAnnotations( uint pAnnotations ); HRESULT __fastcall FGetErrorValue(); void __fastcall FSetErrorValue( HRESULT pErrorValue ); AnsiString __fastcall FGetName(); void __fastcall FSetName( AnsiString pName ); AnsiString __fastcall FGetPSSampers(); void __fastcall FSetPSSampers( AnsiString pPSSampers ); uint __fastcall FGetPSSamplersUsed(); void __fastcall FSetPSSamplersUsed( uint pPSSamplersUsed ); uint __fastcall FGetPSSemanticUsed(); void __fastcall FSetPSSemanticUsed( uint pPSSemanticUsed ); TD3DXSemantic* __fastcall FGetPSSemantics( dword pIndex ); void __fastcall FSetPSSemantics( dword pIndex, TD3DXSemantic* pPSSemantics ); dword __fastcall FGetPSVersion(); void __fastcall FSetPSVersion( dword pPSVersion ); dword __fastcall FGetSize(); void __fastcall FSetSize( dword pSize ); uint __fastcall FGetVSSemanticUsed(); void __fastcall FSetVSSemanticUsed( uint pVSSemanticUsed ); TD3DXSemantic* __fastcall FGetVSSemantics( dword pIndex ); void __fastcall FSetVSSemantics( dword pIndex, TD3DXSemantic* pVSSemantics ); dword __fastcall FGetVSVersion(); void __fastcall FSetVSVersion( dword pVSVersion ); // ========================================================================== private: // ========================================================================== // ---------------------------------------------------------------------- // Internal Structure Access // ---------------------------------------------------------------------- D3DXPASS_DESC* __fastcall FGetInternal_D3DXPASS_DESC_Ptr(); void __fastcall FSetInternal_D3DXPASS_DESC( D3DXPASS_DESC* pD3DXPASS_DESC ); // ---------------------------------------------------------------------- // Property Variables // ---------------------------------------------------------------------- HRESULT fErrorValue; AnsiString fName; AnsiString fPSSampers; TD3DXSemantic* fPSSemantics; dword fSize; TD3DXSemantic* fVSSemantics; // ---------------------------------------------------------------------- // Structure Variables // ---------------------------------------------------------------------- D3DXPASS_DESC fD3DXPASS_DESC; // ---------------------------------------------------------------------- // Event Variables // ---------------------------------------------------------------------- TDx_Error FOnError; }; // -------------------------------------------------------------------------- #endif // --------------------------------------------------------------------------