[CMAKE]
[reactos.git] / drivers / ksfilter / ks / priv.h
1 #pragma once
2
3 #define _KSDDK_
4
5 #include <ntifs.h>
6 #include <ntddk.h>
7 #define NDEBUG
8 //#define YDEBUG
9 #include <debug.h>
10 #include <portcls.h>
11 #include <ks.h>
12 #include <kcom.h>
13 #include <pseh/pseh2.h>
14 #include <ntndk.h>
15
16 #include "ksfunc.h"
17 #include "kstypes.h"
18 #include "ksiface.h"
19
20 #include "ksmedia.h"
21 #include "bdamedia.h"
22 #include <swenum.h>
23
24
25 #define TAG_DEVICE_HEADER 'KSDH'
26 #define REG_PINFLAG_B_MANY 0x4 /* strmif.h */
27 #define MERIT_DO_NOT_USE 0x200000 /* dshow.h */
28
29 #define DEFINE_KSPROPERTY_PINPROPOSEDATAFORMAT(PinSet,\
30 PropGeneral, PropInstances, PropIntersection)\
31 DEFINE_KSPROPERTY_TABLE(PinSet) {\
32 DEFINE_KSPROPERTY_ITEM_PIN_CINSTANCES(PropInstances),\
33 DEFINE_KSPROPERTY_ITEM_PIN_CTYPES(PropGeneral),\
34 DEFINE_KSPROPERTY_ITEM_PIN_DATAFLOW(PropGeneral),\
35 DEFINE_KSPROPERTY_ITEM_PIN_DATARANGES(PropGeneral),\
36 DEFINE_KSPROPERTY_ITEM_PIN_DATAINTERSECTION(PropIntersection),\
37 DEFINE_KSPROPERTY_ITEM_PIN_INTERFACES(PropGeneral),\
38 DEFINE_KSPROPERTY_ITEM_PIN_MEDIUMS(PropGeneral),\
39 DEFINE_KSPROPERTY_ITEM_PIN_COMMUNICATION(PropGeneral),\
40 DEFINE_KSPROPERTY_ITEM_PIN_CATEGORY(PropGeneral),\
41 DEFINE_KSPROPERTY_ITEM_PIN_NAME(PropGeneral),\
42 DEFINE_KSPROPERTY_ITEM_PIN_CONSTRAINEDDATARANGES(PropGeneral),\
43 DEFINE_KSPROPERTY_ITEM_PIN_PROPOSEDATAFORMAT(PropGeneral)\
44 }
45
46 #define DEFINE_KSPROPERTY_CONNECTIONSET(PinSet,\
47 PropStateHandler, PropDataFormatHandler, PropAllocatorFraming)\
48 DEFINE_KSPROPERTY_TABLE(PinSet) {\
49 DEFINE_KSPROPERTY_ITEM_CONNECTION_STATE(PropStateHandler, PropStateHandler),\
50 DEFINE_KSPROPERTY_ITEM_CONNECTION_DATAFORMAT(PropDataFormatHandler, PropDataFormatHandler),\
51 DEFINE_KSPROPERTY_ITEM_CONNECTION_ALLOCATORFRAMING_EX(PropAllocatorFraming)\
52 }
53
54
55 #define DEFINE_KSPROPERTY_STREAMSET(PinSet,\
56 PropStreamAllocator, PropMasterClock, PropPipeId)\
57 DEFINE_KSPROPERTY_TABLE(PinSet) {\
58 DEFINE_KSPROPERTY_ITEM_STREAM_ALLOCATOR(PropStreamAllocator, PropStreamAllocator),\
59 DEFINE_KSPROPERTY_ITEM_STREAM_MASTERCLOCK(PropMasterClock, PropMasterClock),\
60 DEFINE_KSPROPERTY_ITEM_STREAM_PIPE_ID(PropPipeId, PropPipeId)\
61 }
62
63
64
65