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.

72 lines
2.2 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1998 - 1998
  6. //
  7. // File: d3drmframearrayobj.h
  8. //
  9. //--------------------------------------------------------------------------
  10. // d3drmFrameArrayObj.h : Declaration of the C_dxj_Direct3dRMFrameArrayObject
  11. #include "resource.h" // main symbols
  12. #define typedef__dxj_Direct3dRMFrameArray LPDIRECT3DRMFRAMEARRAY
  13. /////////////////////////////////////////////////////////////////////////////
  14. // Direct
  15. //REVIEW -- using pointers to ID's is necessary because some compilers don't like
  16. //references as template arguments.
  17. class C_dxj_Direct3dRMFrameArrayObject :
  18. //public CComDualImpl<I_dxj_Direct3dRMFrameArray, &IID_I_dxj_Direct3dRMFrameArray, &LIBID_DIRECTLib>,
  19. //public ISupportErrorInfo,
  20. public I_dxj_Direct3dRMFrameArray,
  21. //public CComCoClass<C_dxj_Direct3dRMFrameArrayObject, &CLSID__dxj_Direct3dRMFrameArray>,
  22. public CComObjectRoot
  23. {
  24. public:
  25. C_dxj_Direct3dRMFrameArrayObject() ;
  26. virtual ~C_dxj_Direct3dRMFrameArrayObject() ;
  27. BEGIN_COM_MAP(C_dxj_Direct3dRMFrameArrayObject)
  28. COM_INTERFACE_ENTRY(I_dxj_Direct3dRMFrameArray)
  29. //COM_INTERFACE_ENTRY(IDispatch)
  30. //COM_INTERFACE_ENTRY(ISupportErrorInfo)
  31. END_COM_MAP()
  32. //DECLARE_REGISTRY(CLSID__dxj_Direct3dRMFrameArray, "DIRECT.Direct3dRMFrameArray.3", "DIRECT.Direct3dRMFrameArray.3", IDS_D3DRMFRAMEARRAY_DESC, THREADFLAGS_BOTH)
  33. // Use DECLARE_NOT_AGGREGATABLE(C_dxj_Direct3dRMFrameArrayObject) if you don't want your object
  34. // to support aggregation
  35. DECLARE_AGGREGATABLE(C_dxj_Direct3dRMFrameArrayObject)
  36. //STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  37. // I_dxj_Direct3dRMFrameArray
  38. public:
  39. STDMETHOD(InternalSetObject)(IUnknown *lpdd);
  40. STDMETHOD(InternalGetObject)(IUnknown **lpdd);
  41. STDMETHOD(getSize)(long *retval);
  42. #if DX5
  43. STDMETHOD(getElement)(long index, I_dxj_Direct3dRMFrame2 **lplpD3DRMFrame);
  44. #else
  45. STDMETHOD(getElement)(long index, I_dxj_Direct3dRMFrame3 **lplpD3DRMFrame);
  46. #endif
  47. private:
  48. DECL_VARIABLE(_dxj_Direct3dRMFrameArray);
  49. public:
  50. DX3J_GLOBAL_LINKS( _dxj_Direct3dRMFrameArray )
  51. };