Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

417 lines
16 KiB

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1998 - 1999
//
// File: d3drmframe3obj.h
//
//--------------------------------------------------------------------------
// d3drmFrameObj.h : Declaration of the C_dxj_Direct3dRMFrame3Object
#include "resource.h" // main symbols
#include "d3drmObjectObj.h"
#include "d3drmPick2ArrayObj.h"
#define typedef__dxj_Direct3dRMFrame3 LPDIRECT3DRMFRAME3
/////////////////////////////////////////////////////////////////////////////
// Direct
//REVIEW -- using pointers to ID's is necessary because some compilers don't like
//references as template arguments.
// public CComCoClass<Cproj3, &CLSID_proj3>,
class C_dxj_Direct3dRMFrame3Object :
public CComObjectRoot,
public I_dxj_Direct3dRMFrame3,
public I_dxj_Direct3dRMObject,
public I_dxj_Direct3dRMVisual
{
public:
BEGIN_COM_MAP(C_dxj_Direct3dRMFrame3Object)
COM_INTERFACE_ENTRY(I_dxj_Direct3dRMFrame3)
COM_INTERFACE_ENTRY(I_dxj_Direct3dRMObject)
COM_INTERFACE_ENTRY(I_dxj_Direct3dRMVisual)
END_COM_MAP()
C_dxj_Direct3dRMFrame3Object();
virtual ~C_dxj_Direct3dRMFrame3Object();
DECLARE_AGGREGATABLE(C_dxj_Direct3dRMFrame3Object)
// I_dxj_Direct3dRMFrame3
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 addVisual(
/* [in] */ I_dxj_Direct3dRMVisual __RPC_FAR *v);
HRESULT STDMETHODCALLTYPE deleteVisual(
/* [in] */ I_dxj_Direct3dRMVisual __RPC_FAR *v);
HRESULT STDMETHODCALLTYPE addLight(
/* [in] */ I_dxj_Direct3dRMLight __RPC_FAR *val);
HRESULT STDMETHODCALLTYPE deleteLight(
/* [in] */ I_dxj_Direct3dRMLight __RPC_FAR *l);
HRESULT STDMETHODCALLTYPE addChild(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *child);
HRESULT STDMETHODCALLTYPE deleteChild(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *c);
HRESULT STDMETHODCALLTYPE getTransform(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *referenceFrame,
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *val);
HRESULT STDMETHODCALLTYPE addTransform(
/* [in] */ d3drmCombineType t,
/* [in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *val);
HRESULT STDMETHODCALLTYPE addTranslation(
/* [in] */ d3drmCombineType t,
/* [in] */ float x,
/* [in] */ float y,
/* [in] */ float z);
HRESULT STDMETHODCALLTYPE addScale(
/* [in] */ d3drmCombineType combineType,
/* [in] */ float sx,
/* [in] */ float sy,
/* [in] */ float sz);
HRESULT STDMETHODCALLTYPE addRotation(
/* [in] */ d3drmCombineType combineType,
/* [in] */ float x,
/* [in] */ float y,
/* [in] */ float z,
/* [in] */ float theta);
HRESULT STDMETHODCALLTYPE addMoveCallback(
/* [in] */ I_dxj_Direct3dRMFrameMoveCallback3 __RPC_FAR *frameMoveImplementation,
/* [in] */ IUnknown __RPC_FAR *userArgument,
/* [in] */ long flags);
HRESULT STDMETHODCALLTYPE deleteMoveCallback(
/* [in] */ I_dxj_Direct3dRMFrameMoveCallback3 __RPC_FAR *frameMoveImplementation,
/* [in] */ IUnknown __RPC_FAR *userArgument);
HRESULT STDMETHODCALLTYPE transform(
/* [out][in] */ D3dVector __RPC_FAR *d,
/* [in] */ D3dVector __RPC_FAR *s);
HRESULT STDMETHODCALLTYPE transformVectors(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ long num,
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *DstVectors,
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *SrcVectors);
HRESULT STDMETHODCALLTYPE inverseTransform(
/* [out][in] */ D3dVector __RPC_FAR *d,
/* [in] */ D3dVector __RPC_FAR *s);
HRESULT STDMETHODCALLTYPE inverseTransformVectors(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ long num,
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *DstVectors,
/* [out][in] */ SAFEARRAY __RPC_FAR * __RPC_FAR *SrcVectors);
HRESULT STDMETHODCALLTYPE getAxes(
/* [out][in] */ D3dVector __RPC_FAR *dir,
/* [out][in] */ D3dVector __RPC_FAR *up);
HRESULT STDMETHODCALLTYPE getBox(
/* [out][in] */ D3dRMBox __RPC_FAR *box);
HRESULT STDMETHODCALLTYPE getBoxEnable(
/* [retval][out] */ long __RPC_FAR *b);
HRESULT STDMETHODCALLTYPE getChildren(
/* [retval][out] */ I_dxj_Direct3dRMFrameArray __RPC_FAR *__RPC_FAR *children);
HRESULT STDMETHODCALLTYPE getColor(
/* [retval][out] */ d3dcolor __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getHierarchyBox(
/* [out][in] */ D3dRMBox __RPC_FAR *box);
HRESULT STDMETHODCALLTYPE getInheritAxes(
/* [retval][out] */ long __RPC_FAR *b);
HRESULT STDMETHODCALLTYPE getLights(
/* [retval][out] */ I_dxj_Direct3dRMLightArray __RPC_FAR *__RPC_FAR *lights);
HRESULT STDMETHODCALLTYPE getMaterial(
I_dxj_Direct3dRMMaterial2 __RPC_FAR *__RPC_FAR *ret);
HRESULT STDMETHODCALLTYPE getMaterialMode(
/* [retval][out] */ d3drmMaterialMode __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getOrientation(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *ref,
/* [out][in] */ D3dVector __RPC_FAR *dir,
/* [out][in] */ D3dVector __RPC_FAR *up);
HRESULT STDMETHODCALLTYPE getMaterialOverride(
/* [out][in] */ D3dMaterialOverride __RPC_FAR *override);
HRESULT STDMETHODCALLTYPE getMaterialOverrideTexture(
/* [retval][out] */ I_dxj_Direct3dRMTexture3 __RPC_FAR *__RPC_FAR *ret);
HRESULT STDMETHODCALLTYPE getParent(
/* [retval][out] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *__RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getPosition(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *ref,
/* [out][in] */ D3dVector __RPC_FAR *position);
HRESULT STDMETHODCALLTYPE getRotation(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *ref,
/* [out][in] */ D3dVector __RPC_FAR *axis,
/* [out] */ float __RPC_FAR *theta);
HRESULT STDMETHODCALLTYPE getScene(
/* [retval][out] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *__RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getSceneBackground(
/* [retval][out] */ d3dcolor __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getSceneBackgroundDepth(
/* [retval][out] */ I_dxj_DirectDrawSurface7 __RPC_FAR *__RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getSceneFogColor(
/* [retval][out] */ d3dcolor __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getSceneFogEnable(
/* [retval][out] */ long __RPC_FAR *enable);
HRESULT STDMETHODCALLTYPE getSceneFogMode(
/* [retval][out] */ long __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getSceneFogMethod(
/* [retval][out] */ long __RPC_FAR *method);
HRESULT STDMETHODCALLTYPE getSceneFogParams(
/* [out][in] */ float __RPC_FAR *start,
/* [out][in] */ float __RPC_FAR *end,
/* [out][in] */ float __RPC_FAR *density);
HRESULT STDMETHODCALLTYPE getSortMode(
/* [retval][out] */ d3drmSortMode __RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE getTexture(
/* [retval][out] */ I_dxj_Direct3dRMTexture3 __RPC_FAR *__RPC_FAR *ref);
HRESULT STDMETHODCALLTYPE getVelocity(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *ref,
/* [out][in] */ D3dVector __RPC_FAR *vel,
/* [in] */ long includeRotationalVelocity);
HRESULT STDMETHODCALLTYPE getVisuals(
/* [retval][out] */ I_dxj_Direct3dRMVisualArray __RPC_FAR *__RPC_FAR *visuals);
HRESULT STDMETHODCALLTYPE getVisual(
/* [in] */ long index,
/* [retval][out] */ I_dxj_Direct3dRMVisual __RPC_FAR *__RPC_FAR *visualArray);
HRESULT STDMETHODCALLTYPE getVisualCount(
/* [retval][out] */ long __RPC_FAR *vis);
HRESULT STDMETHODCALLTYPE getTraversalOptions(
/* [retval][out] */ long __RPC_FAR *ret);
HRESULT STDMETHODCALLTYPE getZBufferMode(
/* [retval][out] */ long __RPC_FAR *ret);
HRESULT STDMETHODCALLTYPE loadFromFile(
/* [in] */ BSTR filename,
/* [in] */ VARIANT id,
/* [in] */ long flags,
/* [in] */ I_dxj_Direct3dRMLoadTextureCallback3 __RPC_FAR *loadTextureImplementation,
/* [in] */ IUnknown __RPC_FAR *userArgument);
HRESULT STDMETHODCALLTYPE lookAt(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *tgt,
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ d3drmFrameConstraint contraint);
HRESULT STDMETHODCALLTYPE move(
/* [in] */ float delta);
HRESULT STDMETHODCALLTYPE rayPick(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *refer,
/* [in] */ D3dRMRay __RPC_FAR *ray,
/* [in] */ long flags,
/* [retval][out] */ I_dxj_Direct3dRMPick2Array __RPC_FAR *__RPC_FAR *retv);
HRESULT STDMETHODCALLTYPE save(
/* [in] */ BSTR name,
/* [in] */ d3drmXofFormat format,
/* [in] */ d3drmSaveFlags flags);
HRESULT STDMETHODCALLTYPE setAxes(
/* [in] */ float dx,
/* [in] */ float dy,
/* [in] */ float dz,
/* [in] */ float ux,
/* [in] */ float uy,
/* [in] */ float uz);
HRESULT STDMETHODCALLTYPE setBox(
/* [in] */ D3dRMBox __RPC_FAR *box);
HRESULT STDMETHODCALLTYPE setBoxEnable(
/* [in] */ long boxEnable);
HRESULT STDMETHODCALLTYPE setColor(
/* [in] */ d3dcolor c);
HRESULT STDMETHODCALLTYPE setColorRGB(
/* [in] */ float r,
/* [in] */ float g,
/* [in] */ float b);
HRESULT STDMETHODCALLTYPE setInheritAxes(
/* [in] */ long inheritFromParent);
HRESULT STDMETHODCALLTYPE setMaterial(
/* [in] */ I_dxj_Direct3dRMMaterial2 __RPC_FAR *mat);
HRESULT STDMETHODCALLTYPE setMaterialMode(
/* [in] */ d3drmMaterialMode val);
HRESULT STDMETHODCALLTYPE setMaterialOverride(
/* [out][in] */ D3dMaterialOverride __RPC_FAR *override);
HRESULT STDMETHODCALLTYPE setMaterialOverrideTexture(
/* [in] */ I_dxj_Direct3dRMTexture3 __RPC_FAR *tex);
HRESULT STDMETHODCALLTYPE setOrientation(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ float dx,
/* [in] */ float dy,
/* [in] */ float dz,
/* [in] */ float ux,
/* [in] */ float uy,
/* [in] */ float uz);
HRESULT STDMETHODCALLTYPE setPosition(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ float x,
/* [in] */ float y,
/* [in] */ float z);
HRESULT STDMETHODCALLTYPE setQuaternion(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
D3dRMQuaternion __RPC_FAR *quat);
HRESULT STDMETHODCALLTYPE setRotation(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ float x,
/* [in] */ float y,
/* [in] */ float z,
/* [in] */ float theta);
HRESULT STDMETHODCALLTYPE setSceneBackground(
/* [in] */ d3dcolor c);
HRESULT STDMETHODCALLTYPE setSceneBackgroundDepth(
/* [in] */ I_dxj_DirectDrawSurface7 __RPC_FAR *s);
HRESULT STDMETHODCALLTYPE setSceneBackgroundImage(
/* [in] */ I_dxj_Direct3dRMTexture3 __RPC_FAR *i);
HRESULT STDMETHODCALLTYPE setSceneBackgroundRGB(
/* [in] */ float r,
/* [in] */ float g,
/* [in] */ float b);
HRESULT STDMETHODCALLTYPE setSceneFogColor(
/* [in] */ d3dcolor c);
HRESULT STDMETHODCALLTYPE setSceneFogEnable(
/* [in] */ long enable);
HRESULT STDMETHODCALLTYPE setSceneFogMethod(
/* [in] */ long method);
HRESULT STDMETHODCALLTYPE setSceneFogMode(
/* [in] */ long c);
HRESULT STDMETHODCALLTYPE setSceneFogParams(
/* [in] */ float start,
/* [in] */ float end,
/* [in] */ float density);
HRESULT STDMETHODCALLTYPE setSortMode(
/* [in] */ d3drmSortMode val);
HRESULT STDMETHODCALLTYPE setTexture(
/* [in] */ I_dxj_Direct3dRMTexture3 __RPC_FAR *t);
HRESULT STDMETHODCALLTYPE setTraversalOptions(
/* [in] */ long flags);
HRESULT STDMETHODCALLTYPE setVelocity(
/* [in] */ I_dxj_Direct3dRMFrame3 __RPC_FAR *reference,
/* [in] */ float x,
/* [in] */ float y,
/* [in] */ float z,
/* [in] */ long with_rotation);
HRESULT STDMETHODCALLTYPE setZbufferMode(
/* [in] */ d3drmZbufferMode val);
////////////////////////////////////////////////////////////////////////////////////
//
// note: this is public for the callbacks
DECL_VARIABLE(_dxj_Direct3dRMFrame3);
private:
public:
DX3J_GLOBAL_LINKS( _dxj_Direct3dRMFrame3 )
};