84 lines
1.7 KiB
C
84 lines
1.7 KiB
C
|
//+-------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
//
|
||
|
// Copyright (C) Microsoft Corporation, 1999 - 1999
|
||
|
//
|
||
|
// File: ksdata.h
|
||
|
//
|
||
|
//--------------------------------------------------------------------------
|
||
|
|
||
|
#ifndef __KSDATA__
|
||
|
#define __KSDATA__
|
||
|
|
||
|
class CStandardDataTypeHandler :
|
||
|
public CUnknown,
|
||
|
public IKsDataTypeHandler {
|
||
|
|
||
|
public:
|
||
|
DECLARE_IUNKNOWN;
|
||
|
|
||
|
static CUnknown* CALLBACK
|
||
|
CreateInstance(
|
||
|
LPUNKNOWN UnkOuter,
|
||
|
HRESULT* hr
|
||
|
);
|
||
|
|
||
|
STDMETHODIMP
|
||
|
NonDelegatingQueryInterface(
|
||
|
REFIID riid,
|
||
|
PVOID* ppv
|
||
|
);
|
||
|
|
||
|
// Implement IKsDataTypeHandler
|
||
|
|
||
|
STDMETHODIMP
|
||
|
KsCompleteIoOperation(
|
||
|
IN IMediaSample *Sample,
|
||
|
IN PVOID StreamHeader,
|
||
|
IN KSIOOPERATION IoOperation,
|
||
|
IN BOOL Cancelled
|
||
|
);
|
||
|
|
||
|
STDMETHODIMP
|
||
|
KsIsMediaTypeInRanges(
|
||
|
IN PVOID DataRanges
|
||
|
);
|
||
|
|
||
|
STDMETHODIMP
|
||
|
KsPrepareIoOperation(
|
||
|
IN IMediaSample *Sample,
|
||
|
IN PVOID StreamHeader,
|
||
|
IN KSIOOPERATION IoOperation
|
||
|
);
|
||
|
|
||
|
STDMETHODIMP
|
||
|
KsQueryExtendedSize(
|
||
|
IN ULONG* ExtendedSize
|
||
|
);
|
||
|
|
||
|
STDMETHODIMP
|
||
|
KsSetMediaType(
|
||
|
const AM_MEDIA_TYPE *AmMediaType
|
||
|
);
|
||
|
|
||
|
private:
|
||
|
CLSID m_ClsID;
|
||
|
CMediaType *m_MediaType;
|
||
|
|
||
|
CStandardDataTypeHandler(
|
||
|
LPUNKNOWN UnkOuter,
|
||
|
TCHAR* Name,
|
||
|
REFCLSID ClsID,
|
||
|
HRESULT* hr
|
||
|
);
|
||
|
|
||
|
~CStandardDataTypeHandler();
|
||
|
|
||
|
};
|
||
|
|
||
|
#endif // __KSDATA__
|
||
|
|
||
|
|
||
|
|