Source code of Windows XP (NT5)
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.

72 lines
2.2 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1998 - 1998
  6. //
  7. // File: d3drmwrapobj.h
  8. //
  9. //--------------------------------------------------------------------------
  10. // d3drmWrapObj.h : Declaration of the C_dxj_Direct3dRMWrapObject
  11. #include "resource.h" // main symbols
  12. #include "d3drmObjectObj.h"
  13. #define typedef__dxj_Direct3dRMWrap LPDIRECT3DRMWRAP
  14. /////////////////////////////////////////////////////////////////////////////
  15. // Direct
  16. //REVIEW -- using pointers to ID's is necessary because some compilers don't like
  17. //references as template arguments.
  18. class C_dxj_Direct3dRMWrapObject :
  19. public I_dxj_Direct3dRMWrap,
  20. public I_dxj_Direct3dRMObject,
  21. public CComObjectRoot
  22. {
  23. public:
  24. C_dxj_Direct3dRMWrapObject() ;
  25. virtual ~C_dxj_Direct3dRMWrapObject() ;
  26. BEGIN_COM_MAP(C_dxj_Direct3dRMWrapObject)
  27. COM_INTERFACE_ENTRY(I_dxj_Direct3dRMWrap)
  28. COM_INTERFACE_ENTRY(I_dxj_Direct3dRMObject)
  29. END_COM_MAP()
  30. // DECLARE_REGISTRY(CLSID__dxj_Direct3dRMWrap, "DIRECT.Direct3dRMWrap.3", "DIRECT.Direct3dRMWrap.3", IDS_D3DRMWRAP_DESC, THREADFLAGS_BOTH)
  31. DECLARE_AGGREGATABLE(C_dxj_Direct3dRMWrapObject)
  32. // I_dxj_Direct3dRMWrap
  33. public:
  34. STDMETHOD(InternalSetObject)(IUnknown *lpdd);
  35. STDMETHOD(InternalGetObject)(IUnknown **lpdd);
  36. STDMETHOD(clone)(IUnknown **retval);
  37. STDMETHOD(setAppData)(long);
  38. STDMETHOD(getAppData)(long*);
  39. STDMETHOD(addDestroyCallback)(I_dxj_Direct3dRMCallback *fn, IUnknown *args);
  40. STDMETHOD(deleteDestroyCallback)(I_dxj_Direct3dRMCallback *fn, IUnknown *args);
  41. STDMETHOD(getName)(BSTR *name);
  42. STDMETHOD(setName)(BSTR);
  43. STDMETHOD(getClassName)(BSTR *name);
  44. STDMETHOD(init)( d3drmWrapType, I_dxj_Direct3dRMFrame3 *ref,
  45. d3dvalue ox, d3dvalue oy, d3dvalue oz,
  46. d3dvalue dx, d3dvalue dy, d3dvalue dz,
  47. d3dvalue ux, d3dvalue uy, d3dvalue uz,
  48. d3dvalue ou, d3dvalue ov, d3dvalue su, d3dvalue sv);
  49. STDMETHOD(apply)( I_dxj_Direct3dRMObject *mesh);
  50. STDMETHOD(applyRelative)( I_dxj_Direct3dRMFrame3 *f, I_dxj_Direct3dRMObject *mesh);
  51. ////////////////////////////////////////////////////////////////////////////////////
  52. //
  53. private:
  54. DECL_VARIABLE(_dxj_Direct3dRMWrap);
  55. public:
  56. DX3J_GLOBAL_LINKS( _dxj_Direct3dRMWrap )
  57. };