141 lines
4.5 KiB
C++
141 lines
4.5 KiB
C++
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1998 - 1999
|
|
//
|
|
// File: d3drmanimation2obj.h
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
// d3drmAnimationObj.h : Declaration of the C_dxj_Direct3dRMAnimationObject
|
|
|
|
#include "resource.h" // main symbols
|
|
#include "d3drmObjectObj.h"
|
|
|
|
#define typedef__dxj_Direct3dRMAnimation2 LPDIRECT3DRMANIMATION2
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// Direct
|
|
|
|
//REVIEW -- using pointers to ID's is necessary because some compilers don't like
|
|
//references as template arguments.
|
|
|
|
class C_dxj_Direct3dRMAnimation2Object :
|
|
public I_dxj_Direct3dRMAnimation2,
|
|
public CComObjectRoot
|
|
{
|
|
public:
|
|
C_dxj_Direct3dRMAnimation2Object() ;
|
|
~C_dxj_Direct3dRMAnimation2Object() ;
|
|
DWORD InternalAddRef();
|
|
DWORD InternalRelease();
|
|
|
|
BEGIN_COM_MAP(C_dxj_Direct3dRMAnimation2Object)
|
|
COM_INTERFACE_ENTRY(I_dxj_Direct3dRMAnimation2)
|
|
END_COM_MAP()
|
|
|
|
|
|
DECLARE_AGGREGATABLE(C_dxj_Direct3dRMAnimation2Object)
|
|
|
|
// I_dxj_Direct3dRMAnimation
|
|
public:
|
|
/* [hidden] */ HRESULT STDMETHODCALLTYPE InternalSetObject(
|
|
/* [in] */ IUnknown __RPC_FAR *lpdd) ;
|
|
|
|
/* [hidden] */ HRESULT STDMETHODCALLTYPE InternalGetObject(
|
|
/* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *lpdd) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE addDestroyCallback(
|
|
/* [in] */ I_dxj_Direct3dRMCallback __RPC_FAR *fn,
|
|
/* [in] */ IUnknown __RPC_FAR *arg) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE deleteDestroyCallback(
|
|
/* [in] */ I_dxj_Direct3dRMCallback __RPC_FAR *fn,
|
|
/* [in] */ IUnknown __RPC_FAR *args) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE clone(
|
|
/* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *retv) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE setAppData(
|
|
/* [in] */ long data) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getAppData(
|
|
/* [retval][out] */ long __RPC_FAR *data) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE setName(
|
|
/* [in] */ BSTR name) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getName(
|
|
/* [retval][out] */ BSTR __RPC_FAR *name) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getClassName(
|
|
/* [retval][out] */ BSTR __RPC_FAR *name) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE setOptions(
|
|
/* [in] */ d3drmAnimationOptions flags) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE addRotateKey(
|
|
/* [in] */ float time,
|
|
/* [in] */ D3dRMQuaternion __RPC_FAR *q) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE addPositionKey(
|
|
/* [in] */ float time,
|
|
/* [in] */ float x,
|
|
/* [in] */ float y,
|
|
/* [in] */ float z) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE addScaleKey(
|
|
/* [in] */ float time,
|
|
/* [in] */ float x,
|
|
/* [in] */ float y,
|
|
/* [in] */ float z) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE deleteKey(
|
|
/* [in] */ float time) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE setFrame(
|
|
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *frame) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getFrame(
|
|
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR **frame) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE setTime(
|
|
/* [in] */ float time) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getOptions(
|
|
/* [retval][out] */ d3drmAnimationOptions __RPC_FAR *options) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE addKey(
|
|
/* [in] */ D3DRMANIMATIONKEY_CDESC __RPC_FAR *key) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE deleteKeyById(
|
|
/* [in] */ long id) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getKeys(
|
|
/* [in] */ float timeMin,
|
|
/* [in] */ float timeMax,
|
|
///* [in] */ long count,
|
|
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *keyArray) ;
|
|
|
|
HRESULT STDMETHODCALLTYPE getKeysCount(
|
|
/* [in] */ float timeMin,
|
|
/* [in] */ float timeMax,
|
|
/* [retval][out] */ long __RPC_FAR *count) ;
|
|
|
|
|
|
HRESULT STDMETHODCALLTYPE modifyKey(
|
|
/* [in] */ D3DRMANIMATIONKEY_CDESC __RPC_FAR *key) ;
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
|
|
private:
|
|
DECL_VARIABLE(_dxj_Direct3dRMAnimation2);
|
|
|
|
public:
|
|
DX3J_GLOBAL_LINKS( _dxj_Direct3dRMAnimation2)
|
|
};
|
|
|
|
|