//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1998 - 1998 // // File: ddclipperobj.h // //-------------------------------------------------------------------------- // ddClipperObj.h : Declaration of the C_dxj_DirectDrawClipperObject #include "resource.h" // main symbols #include "wingdi.h" #define DDCOOPERATIVE_CLIPTOCOMPONENT 0x30000000 #define DDCOOPERATIVE_OFFSETTOCOMPONENT 0x20000000 #define typedef__dxj_DirectDrawClipper LPDIRECTDRAWCLIPPER ///////////////////////////////////////////////////////////////////////////// // Direct //REVIEW -- using pointers to ID's is necessary because some compilers don't like //references as template arguments. class C_dxj_DirectDrawClipperObject : #ifdef USING_IDISPATCH public CComDualImpl, public ISupportErrorInfo, #else public I_dxj_DirectDrawClipper, #endif // public CComCoClass, public CComObjectRoot { public: C_dxj_DirectDrawClipperObject() ; virtual ~C_dxj_DirectDrawClipperObject() ; DWORD InternalAddRef(); DWORD InternalRelease(); BEGIN_COM_MAP(C_dxj_DirectDrawClipperObject) COM_INTERFACE_ENTRY(I_dxj_DirectDrawClipper) #ifdef USING_IDISPATCH COM_INTERFACE_ENTRY(IDispatch) COM_INTERFACE_ENTRY(ISupportErrorInfo) #endif END_COM_MAP() DECLARE_AGGREGATABLE(C_dxj_DirectDrawClipperObject) #ifdef USING_IDISPATCH // ISupportsErrorInfo STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid); #endif // I_dxj_DirectDrawClipper public: /* [hidden] */ HRESULT STDMETHODCALLTYPE InternalSetObject( /* [in] */ IUnknown __RPC_FAR *lpddc); /* [hidden] */ HRESULT STDMETHODCALLTYPE InternalGetObject( /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *lpddc); HRESULT STDMETHODCALLTYPE getClipListSize( /* [retval][out] */ int __RPC_FAR *count); HRESULT STDMETHODCALLTYPE getClipList( SAFEARRAY **list); HRESULT STDMETHODCALLTYPE setClipList( /* [in] */ long count, SAFEARRAY **list); HRESULT STDMETHODCALLTYPE getHWnd( /* [retval][out] */ HWnd __RPC_FAR *hdl); HRESULT STDMETHODCALLTYPE setHWnd( // /* [in] */ long flags, /* [in] */ HWnd hdl); HRESULT STDMETHODCALLTYPE isClipListChanged( /* [retval][out] */ int __RPC_FAR *status); private: DECL_VARIABLE(_dxj_DirectDrawClipper); public: DX3J_GLOBAL_LINKS( _dxj_DirectDrawClipper ); int m_flags; };