📄 bdamedia.h
字号:
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_LIST_SIZE = 0,
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_LIST,
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_MODE
} KSPROPERTY_BDA_IPv4_FILTER;
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv4_FILTER_MULTICAST_LIST_SIZE(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_LIST_SIZE,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(ULONG),\
FALSE,\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv4_FILTER_MULTICAST_LIST(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_LIST,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(BDA_IPv4_ADDRESS_LIST),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv4_FILTER_MULTICAST_MODE(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv4_FILTER_MULTICAST_MODE,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(BDA_MULTICAST_MODE),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
//------------------------------------------------------------
//
// BDA Network IPv6 Filter Property Set
//
// {E1785A74-2A23-4fb3-9245-A8F88017EF33}
//
#define STATIC_KSPROPSETID_BdaIPv6Filter \
0xe1785a74, 0x2a23, 0x4fb3, 0x92, 0x45, 0xa8, 0xf8, 0x80, 0x17, 0xef, 0x33
DEFINE_GUIDSTRUCT("E1785A74-2A23-4fb3-9245-A8F88017EF33", KSPROPSETID_BdaIPv6Filter);
#define KSPROPSETID_BdaIPv6Filter DEFINE_GUIDNAMED(KSPROPSETID_BdaIPv6Filter)
typedef enum {
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_LIST_SIZE = 0,
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_LIST,
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_MODE
} KSPROPERTY_BDA_IPv6_FILTER;
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv6_FILTER_MULTICAST_LIST_SIZE(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_LIST_SIZE,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(ULONG),\
FALSE,\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv6_FILTER_MULTICAST_LIST(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_LIST,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(BDA_IPv6_ADDRESS_LIST),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_IPv6_FILTER_MULTICAST_MODE(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_IPv6_FILTER_MULTICAST_MODE,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof(BDA_MULTICAST_MODE),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
//------------------------------------------------------------
//
//
// BDA Signal Statistics Property Set
//
// Used to get signal statistics from a control node or a pin.
// Set NodeId == -1 to get properties from the pin.
//
// {1347D106-CF3A-428a-A5CB-AC0D9A2A4338}
//
#define STATIC_KSPROPSETID_BdaSignalStats \
0x1347d106, 0xcf3a, 0x428a, 0xa5, 0xcb, 0xac, 0xd, 0x9a, 0x2a, 0x43, 0x38
DEFINE_GUIDSTRUCT("1347D106-CF3A-428a-A5CB-AC0D9A2A4338", KSPROPSETID_BdaSignalStats);
#define KSPROPSETID_BdaSignalStats DEFINE_GUIDNAMED(KSPROPSETID_BdaSignalStats)
typedef enum {
KSPROPERTY_BDA_SIGNAL_STRENGTH = 0,
KSPROPERTY_BDA_SIGNAL_QUALITY,
KSPROPERTY_BDA_SIGNAL_PRESENT,
KSPROPERTY_BDA_SIGNAL_LOCKED,
KSPROPERTY_BDA_SAMPLE_TIME
} KSPROPERTY_BDA_SIGNAL_STATS;
// OPTIONAL
// Carrier strength in mDb (1/1000 of a DB).
//
// A strength of 0 is nominal strength as expected for the given
// type of broadcast network.
//
// Sub-nominal strengths are reported as positive mDb
//
// Super-nominal strengths are reported as negative mDb
//
#define DEFINE_KSPROPERTY_ITEM_BDA_SIGNAL_STRENGTH(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_SIGNAL_STRENGTH,\
(GetHandler),\
sizeof(KSP_NODE),\
sizeof(LONG),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
// OPTIONAL
// Amount of data successfully extracted from the signal as a percent.
//
// Signal Quality is usually reported by the demodulation node and is
// a representation of how much of the original data could be extracted
// from the signal.
//
// In the case of Analog Signals, this percentage can be
// computed by examining the timing of HSync and VSync as will as by
// looking at information contained in HBlanking and VBlanking intervals.
//
// In the case of Digital Signals, this percentage can be
// computed by examining packet CRCs and FEC confidence values.
//
// 100 percent is ideal.
// 95 percent shows very little (almost unnoticable) artifacts when rendered.
// 90 percent contains few enough artifacts as to be easily viewable.
// 80 percent is the minimum level to be viewable.
// 60 percent is the minimum level to expect data services
// (including EPG) to work.
// 20 percent indicates that the demodulator knows that a properly modulated
// signal exists but can't produce enough data to be useful.
//
#define DEFINE_KSPROPERTY_ITEM_BDA_SIGNAL_QUALITY(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_SIGNAL_QUALITY,\
(GetHandler),\
sizeof(KSP_NODE),\
sizeof(LONG),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
// REQUIRED
// True if a signal carrier is present.
//
// Should be returned by the RF tuner node.
//
#define DEFINE_KSPROPERTY_ITEM_BDA_SIGNAL_PRESENT(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_SIGNAL_PRESENT,\
(GetHandler),\
sizeof(KSP_NODE),\
sizeof(BOOL),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
// REQUIRED
// True if the signal can be locked.
//
// Ususally represents PLL lock when returned by the RF Tuner Node.
//
// Represents Signal Quality of at least 20% when returned by the
// demodulator node.
//
#define DEFINE_KSPROPERTY_ITEM_BDA_SIGNAL_LOCKED(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_SIGNAL_LOCKED,\
(GetHandler),\
sizeof(KSP_NODE),\
sizeof(BOOL),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
// OPTIONAL
// Indicates the sample time overwhich signal level and quality are
// averaged.
//
// Each time a signal statistics property is requested, the node should
// report the average value for the last n milliseconds where n is the
// value set by this property. If no value is set or if the driver does
// not support this property, the driver should default to
// 100 millisecond sample times.
//
// The driver may report values for the most recently completed sample
// period.
//
#define DEFINE_KSPROPERTY_ITEM_BDA_SAMPLE_TIME(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_SAMPLE_TIME,\
(GetHandler),\
sizeof(KSP_NODE),\
sizeof(LONG),\
(SetHandler),\
NULL, 0, NULL, NULL, 0)
//------------------------------------------------------------
//
//
// BDA Change Sync Method Set
//
// {FD0A5AF3-B41D-11d2-9C95-00C04F7971E0}
//
#define STATIC_KSMETHODSETID_BdaChangeSync \
0xfd0a5af3, 0xb41d, 0x11d2, 0x9c, 0x95, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
DEFINE_GUIDSTRUCT("FD0A5AF3-B41D-11d2-9C95-00C04F7971E0", KSMETHODSETID_BdaChangeSync);
#define KSMETHODSETID_BdaChangeSync DEFINE_GUIDNAMED(KSMETHODSETID_BdaChangeSync)
typedef enum {
KSMETHOD_BDA_START_CHANGES = 0,
KSMETHOD_BDA_CHECK_CHANGES,
KSMETHOD_BDA_COMMIT_CHANGES,
KSMETHOD_BDA_GET_CHANGE_STATE
} KSMETHOD_BDA_CHANGE_SYNC;
#define DEFINE_KSMETHOD_ITEM_BDA_START_CHANGES(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_START_CHANGES,\
KSMETHOD_TYPE_NONE,\
(MethodHandler),\
sizeof(KSMETHOD),\
0,\
SupportHandler)
#define DEFINE_KSMETHOD_ITEM_BDA_CHECK_CHANGES(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_CHECK_CHANGES,\
KSMETHOD_TYPE_NONE,\
(MethodHandler),\
sizeof(KSMETHOD),\
0,\
SupportHandler)
#define DEFINE_KSMETHOD_ITEM_BDA_COMMIT_CHANGES(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_COMMIT_CHANGES,\
KSMETHOD_TYPE_NONE,\
(MethodHandler),\
sizeof(KSMETHOD),\
0,\
SupportHandler)
#define DEFINE_KSMETHOD_ITEM_BDA_GET_CHANGE_STATE(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_GET_CHANGE_STATE,\
KSMETHOD_TYPE_READ,\
(MethodHandler),\
sizeof(KSMETHOD),\
0,\
SupportHandler)
//------------------------------------------------------------
//
//
// BDA Device Configuration Method Set
//
// {71985F45-1CA1-11d3-9CC8-00C04F7971E0}
//
#define STATIC_KSMETHODSETID_BdaDeviceConfiguration \
0x71985f45, 0x1ca1, 0x11d3, 0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
DEFINE_GUIDSTRUCT("71985F45-1CA1-11d3-9CC8-00C04F7971E0", KSMETHODSETID_BdaDeviceConfiguration);
#define KSMETHODSETID_BdaDeviceConfiguration DEFINE_GUIDNAMED(KSMETHODSETID_BdaDeviceConfiguration)
typedef enum {
KSMETHOD_BDA_CREATE_PIN_FACTORY = 0,
KSMETHOD_BDA_DELETE_PIN_FACTORY,
KSMETHOD_BDA_CREATE_TOPOLOGY
} KSMETHOD_BDA_DEVICE_CONFIGURATION;
#define DEFINE_KSMETHOD_ITEM_BDA_CREATE_PIN_FACTORY(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_CREATE_PIN_FACTORY,\
KSMETHOD_TYPE_READ,\
(MethodHandler),\
sizeof(KSM_BDA_PIN),\
sizeof(ULONG),\
SupportHandler)
#define DEFINE_KSMETHOD_ITEM_BDA_DELETE_PIN_FACTORY(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_DELETE_PIN_FACTORY,\
KSMETHOD_TYPE_NONE,\
(MethodHandler),\
sizeof(KSM_BDA_PIN),\
0,\
SupportHandler)
#define DEFINE_KSMETHOD_ITEM_BDA_CREATE_TOPOLOGY(MethodHandler, SupportHandler)\
DEFINE_KSMETHOD_ITEM(\
KSMETHOD_BDA_CREATE_TOPOLOGY,\
KSMETHOD_TYPE_WRITE,\
(MethodHandler),\
sizeof(KSM_BDA_PIN_PAIR),\
0,\
SupportHandler)
//------------------------------------------------------------
//
//
// BDA Topology Property Set
//
// {A14EE835-0A23-11d3-9CC7-00C04F7971E0}
//
#define STATIC_KSPROPSETID_BdaTopology \
0xa14ee835, 0x0a23, 0x11d3, 0x9c, 0xc7, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
DEFINE_GUIDSTRUCT("A14EE835-0A23-11d3-9CC7-00C04F7971E0", KSPROPSETID_BdaTopology);
#define KSPROPSETID_BdaTopology DEFINE_GUIDNAMED(KSPROPSETID_BdaTopology)
typedef enum {
KSPROPERTY_BDA_NODE_TYPES,
KSPROPERTY_BDA_PIN_TYPES,
KSPROPERTY_BDA_TEMPLATE_CONNECTIONS,
KSPROPERTY_BDA_NODE_METHODS,
KSPROPERTY_BDA_NODE_PROPERTIES,
KSPROPERTY_BDA_NODE_EVENTS,
KSPROPERTY_BDA_CONTROLLING_PIN_ID,
KSPROPERTY_BDA_NODE_DESCRIPTORS
}KSPROPERTY_BDA_TOPOLOGY;
#define DEFINE_KSPROPERTY_ITEM_BDA_NODE_TYPES(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_NODE_TYPES,\
(GetHandler),\
sizeof(KSPROPERTY),\
0,\
FALSE,\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_PIN_TYPES(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_PIN_TYPES,\
(GetHandler),\
sizeof(KSPROPERTY),\
0,\
FALSE,\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_TEMPLATE_CONNECTIONS(GetHandler, SetHandler)\
DEFINE_KSPROPERTY_ITEM(\
KSPROPERTY_BDA_TEMPLATE_CONNECTIONS,\
(GetHandler),\
sizeof(KSPROPERTY),\
sizeof( BDA_TEMPLATE_CONNECTION),\
FALSE,\
NULL, 0, NULL, NULL, 0)
#define DEFINE_KSPROPERTY_ITEM_BDA_NODE_METHODS(GetHandler, SetHandler)\
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -