|
|
|
ID3DXFileSaveData Interface |
|
' ****************************************************************************************
' ID3DXFileSaveData interface
' $IID_ID3DXFileSaveData = GUID$("{cef08cfb-7b4f-4429-9624-2a690a933201}")
' ****************************************************************************************
' ****************************************************************************************
' Applications use the methods of the ID3DXFileSaveData interface to add data objects as
' children of a .x file data node.
' Remarks
' The GUID for the ID3DXFileSaveObject interface is IID_ID3DXFileSaveObject.
' The LPD3DXFILESAVEDATA type is defined as a pointer to this interface.
' Interface Information
' Stock Implementation d3d9.dll
' Custom Implementation No
' Inherits from IUnknown
' Header d3dx9xof.h
' Import library d3dx9.lib
' Minimum operating systems Windows 98
' ****************************************************************************************
' ****************************************************************************************
'DECLARE_INTERFACE_( ID3DXFileSaveData, IUnknown )
'{
' 0. STDMETHOD( QueryInterface )( THIS_ REFIID, LPVOID* ) PURE;
' 1. STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
' 2. STDMETHOD_( ULONG, Release )( THIS ) PURE;
' 3. STDMETHOD( GetSave )( THIS_ ID3DXFileSaveObject** ) PURE;
' 4. STDMETHOD( GetName )( THIS_ LPSTR, SIZE_T* ) PURE;
' 5. STDMETHOD( GetId )( THIS_ LPGUID ) PURE;
' 6. STDMETHOD( GetType )( THIS_ GUID* ) PURE;
' 7. STDMETHOD( AddDataObject )( THIS_ REFGUID, LPCSTR, CONST GUID*,
' SIZE_T, LPCVOID, ID3DXFileSaveData** ) PURE;
' 8. STDMETHOD( AddDataReference )( THIS_ LPCSTR, CONST GUID* ) PURE;
'};
' ****************************************************************************************
' ****************************************************************************************
' GetSave method
' Retrieves a pointer to this ID3DXFileSaveObject file data node.
' HRESULT GetSave(
' ID3DXFileSaveObject ** ppObj
' );
' ****************************************************************************************
FUNCTION IID3DXFileSaveData_GetSave ALIAS "IID3DXFileSaveData_GetSave" ( _
BYVAL pthis AS DWORD PTR, BYREF ppObj AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[3] USING IID3DXFileSaveData_GetSave(pthis, ppObj) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetName method
' Retrieves the name of this ID3DXFileSaveData file data node.
' HRESULT GetName(
' LPSTR szName,
' SIZE_T * puiSize
' );
' ****************************************************************************************
FUNCTION IID3DXFileSaveData_GetName ALIAS "IID3DXFileSaveData_GetName" ( _
BYVAL pthis AS DWORD PTR, BYVAL szName AS DWORD, BYREF puiSize AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[4] USING IID3DXFileSaveData_GetName(pthis, szName, puiSize) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetId method
' Retrieves the globally unique identifier (GUID) of this ID3DXFileSaveData file data node.
' HRESULT GetId(
' LPGUID pId
' );
' ****************************************************************************************
FUNCTION IID3DXFileSaveData_GetId ALIAS "IID3DXFileSaveData_GetId" ( _
BYVAL pthis AS DWORD PTR, BYREF pId AS GUID) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[5] USING IID3DXFileSaveData_GetId(pthis, pId) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetType method
' Retrieves the template identifier (ID) in this file data object.
' HRESULT GetType(
' GUID * type
' );
' ****************************************************************************************
FUNCTION IID3DXFileSaveData_GetType ALIAS "IID3DXFileSaveData_GetType" ( _
BYVAL pthis AS DWORD PTR, BYREF pType AS GUID) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[6] USING IID3DXFileSaveData_GetType(pthis, pType) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' AddDataObject method
' Adds a data object as a child of the ID3DXFileSaveData file data node.
' HRESULT AddDataObject(
' REFGUID rguidTemplate,
' LPCSTR szName,
' CONST GUID * pId,
' SIZE_T cbSize,
' LPCVOID pvData,
' ID3DXFileSaveData ** ppObj
' );
' ****************************************************************************************
FUNCTION ID3DXFileSaveData_AddDataObject ALIAS "ID3DXFileSaveData_AddDataObject" ( _
BYVAL pthis AS DWORD PTR, BYREF rguidTemplate AS GUID, BYREF szName AS ASCIIZ, _
BYREF pId AS GUID, BYVAL cbSize AS DWORD, BYVAL pvData AS DWORD, _
BYREF ppObj AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[7] USING ID3DXFileSaveData_AddDataObject(pthis, rguidTemplate, szName, pId, cbSize, pvData, ppObj) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' AddDataReference method
' Adds a data reference as a child of this ID3DXFileSaveData file data node. The data
' reference points to a file data object.
' HRESULT AddDataReference(
' LPCSTR szName,
' CONST GUID * pId
' );
' ****************************************************************************************
FUNCTION ID3DXFileSaveData_AddDataReference ALIAS "ID3DXFileSaveData_AddDataReference" ( _
BYVAL pthis AS DWORD PTR, BYREF szName AS ASCIIZ, BYREF pId AS GUID) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[8] USING ID3DXFileSaveData_AddDataReference(pthis, szName, pId) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
|
Page last updated on Wednesday, 15 March 2006 00:20:16 +0100