ReactOS 0.4.16-dev-106-g10b08aa
precomp.h
Go to the documentation of this file.
1#ifndef _KS_PCH_
2#define _KS_PCH_
3
4#define _KSDDK_
5
6#include <ntddk.h>
7#include <portcls.h>
8#include <kcom.h>
9#include <pseh/pseh2.h>
10#include <ntstrsafe.h>
11
12#include "ksiface.h"
13#include "kstypes.h"
14#include "ksfunc.h"
15
16#define TAG_DEVICE_HEADER 'KSDH'
17#define REG_PINFLAG_B_MANY 0x4 /* strmif.h */
18#define MERIT_DO_NOT_USE 0x200000 /* dshow.h */
19
20#define DEFINE_KSPROPERTY_PINPROPOSEDATAFORMAT(PinSet,\
21 PropGeneral, PropInstances, PropIntersection)\
22DEFINE_KSPROPERTY_TABLE(PinSet) {\
23 DEFINE_KSPROPERTY_ITEM_PIN_CINSTANCES(PropInstances),\
24 DEFINE_KSPROPERTY_ITEM_PIN_CTYPES(PropGeneral),\
25 DEFINE_KSPROPERTY_ITEM_PIN_DATAFLOW(PropGeneral),\
26 DEFINE_KSPROPERTY_ITEM_PIN_DATARANGES(PropGeneral),\
27 DEFINE_KSPROPERTY_ITEM_PIN_DATAINTERSECTION(PropIntersection),\
28 DEFINE_KSPROPERTY_ITEM_PIN_INTERFACES(PropGeneral),\
29 DEFINE_KSPROPERTY_ITEM_PIN_MEDIUMS(PropGeneral),\
30 DEFINE_KSPROPERTY_ITEM_PIN_COMMUNICATION(PropGeneral),\
31 DEFINE_KSPROPERTY_ITEM_PIN_CATEGORY(PropGeneral),\
32 DEFINE_KSPROPERTY_ITEM_PIN_NAME(PropGeneral),\
33 DEFINE_KSPROPERTY_ITEM_PIN_CONSTRAINEDDATARANGES(PropGeneral),\
34 DEFINE_KSPROPERTY_ITEM_PIN_PROPOSEDATAFORMAT(PropGeneral)\
35}
36#define DEFINE_KSPROPERTY_GENEREAL_COMPONENTID(PinSet,\
37 PropGeneral)\
38DEFINE_KSPROPERTY_TABLE(PinSet) {\
39DEFINE_KSPROPERTY_ITEM_GENERAL_COMPONENTID(PropGeneral)\
40}
41
42#define DEFINE_KSPROPERTY_CONNECTIONSET(PinSet,\
43 PropStateHandler, PropDataFormatHandler, PropAllocatorFraming)\
44DEFINE_KSPROPERTY_TABLE(PinSet) {\
45 DEFINE_KSPROPERTY_ITEM_CONNECTION_STATE(PropStateHandler, PropStateHandler),\
46 DEFINE_KSPROPERTY_ITEM_CONNECTION_DATAFORMAT(PropDataFormatHandler, PropDataFormatHandler),\
47 DEFINE_KSPROPERTY_ITEM_CONNECTION_ALLOCATORFRAMING_EX(PropAllocatorFraming)\
48}
49
50#define DEFINE_KSPROPERTY_STREAMSET(PinSet,\
51 PropStreamAllocator, PropMasterClock, PropPipeId)\
52DEFINE_KSPROPERTY_TABLE(PinSet) {\
53 DEFINE_KSPROPERTY_ITEM_STREAM_ALLOCATOR(PropStreamAllocator, PropStreamAllocator),\
54 DEFINE_KSPROPERTY_ITEM_STREAM_MASTERCLOCK(PropMasterClock, PropMasterClock),\
55 DEFINE_KSPROPERTY_ITEM_STREAM_PIPE_ID(PropPipeId, PropPipeId)\
56}
57
58#endif /* _KS_PCH_ */