mirror of https://github.com/tongzx/nt5src
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.
73 lines
1.4 KiB
73 lines
1.4 KiB
/*++
|
|
|
|
Copyright (c) 2000 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
DataCallback.h
|
|
|
|
Abstract:
|
|
|
|
WIA data callback class
|
|
|
|
Author:
|
|
|
|
Hakki T. Bostanci (hakkib) 06-Apr-2000
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _DATACALLBACK_H_
|
|
#define _DATACALLBACK_H_
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
//
|
|
//
|
|
|
|
class CDataCallback : public IWiaDataCallback
|
|
{
|
|
public:
|
|
CDataCallback();
|
|
~CDataCallback();
|
|
|
|
// IUnknown interface
|
|
|
|
STDMETHOD(QueryInterface)(REFIID iid, LPVOID *ppvObj);
|
|
STDMETHOD_(ULONG, AddRef)();
|
|
STDMETHOD_(ULONG, Release)();
|
|
|
|
// IWiaDataCallback interface
|
|
|
|
STDMETHOD(BandedDataCallback) (
|
|
LONG lReason,
|
|
LONG lStatus,
|
|
LONG lPercentComplete,
|
|
LONG lOffset,
|
|
LONG lLength,
|
|
LONG lReserved,
|
|
LONG lResLength,
|
|
PBYTE pbBuffer
|
|
);
|
|
|
|
// Debugging / performance functions
|
|
|
|
void QueryStartTimes(LONG lStatus, LONG lPercentComplete);
|
|
void QueryStopTimes(LONG lStatus, LONG lPercentComplete);
|
|
void PrintTimes();
|
|
|
|
PBYTE m_pBuffer;
|
|
LONG m_lBufferSize;
|
|
|
|
LONG m_cRef;
|
|
|
|
LARGE_INTEGER m_TimeDeviceBegin;
|
|
LARGE_INTEGER m_TimeDeviceEnd;
|
|
LARGE_INTEGER m_TimeProcessBegin;
|
|
LARGE_INTEGER m_TimeProcessEnd;
|
|
LARGE_INTEGER m_TimeClientBegin;
|
|
LARGE_INTEGER m_TimeClientEnd;
|
|
};
|
|
|
|
#endif //_DATACALLBACK_H_
|