📄 provider.h
字号:
/*+++ *******************************************************************\
*
* Copyright and Disclaimer:
*
* ---------------------------------------------------------------
* This software is provided "AS IS" without warranty of any kind,
* either expressed or implied, including but not limited to the
* implied warranties of noninfringement, merchantability and/or
* fitness for a particular purpose.
* ---------------------------------------------------------------
*
* Copyright (c) 2004 Conexant Systems, Inc.
* All rights reserved.
*
\******************************************************************* ---*/
#ifndef PROVIDER_H
#define PROVIDER_H
//Ignore warnings for deprecated functions used in DXSDK headers
#pragma warning(disable : 4996)
#include <streams.h>
#pragma warning(default : 4996)
#include <winioctl.h>
#include <ks.h>
#include <ksproxy.h>
class CProvider
{
public:
CProvider();
virtual ~CProvider();
bool initialize(IBaseFilter* p_filter);
bool unInitialize();
bool isInitialized();
DWORD getStatus();
private:
int _ref_count;
IBaseFilter* _p_provider_filter;
IKsPropertySet* _properties;
};
//Input buffers have a KSPROPERTY in front of the input buffer.
//Output buffers are just the buffer.
//The following macro defines a type with the KSPROPERTY in front
// of another type.
#define PROPERTY_STRUCT(type) \
typedef struct _PROPERTY_##type \
{ \
KSPROPERTY property; \
type data; \
}PROPERTY_##type,*PPROPERTY_##type
PROPERTY_STRUCT(DWORD);
#endif // PROVIDER_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -