• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2009 Intel Corporation. All Rights Reserved.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the
6  * "Software"), to deal in the Software without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sub license, and/or sell copies of the Software, and to
9  * permit persons to whom the Software is furnished to do so, subject to
10  * the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the
13  * next paragraph) shall be included in all copies or substantial portions
14  * of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19  * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
20  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23  */
24 
25 
26 #ifndef VA_FOOL_H
27 #define VA_FOOL_H
28 
29 #include <stdio.h>
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 extern int fool_codec;
36 extern int fool_postp;
37 
38 #define VA_FOOL_FLAG_DECODE  0x1
39 #define VA_FOOL_FLAG_ENCODE  0x2
40 #define VA_FOOL_FLAG_JPEG    0x4
41 
42 #define VA_FOOL_FUNC(fool_func,...)            \
43     if (fool_codec) {                          \
44         ret = fool_func(__VA_ARGS__);          \
45     }
46 #define VA_FOOL_RETURN()                       \
47     if (fool_codec) {                          \
48         return VA_STATUS_SUCCESS;              \
49     }
50 
51 void va_FoolInit(VADisplay dpy);
52 int va_FoolEnd(VADisplay dpy);
53 
54 int va_FoolCreateConfig(
55         VADisplay dpy,
56         VAProfile profile,
57         VAEntrypoint entrypoint,
58         VAConfigAttrib *attrib_list,
59         int num_attribs,
60         VAConfigID *config_id /* out */
61 );
62 
63 
64 VAStatus va_FoolCreateBuffer(
65     VADisplay dpy,
66     VAContextID context,	/* in */
67     VABufferType type,		/* in */
68     unsigned int size,		/* in */
69     unsigned int num_elements,	/* in */
70     void *data,			/* in */
71     VABufferID *buf_id		/* out */
72 );
73 
74 VAStatus va_FoolMapBuffer (
75     VADisplay dpy,
76     VABufferID buf_id,	/* in */
77     void **pbuf 	/* out */
78 );
79 
80 VAStatus va_FoolUnmapBuffer(
81         VADisplay dpy,
82         VABufferID buf_id	/* in */
83 );
84 
85 VAStatus va_FoolBufferInfo (
86     VADisplay dpy,
87     VABufferID buf_id,  /* in */
88     VABufferType *type, /* out */
89     unsigned int *size,         /* out */
90     unsigned int *num_elements /* out */
91 );
92 
93 
94 #ifdef __cplusplus
95 }
96 #endif
97 
98 #endif
99