#ifndef TDx9_3DXEffectCompilerH #define TDx9_3DXEffectCompilerH // ========================================================================== // File: TDx9_3DXEffectCompiler.H // Authors: BCB_Code_Generator v2.00, // Darren Dwyer (source code, documentation, demos, website), // Hugh Edwards (documentation, icons) // Description: This file defines the TDx9_3DXEffectCompiler 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 TDx9_3DXEffectCompiler methods. class TD3DXMatrix; class TDx9_3DPixelShader; class TDx9_3DBaseTexture; class TDx9_3DVertexShader; // -------------------------------------------------------------------------- // ========================================================================== // Class: TDx9_3DXEffectCompiler // Description: The TDx9_3DXEffectCompiler object is used to ... // ========================================================================== #if (__BORLANDC__ >= 0x0530) // BCB Version 3 + class PACKAGE TDx9_3DXEffectCompiler : public TDx9_3DXBaseEffect { // -------------------------------------------------------------------------- #else // BCB Version 1 class TDx9_3DXEffectCompiler : public TDx9_3DXBaseEffect { #endif // ========================================================================== __published: // ========================================================================== // ---------------------------------------------------------------------- // Event: OnCreate() // Description: The OnCreate() event is triggered by the // TDx9_3DXEffectCompiler::Create() method after it has // successfully created the internal LPID3DXEFFECTCOMPILER // used within the TDx9_3DXEffectCompiler component. // // Note that since this event is only called upon successful // creation, this event is an ideal place for code that is // to be activated only once, immediately upon the // successful creation of the LPID3DXEFFECTCOMPILER // interface. // // For example, you could retrieve the // TDx9_3DXEffectCompiler component's capabilities, Create() // dependant components, allocate memory, etc. // // When used in conjunction with the // TDx9_3DXEffectCompiler::OnDestroy() event, you can fully // automate and insulate your code on a per-component basis. // ---------------------------------------------------------------------- __property TDx_Event OnCreate = {read=FOnCreate, write=FOnCreate, nodefault}; // ---------------------------------------------------------------------- // Event: OnDestroy() // Description: The OnDestroy() event is triggered by the // TDx9_3DXEffectCompiler::Destroy() method, just before the // TDx9_3DXEffectCompiler internal LPID3DXEFFECTCOMPILER // interface is destroyed. // // Note: This event is an ideal place to place code that // reverses the results of the // TDx9_3DXEffectCompiler::OnCreate() event. For example, // assume you have already setup the // TDx9_3DXEffectCompiler::OnCreate() event to retrieve the // component's capabilities, Create() a dependant component // and allocate some memory; // You can then fully automate and insulate your code on a // per-component basis by placing code in the // TDx9_3DXEffectCompiler::OnDestroy() event to deallocate // memory, Destroy() the dependant components and, when // required, destroy the capabilities component. // ---------------------------------------------------------------------- __property TDx_Event OnDestroy = {read=FOnDestroy, write=FOnDestroy, nodefault}; // ---------------------------------------------------------------------- // Event: OnError() // Description: The OnError event is called when an error occurs in the // TDx9_3DXEffectCompiler component. // ---------------------------------------------------------------------- __property TDx_Error OnError = {read=FOnError, write=FOnError, nodefault}; // ========================================================================== public: // ========================================================================== // ---------------------------------------------------------------------- // Property: Created // Description: The Created property is true if the internal // LPID3DXEFFECTCOMPILER used in this component has been // successfully created, otherwise Created is false. // // To create the internal LPID3DXEFFECTCOMPILER, call the // TDx9_3DXEffectCompiler::Create() method. // ---------------------------------------------------------------------- __property bool Created = { read=FGetCreated, write=FSetCreated, default=false }; // ---------------------------------------------------------------------- // Property: ErrorValue // Description: The ErrorValue property contains the last error value // returned from a call to a TDx9_3DXEffectCompiler method // or fget/fset. eg. D3D_OK or DDERR_SURFACELOST or // TDX_ERROR // ---------------------------------------------------------------------- __property HRESULT ErrorValue = { read=FGetErrorValue, write=FSetErrorValue, default=D3D_OK }; // ---------------------------------------------------------------------- // Method: CompileEffect() // Description: The CompileEffect method is used to ... // Params: pFlags - // The Flags parameter ... // pEffect - // The Effect parameter ... // pErrorMsgs - // The ErrorMsgs parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall CompileEffect( dword pFlags, LPD3DXBUFFER* pEffect, LPD3DXBUFFER* pErrorMsgs ); // ---------------------------------------------------------------------- // Method: CompileShader() // Description: The CompileShader method is used to ... // Params: pFunction - // The Function parameter ... // pTarget - // The Target parameter ... // pFlags - // The Flags parameter ... // pShader - // The Shader parameter ... // pErrorMsgs - // The ErrorMsgs parameter ... // pConstantTable - // The ConstantTable parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall CompileShader( AnsiString* pFunction, dword pTarget, dword pFlags, LPD3DXBUFFER* pShader, LPD3DXBUFFER* pErrorMsgs, LPD3DXSHADER_CONSTANTTABLE* pConstantTable ); // ---------------------------------------------------------------------- // Method: Create() // Description: The Create() method is used to automatically create the // internal LPID3DXEFFECTCOMPILER interface used in the // TDx9_3DXEffectCompiler component and must be called // before any methods of the TDx9_3DXEffectCompiler // component will function. // ---------------------------------------------------------------------- virtual bool __fastcall Create(); // ---------------------------------------------------------------------- // Method: Destroy() // Description: The Destroy() method is used to automatically destroy the // internal LPID3DXEFFECTCOMPILER interface used in the // TDx9_3DXEffectCompiler component and should be called // when the internal interface is no longer required. // // Note: This method is called by the component's // destructor. // ---------------------------------------------------------------------- virtual bool __fastcall Destroy(); // ---------------------------------------------------------------------- // Method: GetAnnotation() // Description: The GetAnnotation method is used to ... // Params: pObject - // The Object parameter ... // pIndex - // The Index parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetAnnotation( AnsiString* pObject, uint pIndex ); // ---------------------------------------------------------------------- // Method: GetAnnotationByName() // Description: The GetAnnotationByName method is used to ... // Params: pObject - // The Object parameter ... // pName - // The Name parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetAnnotationByName( AnsiString* pObject, AnsiString* pName ); // ---------------------------------------------------------------------- // Method: GetBool() // Description: The GetBool method is used to ... // Params: pParameter - // The Parameter parameter ... // ppb - // The pb parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetBool( AnsiString* pParameter, bool* ppb ); // ---------------------------------------------------------------------- // Method: GetBoolArray() // Description: The GetBoolArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppB - // The pB parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetBoolArray( AnsiString* pParameter, bool* ppB, uint pCount ); // ---------------------------------------------------------------------- // Method: GetDesc() // Description: The GetDesc method is used to ... // Params: pDesc - // The Desc parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetDesc( D3DXEFFECT_DESC* pDesc ); // ---------------------------------------------------------------------- // Method: GetFloat() // Description: The GetFloat method is used to ... // Params: pParameter - // The Parameter parameter ... // ppf - // The pf parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetFloat( AnsiString* pParameter, float* ppf ); // ---------------------------------------------------------------------- // Method: GetFloatArray() // Description: The GetFloatArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppf - // The pf parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetFloatArray( AnsiString* pParameter, float* ppf, uint pCount ); // ---------------------------------------------------------------------- // Method: GetFunction() // Description: The GetFunction method is used to ... // Params: pIndex - // The Index parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetFunction( uint pIndex ); // ---------------------------------------------------------------------- // Method: GetFunctionByName() // Description: The GetFunctionByName method is used to ... // Params: pName - // The Name parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetFunctionByName( AnsiString* pName ); // ---------------------------------------------------------------------- // Method: GetFunctionDesc() // Description: The GetFunctionDesc method is used to ... // Params: pFunction - // The Function parameter ... // pDesc - // The Desc parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetFunctionDesc( AnsiString* pFunction, D3DXFUNCTION_DESC* pDesc ); // ---------------------------------------------------------------------- // Method: GetInt() // Description: The GetInt method is used to ... // Params: pParameter - // The Parameter parameter ... // ppn - // The pn parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetInt( AnsiString* pParameter, int* ppn ); // ---------------------------------------------------------------------- // Method: GetIntArray() // Description: The GetIntArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppn - // The pn parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetIntArray( AnsiString* pParameter, int* ppn, uint pCount ); // ---------------------------------------------------------------------- // Method: GetLiteral() // Description: The GetLiteral method is used to ... // Params: pParameter - // The Parameter parameter ... // pLiteral - // The Literal parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetLiteral( AnsiString* pParameter, bool* pLiteral ); // ---------------------------------------------------------------------- // Method: GetMatrix() // Description: The GetMatrix method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetMatrix( AnsiString* pParameter, D3DXMATRIX* pMatrix ); // ---------------------------------------------------------------------- // Method: GetMatrixArray() // Description: The GetMatrixArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetMatrixArray( AnsiString* pParameter, D3DXMATRIX* pMatrix, uint pCount ); // ---------------------------------------------------------------------- // Method: GetMatrixPointerArray() // Description: The GetMatrixPointerArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: GetMatrixTranspose() // Description: The GetMatrixTranspose method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetMatrixTranspose( AnsiString* pParameter, TD3DXMatrix* pMatrix ); // ---------------------------------------------------------------------- // Method: GetMatrixTransposeArray() // Description: The GetMatrixTransposeArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetMatrixTransposeArray( AnsiString* pParameter, D3DXMATRIX* pMatrix, uint pCount ); // ---------------------------------------------------------------------- // Method: GetMatrixTransposePointerArray() // Description: The GetMatrixTransposePointerArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: GetParameter() // Description: The GetParameter method is used to ... // Params: pParent - // The Parent parameter ... // pIndex - // The Index parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetParameter( AnsiString* pParent, uint pIndex ); // ---------------------------------------------------------------------- // Method: GetParameterByName() // Description: The GetParameterByName method is used to ... // Params: pParent - // The Parent parameter ... // pName - // The Name parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetParameterByName( AnsiString* pParent, AnsiString* pName ); // ---------------------------------------------------------------------- // Method: GetParameterBySemantic() // Description: The GetParameterBySemantic method is used to ... // Params: pParent - // The Parent parameter ... // pSemantic - // The Semantic parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetParameterBySemantic( AnsiString* pParent, AnsiString* pSemantic ); // ---------------------------------------------------------------------- // Method: GetParameterDesc() // Description: The GetParameterDesc method is used to ... // Params: pParameter - // The Parameter parameter ... // pDesc - // The Desc parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetParameterDesc( AnsiString* pParameter, D3DXPARAMETER_DESC* pDesc ); // ---------------------------------------------------------------------- // Method: GetParameterElement() // Description: The GetParameterElement method is used to ... // Params: pParent - // The Parent parameter ... // pElementIndex - // The ElementIndex parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetParameterElement( AnsiString* pParent, uint pElementIndex ); // ---------------------------------------------------------------------- // Method: GetPass() // Description: The GetPass method is used to ... // Params: pTechnique - // The Technique parameter ... // pIndex - // The Index parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetPass( AnsiString* pTechnique, uint pIndex ); // ---------------------------------------------------------------------- // Method: GetPassByName() // Description: The GetPassByName method is used to ... // Params: pTechnique - // The Technique parameter ... // pName - // The Name parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetPassByName( AnsiString* pTechnique, AnsiString* pName ); // ---------------------------------------------------------------------- // Method: GetPassDesc() // Description: The GetPassDesc method is used to ... // Params: pPass - // The Pass parameter ... // pDesc - // The Desc parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetPassDesc( AnsiString* pPass, D3DXPASS_DESC* pDesc ); // ---------------------------------------------------------------------- // Method: GetPixelShader() // Description: The GetPixelShader method is used to ... // Params: pParameter - // The Parameter parameter ... // pPShader - // The PShader parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetPixelShader( AnsiString* pParameter, TDx9_3DPixelShader* pPShader ); // ---------------------------------------------------------------------- // Method: GetString() // Description: The GetString method is used to ... // Params: pParameter - // The Parameter parameter ... // pString - // The String parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetString( AnsiString* pParameter, AnsiString** pString ); // ---------------------------------------------------------------------- // Method: GetTechnique() // Description: The GetTechnique method is used to ... // Params: pIndex - // The Index parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetTechnique( uint pIndex ); // ---------------------------------------------------------------------- // Method: GetTechniqueByName() // Description: The GetTechniqueByName method is used to ... // Params: pName - // The Name parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetTechniqueByName( AnsiString* pName ); // ---------------------------------------------------------------------- // Method: GetTechniqueDesc() // Description: The GetTechniqueDesc method is used to ... // Params: pTechnique - // The Technique parameter ... // pDesc - // The Desc parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetTechniqueDesc( AnsiString* pTechnique, D3DXTECHNIQUE_DESC* pDesc ); // ---------------------------------------------------------------------- // Method: GetTexture() // Description: The GetTexture method is used to ... // Params: pParameter - // The Parameter parameter ... // pTexture - // The Texture parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetTexture( AnsiString* pParameter, TDx9_3DBaseTexture* pTexture ); // ---------------------------------------------------------------------- // Method: GetValue() // Description: The GetValue method is used to ... // Params: pParameter - // The Parameter parameter ... // pData - // The Data parameter ... // pBytes - // The Bytes parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetValue( AnsiString* pParameter, void* pData, uint pBytes ); // ---------------------------------------------------------------------- // Method: GetVector() // Description: The GetVector method is used to ... // Params: pParameter - // The Parameter parameter ... // pVector - // The Vector parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetVector( AnsiString* pParameter, D3DXVECTOR4* pVector ); // ---------------------------------------------------------------------- // Method: GetVectorArray() // Description: The GetVectorArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pVector - // The Vector parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetVectorArray( AnsiString* pParameter, D3DXVECTOR4* pVector, uint pCount ); // ---------------------------------------------------------------------- // Method: GetVertexShader() // Description: The GetVertexShader method is used to ... // Params: pParameter - // The Parameter parameter ... // pVShader - // The VShader parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall GetVertexShader( AnsiString* pParameter, TDx9_3DVertexShader* pVShader ); // ---------------------------------------------------------------------- // Method: SetBool() // Description: The SetBool method is used to ... // Params: pParameter - // The Parameter parameter ... // pb - // The b parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetBool( AnsiString* pParameter, bool pb ); // ---------------------------------------------------------------------- // Method: SetBoolArray() // Description: The SetBoolArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppB - // The pB parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetFloat() // Description: The SetFloat method is used to ... // Params: pParameter - // The Parameter parameter ... // pf - // The f parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetFloat( AnsiString* pParameter, float pf ); // ---------------------------------------------------------------------- // Method: SetFloatArray() // Description: The SetFloatArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppf - // The pf parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetInt() // Description: The SetInt method is used to ... // Params: pParameter - // The Parameter parameter ... // pn - // The n parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetInt( AnsiString* pParameter, int pn ); // ---------------------------------------------------------------------- // Method: SetIntArray() // Description: The SetIntArray method is used to ... // Params: pParameter - // The Parameter parameter ... // ppn - // The pn parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetLiteral() // Description: The SetLiteral method is used to ... // Params: pParameter - // The Parameter parameter ... // pLiteral - // The Literal parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetLiteral( AnsiString* pParameter, bool pLiteral ); // ---------------------------------------------------------------------- // Method: SetMatrix() // Description: The SetMatrix method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetMatrixArray() // Description: The SetMatrixArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetMatrixPointerArray() // Description: The SetMatrixPointerArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXMATRIX* - // The D3DXMATRIX* parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetMatrixTranspose() // Description: The SetMatrixTranspose method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXMATRIX - // The D3DXMATRIX parameter ... // pMatrix - // The Matrix parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetMatrixTransposeArray() // Description: The SetMatrixTransposeArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXMATRIX* - // The D3DXMATRIX* parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetMatrixTransposePointerArray() // Description: The SetMatrixTransposePointerArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXMATRIX** - // The D3DXMATRIX** parameter ... // pMatrix - // The Matrix parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetPixelShader() // Description: The SetPixelShader method is used to ... // Params: pParameter - // The Parameter parameter ... // pPShader - // The PShader parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetPixelShader( AnsiString* pParameter, TDx9_3DPixelShader* pPShader ); // ---------------------------------------------------------------------- // Method: SetString() // Description: The SetString method is used to ... // Params: pParameter - // The Parameter parameter ... // pLPCSTR - // The LPCSTR parameter ... // pString - // The String parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetTexture() // Description: The SetTexture method is used to ... // Params: pParameter - // The Parameter parameter ... // pTexture - // The Texture parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetTexture( AnsiString* pParameter, TDx9_3DBaseTexture* pTexture ); // ---------------------------------------------------------------------- // Method: SetValue() // Description: The SetValue method is used to ... // Params: pParameter - // The Parameter parameter ... // pData - // The Data parameter ... // pBytes - // The Bytes parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetValue( AnsiString* pParameter, const void* pData, uint pBytes ); // ---------------------------------------------------------------------- // Method: SetVector() // Description: The SetVector method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXVECTOR4* - // The D3DXVECTOR4* parameter ... // pVector - // The Vector parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetVectorArray() // Description: The SetVectorArray method is used to ... // Params: pParameter - // The Parameter parameter ... // pD3DXVECTOR4* - // The D3DXVECTOR4* parameter ... // pVector - // The Vector parameter ... // pCount - // The Count parameter ... // ---------------------------------------------------------------------- // ---------------------------------------------------------------------- // Method: SetVertexShader() // Description: The SetVertexShader method is used to ... // Params: pParameter - // The Parameter parameter ... // pVertexShader - // The VertexShader parameter ... // ---------------------------------------------------------------------- virtual bool __fastcall SetVertexShader( AnsiString* pParameter, TDx9_3DVertexShader* pVertexShader ); // ---------------------------------------------------------------------- // Constructor() and Destructor() // ---------------------------------------------------------------------- __fastcall TDx9_3DXEffectCompiler(TComponent* Owner); virtual __fastcall ~TDx9_3DXEffectCompiler(); // ---------------------------------------------------------------------- // The following properties and methods are used internally by // TDx9_3DXEffect_Library and should not be used. // ---------------------------------------------------------------------- __property LPID3DXEFFECTCOMPILER Internal_LPID3DXEFFECTCOMPILER = { read=FGetInternal_LPID3DXEFFECTCOMPILER, write=FSetInternal_LPID3DXEFFECTCOMPILER, nodefault }; __property LPID3DXEFFECTCOMPILER* Internal_LPID3DXEFFECTCOMPILER_Ptr = { read=FGetInternal_LPID3DXEFFECTCOMPILER_Ptr, nodefault }; void __fastcall Internal_LPID3DXEFFECTCOMPILER_Update(); // ========================================================================== protected: // ========================================================================== // ---------------------------------------------------------------------- // Property Access Methods // ---------------------------------------------------------------------- bool __fastcall FGetCreated(); void __fastcall FSetCreated( bool pCreated ); HRESULT __fastcall FGetErrorValue(); void __fastcall FSetErrorValue( HRESULT pErrorValue ); // ========================================================================== private: // ========================================================================== // ---------------------------------------------------------------------- // Internal Interface Access // ---------------------------------------------------------------------- LPID3DXEFFECTCOMPILER __fastcall FGetInternal_LPID3DXEFFECTCOMPILER(); void __fastcall FSetInternal_LPID3DXEFFECTCOMPILER( LPID3DXEFFECTCOMPILER pLPID3DXEFFECTCOMPILER ); LPID3DXEFFECTCOMPILER* __fastcall FGetInternal_LPID3DXEFFECTCOMPILER_Ptr(); // ---------------------------------------------------------------------- // Property Variables // ---------------------------------------------------------------------- bool fCreated; HRESULT fErrorValue; // ---------------------------------------------------------------------- // Interface Variables // ---------------------------------------------------------------------- LPID3DXEFFECTCOMPILER fLPID3DXEFFECTCOMPILER; // ---------------------------------------------------------------------- // Event Variables // ---------------------------------------------------------------------- TDx_Event FOnCreate; TDx_Event FOnDestroy; TDx_Error FOnError; }; // -------------------------------------------------------------------------- #endif // --------------------------------------------------------------------------