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.
65 lines
1.9 KiB
65 lines
1.9 KiB
/*******************************************************************************
|
|
*
|
|
* (C) COPYRIGHT MICROSOFT CORP., 1997
|
|
*
|
|
* TITLE: IEnumDC.h
|
|
*
|
|
* VERSION: 1.0
|
|
*
|
|
* AUTHOR: ByronC
|
|
*
|
|
* DATE: 16 March, 1999
|
|
*
|
|
* DESCRIPTION:
|
|
* Declaration and definitions for the CEnumDC class, which implements the
|
|
* IEnumWIA_DEV_CAPS interface.
|
|
*
|
|
*******************************************************************************/
|
|
HRESULT CopyCaps(ULONG, WIA_DEV_CAP*, WIA_DEV_CAP*);
|
|
|
|
class CEnumDC : public IEnumWIA_DEV_CAPS
|
|
{
|
|
private:
|
|
|
|
ULONG m_ulFlags; // flag, indicating commands or events or both
|
|
ULONG m_cRef; // Object reference count.
|
|
ULONG m_ulIndex; // Current element.
|
|
LONG m_lCount; // Number of items.
|
|
WIA_DEV_CAP *m_pDeviceCapabilities; // Array descibing the capabilities
|
|
ACTIVE_DEVICE *m_pActiveDevice; // Device object
|
|
CWiaItem *m_pCWiaItem; // Parent mini drv
|
|
|
|
public:
|
|
|
|
//
|
|
// Constructor, initialization and destructor methods.
|
|
//
|
|
|
|
CEnumDC();
|
|
HRESULT Initialize(ULONG, CWiaItem*);
|
|
HRESULT Initialize(LONG, WIA_EVENT_HANDLER *);
|
|
~CEnumDC();
|
|
|
|
//
|
|
// IUnknown methods.
|
|
//
|
|
|
|
HRESULT _stdcall QueryInterface(const IID& iid, void** ppv);
|
|
ULONG _stdcall AddRef();
|
|
ULONG _stdcall Release();
|
|
|
|
//
|
|
// IEnumWIA_DEV_CAPS methods
|
|
//
|
|
|
|
HRESULT __stdcall Next(
|
|
ULONG celt,
|
|
WIA_DEV_CAP *rgelt,
|
|
ULONG *pceltFetched);
|
|
|
|
HRESULT __stdcall Skip(ULONG celt);
|
|
HRESULT __stdcall Reset(void);
|
|
HRESULT __stdcall Clone(IEnumWIA_DEV_CAPS **ppIEnum);
|
|
HRESULT __stdcall GetCount(ULONG *pcelt);
|
|
};
|
|
|