2009-08-10 11:10:37 +00:00
|
|
|
#ifndef BDAMEDIA_H__
|
|
|
|
#define BDAMEDIA_H__
|
2009-08-07 13:23:35 +00:00
|
|
|
|
|
|
|
typedef struct _KSP_BDA_NODE_PIN {
|
|
|
|
KSPROPERTY Property;
|
|
|
|
ULONG ulNodeType;
|
|
|
|
ULONG ulInputPinId;
|
|
|
|
ULONG ulOutputPinId;
|
|
|
|
} KSP_BDA_NODE_PIN, *PKSP_BDA_NODE_PIN;
|
2009-08-10 11:10:37 +00:00
|
|
|
|
2009-08-20 11:39:54 +00:00
|
|
|
typedef struct _KSM_BDA_PIN
|
|
|
|
{
|
|
|
|
KSMETHOD Method;
|
|
|
|
union
|
|
|
|
{
|
|
|
|
ULONG PinId;
|
|
|
|
ULONG PinType;
|
|
|
|
};
|
|
|
|
ULONG Reserved;
|
|
|
|
} KSM_BDA_PIN, * PKSM_BDA_PIN;
|
|
|
|
|
|
|
|
typedef struct _KSM_BDA_PIN_PAIR
|
|
|
|
{
|
|
|
|
KSMETHOD Method;
|
|
|
|
union
|
|
|
|
{
|
|
|
|
ULONG InputPinId;
|
|
|
|
ULONG InputPinType;
|
|
|
|
};
|
|
|
|
union
|
|
|
|
{
|
|
|
|
ULONG OutputPinId;
|
|
|
|
ULONG OutputPinType;
|
|
|
|
};
|
|
|
|
} KSM_BDA_PIN_PAIR, * PKSM_BDA_PIN_PAIR;
|
|
|
|
|
|
|
|
/* ------------------------------------------------------------
|
|
|
|
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)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_NODE_METHODS,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof(KSP_NODE),\
|
|
|
|
0,\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_NODE_PROPERTIES(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_NODE_PROPERTIES,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof(KSP_NODE),\
|
|
|
|
0,\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_NODE_EVENTS(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_NODE_EVENTS,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof(KSP_NODE),\
|
|
|
|
0,\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_CONTROLLING_PIN_ID(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_CONTROLLING_PIN_ID,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof(KSP_BDA_NODE_PIN),\
|
|
|
|
sizeof( ULONG),\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_NODE_DESCRIPTORS(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_NODE_DESCRIPTORS,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof(KSPROPERTY),\
|
|
|
|
0,\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
/* ------------------------------------------------------------
|
|
|
|
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)
|
|
|
|
|
2009-08-20 11:55:42 +00:00
|
|
|
/* ------------------------------------------------------------
|
|
|
|
BDA Pin Control Property {0DED49D5-A8B7-4d5d-97A1-12B0C195874D}
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define STATIC_KSPROPSETID_BdaPinControl \
|
|
|
|
0xded49d5, 0xa8b7, 0x4d5d, 0x97, 0xa1, 0x12, 0xb0, 0xc1, 0x95, 0x87, 0x4d
|
|
|
|
DEFINE_GUIDSTRUCT("0DED49D5-A8B7-4d5d-97A1-12B0C195874D", KSPROPSETID_BdaPinControl);
|
|
|
|
#define KSPROPSETID_BdaPinControl DEFINE_GUIDNAMED(KSPROPSETID_BdaPinControl)
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
KSPROPERTY_BDA_PIN_ID = 0,
|
|
|
|
KSPROPERTY_BDA_PIN_TYPE
|
|
|
|
} KSPROPERTY_BDA_PIN_CONTROL;
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_PIN_ID(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_PIN_ID,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof( KSPROPERTY),\
|
|
|
|
sizeof( ULONG),\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
|
|
|
#define DEFINE_KSPROPERTY_ITEM_BDA_PIN_TYPE(GetHandler, SetHandler)\
|
|
|
|
DEFINE_KSPROPERTY_ITEM(\
|
|
|
|
KSPROPERTY_BDA_PIN_TYPE,\
|
|
|
|
(GetHandler),\
|
|
|
|
sizeof( KSPROPERTY),\
|
|
|
|
sizeof( ULONG),\
|
|
|
|
FALSE,\
|
|
|
|
NULL, 0, NULL, NULL, 0)
|
|
|
|
|
2009-08-20 11:39:54 +00:00
|
|
|
|
2009-08-10 11:10:37 +00:00
|
|
|
#endif
|