| #ifndef	WINE_DSHOW_DEVENUM_H | 
 | #define	WINE_DSHOW_DEVENUM_H | 
 |  | 
 | /* | 
 | 		implements CLSID_SystemDeviceEnum. | 
 |  | 
 | 	- At least, the following interfaces should be implemented: | 
 |  | 
 | 	IUnknown | 
 | 		+ ICreateDevEnum | 
 |  */ | 
 |  | 
 | #include "iunk.h" | 
 |  | 
 | typedef struct SDE_ICreateDevEnumImpl | 
 | { | 
 | 	ICOM_VFIELD(ICreateDevEnum); | 
 | } SDE_ICreateDevEnumImpl; | 
 |  | 
 | typedef struct CSysDevEnum | 
 | { | 
 | 	QUARTZ_IUnkImpl	unk; | 
 | 	SDE_ICreateDevEnumImpl	createdevenum; | 
 | } CSysDevEnum; | 
 |  | 
 | #define	CSysDevEnum_THIS(iface,member)		CSysDevEnum*	This = ((CSysDevEnum*)(((char*)iface)-offsetof(CSysDevEnum,member))) | 
 |  | 
 | HRESULT QUARTZ_CreateSystemDeviceEnum(IUnknown* punkOuter,void** ppobj); | 
 |  | 
 |  | 
 | HRESULT CSysDevEnum_InitICreateDevEnum( CSysDevEnum* psde ); | 
 | void CSysDevEnum_UninitICreateDevEnum( CSysDevEnum* psde ); | 
 |  | 
 |  | 
 | #endif	/* WINE_DSHOW_DEVENUM_H */ | 
 |  |