xref: /aosp_15_r20/external/mesa3d/src/gallium/frontends/nine/device9video.h (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1 /*
2  * Copyright 2011 Joakim Sindholt <[email protected]>
3  * SPDX-License-Identifier: MIT
4  */
5 
6 #ifndef _NINE_DEVICE9VIDEO_H_
7 #define _NINE_DEVICE9VIDEO_H_
8 
9 #include "iunknown.h"
10 
11 struct NineDevice9Video
12 {
13     struct NineUnknown base;
14 };
15 static inline struct NineDevice9Video *
NineDevice9Video(void * data)16 NineDevice9Video( void *data )
17 {
18     return (struct NineDevice9Video *)data;
19 }
20 
21 HRESULT NINE_WINAPI
22 NineDevice9Video_GetContentProtectionCaps( struct NineDevice9Video *This,
23                                            const GUID *pCryptoType,
24                                            const GUID *pDecodeProfile,
25                                            D3DCONTENTPROTECTIONCAPS *pCaps );
26 
27 HRESULT NINE_WINAPI
28 NineDevice9Video_CreateAuthenticatedChannel( struct NineDevice9Video *This,
29                                              D3DAUTHENTICATEDCHANNELTYPE ChannelType,
30                                              IDirect3DAuthenticatedChannel9 **ppAuthenticatedChannel,
31                                              HANDLE *pChannelHandle );
32 
33 HRESULT NINE_WINAPI
34 NineDevice9Video_CreateCryptoSession( struct NineDevice9Video *This,
35                                       const GUID *pCryptoType,
36                                       const GUID *pDecodeProfile,
37                                       IDirect3DCryptoSession9 **ppCryptoSession,
38                                       HANDLE *pCryptoHandle );
39 
40 #endif /* _NINE_DEVICE9VIDEO_H_ */
41