[THEMES]
[reactos.git] / reactos / drivers / multimedia / portcls.NEW / drm.c
1 /*
2 ReactOS Kernel Streaming
3 Port Class / Digital Rights Management
4
5 Author: Andrew Greenwood
6
7 Notes:
8 These are convenience functions for accessing DRM facilities, as
9 documented here:
10 http://www.osronline.com/ddkx/stream/aud-prop_9f77.htm
11 */
12
13 #include <portcls.h>
14 #include <drmk.h>
15
16 PORTCLASSAPI NTSTATUS NTAPI
17 PcAddContentHandlers(
18 IN ULONG ContentId,
19 IN PVOID *paHandlers,
20 IN ULONG NumHandlers)
21 {
22 return DrmAddContentHandlers(ContentId, paHandlers, NumHandlers);
23 }
24
25 PORTCLASSAPI NTSTATUS NTAPI
26 PcCreateContentMixed(
27 IN PULONG paContentId,
28 IN ULONG cContentId,
29 OUT PULONG pMixedContentId)
30 {
31 return DrmCreateContentMixed(paContentId, cContentId, pMixedContentId);
32 }
33
34 PORTCLASSAPI NTSTATUS NTAPI
35 PcDestroyContent(
36 IN ULONG ContentId)
37 {
38 return DrmDestroyContent(ContentId);
39 }
40
41 PORTCLASSAPI NTSTATUS NTAPI
42 PcForwardContentToDeviceObject(
43 IN ULONG ContentId,
44 IN PVOID Reserved,
45 IN PCDRMFORWARD DrmForward)
46 {
47 return DrmForwardContentToDeviceObject(ContentId, Reserved, DrmForward);
48 }
49
50 PORTCLASSAPI NTSTATUS NTAPI
51 PcForwardContentToFileObject(
52 IN ULONG ContentId,
53 IN PFILE_OBJECT FileObject)
54 {
55 return DrmForwardContentToFileObject(ContentId, FileObject);
56 }
57
58 PORTCLASSAPI NTSTATUS NTAPI
59 PcForwardContentToInterface(
60 IN ULONG ContentId,
61 IN PUNKNOWN pUnknown,
62 IN ULONG NumMethods)
63 {
64 return DrmForwardContentToInterface(ContentId, pUnknown, NumMethods);
65 }
66
67 PORTCLASSAPI NTSTATUS NTAPI
68 PcGetContentRights(
69 IN ULONG ContentId,
70 OUT PDRMRIGHTS DrmRights)
71 {
72 return DrmGetContentRights(ContentId, DrmRights);
73 }