Removed the CN_xxx macros since they are not used, do not correspond to
[wine/multimedia.git] / include / oleobj.h
blob8c1b5f575e81cdf27a4ad941f668daf4c214a423
1 #ifndef _WINE_OLEOBJ_H
2 #define _WINE_OLEOBJ_H
4 #include "ole.h"
5 #include "ole2.h"
6 #include "compobj.h"
7 // #include "interfaces.h"
9 #define STDMETHOD(xfn) HRESULT (CALLBACK *fn##xfn)
10 #define STDMETHOD_(type,xfn) type (CALLBACK *fn##xfn)
11 #define PURE
12 #define FAR
13 #define THIS_ THIS,
15 /* forward declaration of the objects*/
16 typedef struct tagOLEADVISEHOLDER *LPOLEADVISEHOLDER, IOleAdviseHolder;
17 typedef struct tagADVISESINK *LPADVISESINK, IAdviseSink;
18 typedef struct tagENUMSTATDATA *LPENUMSTATDATA, IEnumSTATDATA;
21 /****************************************************************************
22 * OLE ID
25 DEFINE_OLEGUID(IID_IOleAdviseHolder, 0x00000111L, 0, 0);
28 /*****************************************************************************
29 * IOleAdviseHolder interface
31 #define THIS LPOLEADVISEHOLDER this
33 typedef struct IOleAdviseHolder_VTable
35 /*** IUnknown methods ***/
36 STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID * ppvObj) PURE;
37 STDMETHOD_(ULONG,AddRef) (THIS) PURE;
38 STDMETHOD_(ULONG,Release) (THIS) PURE;
40 /*** IOleAdviseHolder methods ***/
41 STDMETHOD(Advise)(THIS_ IAdviseSink *pAdvise, DWORD *pdwConnection) PURE;
42 STDMETHOD(Unadvise)(THIS_ DWORD dwConnection) PURE;
43 STDMETHOD(Enum_Advise)(THIS_ IEnumSTATDATA**ppenumAdvise) PURE;
44 STDMETHOD(SendOnRename)(THIS_ IMoniker *pmk) PURE;
45 STDMETHOD(SendOnSave)(THIS) PURE;
46 STDMETHOD(SendOnClose)(THIS) PURE;
47 } IOleAdviseHolder_VTable, *LPOLEADVISEHOLDER_VTABLE;
49 struct tagOLEADVISEHOLDER
51 LPOLEADVISEHOLDER_VTABLE lpvtbl;
52 DWORD ref;
55 #undef THIS
59 #undef PURE
60 #undef FAR
61 #undef THIS
62 #undef THIS_
63 #undef STDMETHOD
64 #undef STDMETHOD_
65 #endif /*_WINE_OLEOBJ_H*/