|
|
|
ID3DXTextureShader Interface |
|
' ****************************************************************************************
' ID3DXTextureShader interface
' $IID_ID3DXTextureShader = GUID$("{3E3D67F8-AA7A-405d-A857-BA01D4758426}")
' ****************************************************************************************
' ****************************************************************************************
' Remarks
' The ID3DXTextureShader interface is obtained by calling the D3DXCreateTextureShader function.
' The ID3DXTextureShader interface, like all Component Object Model (COM) interfaces, inherits
' the IUnknown interface.
' The LPD3DXTEXTURESHADER type is defined as a pointer to the ID3DXTextureShader interface.
' Interface Information
' Stock Implementation d3d9.dll
' Custom Implementation No
' Inherits from IUnknown
' Header d3dx9shader.h
' Import library d3dx9.lib
' Minimum availability DirectX 9.0
' Minimum operating systems Windows 2000, Windows 98
' ****************************************************************************************
' ****************************************************************************************
'DECLARE_INTERFACE_(ID3DXTextureShader, IUnknown)
'{
' // IUnknown
' 0. STDMETHOD(QueryInterface)(THIS_ REFIID iid, LPVOID *ppv) PURE;
' 1. STDMETHOD_(ULONG, AddRef)(THIS) PURE;
' 2. STDMETHOD_(ULONG, Release)(THIS) PURE;
' // Gets
' 3. STDMETHOD(GetFunction)(THIS_ LPD3DXBUFFER *ppFunction) PURE;
' 4. STDMETHOD(GetConstantBuffer)(THIS_ LPD3DXBUFFER *ppConstantBuffer) PURE;
' // Descs
' 5. STDMETHOD(GetDesc)(THIS_ ID3DXTextureShader_DESC *pDesc) PURE;
' 6. STDMETHOD(GetConstantDesc)(THIS_ D3DXHANDLE hConstant, D3DXCONSTANT_DESC *pConstantDesc, UINT *pCount) PURE;
' // Handle operations
' 7. STDMETHOD_(D3DXHANDLE, GetConstant)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE;
' 8. STDMETHOD_(D3DXHANDLE, GetConstantByName)(THIS_ D3DXHANDLE hConstant, LPCSTR pName) PURE;
' 9. STDMETHOD_(D3DXHANDLE, GetConstantElement)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE;
' // Set Constants
' 10. STDMETHOD(SetDefaults)(THIS) PURE;
' 11. STDMETHOD(SetValue)(THIS_ D3DXHANDLE hConstant, LPCVOID pData, UINT Bytes) PURE;
' 12. STDMETHOD(SetBool)(THIS_ D3DXHANDLE hConstant, BOOL b) PURE;
' 13. STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE hConstant, CONST BOOL* pb, UINT Count) PURE;
' 14. STDMETHOD(SetInt)(THIS_ D3DXHANDLE hConstant, INT n) PURE;
' 15. STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE hConstant, CONST INT* pn, UINT Count) PURE;
' 16. STDMETHOD(SetFloat)(THIS_ D3DXHANDLE hConstant, FLOAT f) PURE;
' 17. STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE hConstant, CONST FLOAT* pf, UINT Count) PURE;
' 18. STDMETHOD(SetVector)(THIS_ D3DXHANDLE hConstant, CONST D3DXVECTOR4* pVector) PURE;
' 19. STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE hConstant, CONST D3DXVECTOR4* pVector, UINT Count) PURE;
' 20. STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix) PURE;
' 21. STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
' 22. STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
' 23. STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix) PURE;
' 24. STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
' 25. STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE hConstant, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
'};
' ****************************************************************************************
' ****************************************************************************************
' GetFunction method
' Gets a pointer the the function DWORD stream.
' HRESULT GetFunction(
' LPD3DXBUFFER * ppFunction
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetFunction ALIAS "ID3DXTextureShader_GetFunction" ( _
BYVAL pthis AS DWORD PTR, BYREF ppFunction AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[3] USING ID3DXTextureShader_GetFunction(pthis, ppFunction) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetConstantBuffer method
' Get a pointer to the constant table.
' HRESULT GetConstantBuffer(
' LPD3DXBUFFER * ppConstantBuffer
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetConstantBuffer ALIAS "ID3DXTextureShader_GetConstantBuffer" ( _
BYVAL pthis AS DWORD PTR, BYREF ppConstantBuffer AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[4] USING ID3DXTextureShader_GetConstantBuffer(pthis, ppConstantBuffer) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetDesc method
' Gets a description of the constant table.
' HRESULT GetDesc(
' ID3DXConstantTable_DESC * pDesc
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetDesc ALIAS "ID3DXTextureShader_GetDesc" ( _
BYVAL pthis AS DWORD PTR, BYREF pDesc AS D3DXCONSTANTTABLE_DESC) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[5] USING ID3DXTextureShader_GetDesc(pthis, pDesc) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetConstantDesc method
' Gets a pointer to an array of constant descriptions in the constant table.
' HRESULT GetConstantDesc(
' D3DXHANDLE hConstant,
' D3DXCONSTANT_DESC * pDesc,
' UINT * pCount
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetConstantDesc ALIAS "ID3DXTextureShader_GetConstantDesc" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, _
BYREF pDesc AS D3DXCONSTANT_DESC, BYREF pCount AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[6] USING ID3DXTextureShader_GetConstantDesc(pthis, hConstant, pDesc, pCount) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetConstant method
' Gets a constant by looking up its index.
' D3DXHANDLE GetConstant(
' D3DXHANDLE hConstant,
' UINT Index
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetConstant ALIAS "ID3DXTextureShader_GetConstant" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL Index AS DWORD) EXPORT AS DWORD
LOCAL DWRESULT AS DWORD
IF pthis = %NULL THEN EXIT FUNCTION
CALL DWORD @@pthis[7] USING ID3DXTextureShader_GetConstant(pthis, hConstant, Index) TO DWRESULT
FUNCTION = DWRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetConstantByName method
' Gets a constant by looking up its name.
' D3DXHANDLE GetConstantByName(
' D3DXHANDLE hConstant,
' LPCSTR pName
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetConstantByName ALIAS "ID3DXTextureShader_GetConstantByName" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYREF pName AS ASCIIZ) EXPORT AS DWORD
LOCAL DWRESULT AS DWORD
IF pthis = %NULL THEN EXIT FUNCTION
CALL DWORD @@pthis[8] USING ID3DXTextureShader_GetConstantByName(pthis, hConstant, pName) TO DWRESULT
FUNCTION = DWRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetConstantElement method
' Gets a constant from an array of constants. An array is made up of elements.
' D3DXHANDLE GetConstantElement(
' D3DXHANDLE hConstant,
' UINT Index
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_GetConstantElement ALIAS "ID3DXTextureShader_GetConstantElement" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL Index AS DWORD) EXPORT AS DWORD
LOCAL DWRESULT AS DWORD
IF pthis = %NULL THEN EXIT FUNCTION
CALL DWORD @@pthis[9] USING ID3DXTextureShader_GetConstantElement(pthis, hConstant, Index) TO DWRESULT
FUNCTION = DWRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetDefaults method
' Sets the constants to their default values. The default values are declared in the
' variable declarations in the shader.
' HRESULT SetDefaults();
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetDefaults ALIAS "ID3DXTextureShader_SetDefaults" (BYVAL pthis AS DWORD PTR) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[10] USING ID3DXTextureShader_SetDefaults(pthis) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetValue method
' Sets the contents of the buffer to the constant table.
' HRESULT SetValue(
' D3DXHANDLE hConstant,
' LPCVOID pData,
' UINT Bytes
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetValue ALIAS "ID3DXTextureShader_SetValue" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pData AS DWORD, _
BYVAL Bytes AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[11] USING ID3DXTextureShader_SetValue(pthis, hConstant, pData, Bytes) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetBool method
' Sets a Boolean value.
' HRESULT SetBool(
' D3DXHANDLE hConstant,
' BOOL b
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetBool ALIAS "ID3DXTextureShader_SetBool" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL b AS LONG) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[12] USING ID3DXTextureShader_SetBool(pthis, hConstant, b) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetBoolArray method
' Sets an array of Boolean values.
' HRESULT SetBoolArray(
' D3DXHANDLE hConstant,
' CONST BOOL* pB,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetBoolArray ALIAS "ID3DXTextureShader_SetBoolArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pB AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[13] USING ID3DXTextureShader_SetBoolArray(pthis, hConstant, pB, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetInt method
' Sets an integer value.
' HRESULT SetInt(
' D3DXHANDLE hConstant,
' INT n
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetInt ALIAS "ID3DXTextureShader_SetInt" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL n AS LONG) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[14] USING ID3DXTextureShader_SetInt(pthis, hConstant, n) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetIntArray method
' Sets an array of integers.
' HRESULT SetIntArray(
' D3DXHANDLE hConstant,
' CONST INT* pn,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetIntArray ALIAS "ID3DXTextureShader_SetIntArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pn AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[15] USING ID3DXTextureShader_SetIntArray(pthis, hConstant, pn, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetFloat method
' Sets a floating-point number.
' HRESULT SetFloat(
' D3DXHANDLE hConstant,
' FLOAT f
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetFloat ALIAS "ID3DXTextureShader_SetFloat" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL f AS SINGLE) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[16] USING ID3DXTextureShader_SetFloat(pthis, hConstant, f) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetFloatArray method
' Sets an array of floating-point numbers.
' HRESULT SetFloatArray(
' D3DXHANDLE hConstant,
' CONST FLOAT* pf,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetFloatArray ALIAS "ID3DXTextureShader_SetFloatArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pf AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[17] USING ID3DXTextureShader_SetFloatArray(pthis, hConstant, pf, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetVector method
' Sets a 4-D vector.
' HRESULT SetVector(
' D3DXHANDLE hConstant,
' CONST D3DXVECTOR4* pVector
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetVector ALIAS "ID3DXTextureShader_SetVector" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pVector AS D3DXVECTOR4) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[18] USING ID3DXTextureShader_SetVector(pthis, hConstant, pVector) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetVectorArray method
' Sets an array of 4-D vectors.
' HRESULT SetVectorArray(
' D3DXHANDLE hConstant,
' CONST D3DXVECTOR4* pVector,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetVectorArray ALIAS "ID3DXTextureShader_SetVectorArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pVector AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[19] USING ID3DXTextureShader_SetVectorArray(pthis, hConstant, pVector, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrix method
' Sets a nontransposed matrix.
' HRESULT SetMatrix(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX* pMatrix
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrix ALIAS "ID3DXTextureShader_SetMatrix" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYREF pMatrix AS D3DXMATRIX) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[20] USING ID3DXTextureShader_SetMatrix(pthis, hConstant, pMatrix) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrixArray method
' Sets an array of nontransposed matrices.
' HRESULT SetMatrixArray(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX* pMatrix,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrixArray ALIAS "ID3DXTextureShader_SetMatrixArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pMatrix AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[21] USING ID3DXTextureShader_SetMatrixArray(pthis, hConstant, pMatrix, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrixPointerArray method
' Sets an array of pointers to nontransposed matrices.
' HRESULT SetMatrixPointerArray(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX ** ppMatrix,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrixPointerArray ALIAS "ID3DXTextureShader_SetMatrixPointerArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL ppMatrix AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[22] USING ID3DXTextureShader_SetMatrixPointerArray(pthis, hConstant, ppMatrix, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrixTranspose method
' Sets a transposed matrix.
' HRESULT SetMatrixTranspose(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX* pMatrix
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrixTranspose ALIAS "ID3DXTextureShader_SetMatrixTranspose" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYREF pMatrix AS D3DMATRIX) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[23] USING ID3DXTextureShader_SetMatrixTranspose(pthis, hConstant, pMatrix) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrixTransposeArray method
' Sets an array of transposed matrices.
' HRESULT SetMatrixTransposeArray(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX* pMatrix,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrixTransposeArray ALIAS "ID3DXTextureShader_SetMatrixTransposeArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL pMatrix AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[24] USING ID3DXTextureShader_SetMatrixTransposeArray(pthis, hConstant, pMatrix, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' SetMatrixTransposePointerArray method
' Sets an array of pointers to transposed matrices.
' HRESULT SetMatrixTransposePointerArray(
' D3DXHANDLE hConstant,
' CONST D3DXMATRIX** ppMatrix,
' UINT Count
' );
' ****************************************************************************************
FUNCTION ID3DXTextureShader_SetMatrixTransposePointerArray ALIAS "ID3DXTextureShader_SetMatrixTransposePointerArray" ( _
BYVAL pthis AS DWORD PTR, BYVAL hConstant AS DWORD, BYVAL ppMatrix AS DWORD, _
BYVAL Count AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[25] USING ID3DXTextureShader_SetMatrixTransposePointerArray(pthis, hConstant, ppMatrix, Count) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
|
Page last updated on Tuesday, 14 March 2006 23:49:56 +0100