2 * Copyright (c) 2009 Intel Corporation. All Rights Reserved.
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:
12 * The above copyright notice and this permission notice (including the
13 * next paragraph) shall be included in all copies or substantial portions
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.
32 extern int trace_flag
;
34 #define VA_TRACE_FLAG_LOG 0x1
35 #define VA_TRACE_FLAG_BUFDATA 0x2
36 #define VA_TRACE_FLAG_CODEDBUF 0x4
37 #define VA_TRACE_FLAG_SURFACE_DECODE 0x8
38 #define VA_TRACE_FLAG_SURFACE_ENCODE 0x10
39 #define VA_TRACE_FLAG_SURFACE_JPEG 0x20
40 #define VA_TRACE_FLAG_SURFACE (VA_TRACE_FLAG_SURFACE_DECODE | \
41 VA_TRACE_FLAG_SURFACE_ENCODE | \
42 VA_TRACE_FLAG_SURFACE_JPEG)
44 #define VA_TRACE_LOG(trace_func,...) \
45 if (trace_flag & VA_TRACE_FLAG_LOG) { \
46 trace_func(__VA_ARGS__); \
48 #define VA_TRACE_ALL(trace_func,...) \
50 trace_func(__VA_ARGS__); \
54 void va_TraceInit(VADisplay dpy
);
56 void va_TraceEnd(VADisplay dpy
);
59 void va_TraceInitialize (
61 int *major_version
, /* out */
62 int *minor_version
/* out */
66 void va_TraceTerminate (
71 void va_TraceCreateConfig(
74 VAEntrypoint entrypoint
,
75 VAConfigAttrib
*attrib_list
,
77 VAConfigID
*config_id
/* out */
81 void va_TraceCreateSurfaces(
87 VASurfaceID
*surfaces
, /* out */
88 VASurfaceAttrib
*attrib_list
,
89 unsigned int num_attribs
93 void va_TraceDestroySurfaces(
95 VASurfaceID
*surface_list
,
100 void va_TraceCreateContext(
102 VAConfigID config_id
,
106 VASurfaceID
*render_targets
,
107 int num_render_targets
,
108 VAContextID
*context
/* out */
112 void va_TraceCreateBuffer (
114 VAContextID context
, /* in */
115 VABufferType type
, /* in */
116 unsigned int size
, /* in */
117 unsigned int num_elements
, /* in */
119 VABufferID
*buf_id
/* out */
123 void va_TraceDestroyBuffer (
125 VABufferID buf_id
/* in */
129 void va_TraceMapBuffer (
131 VABufferID buf_id
, /* in */
132 void **pbuf
/* out */
137 void va_TraceBeginPicture(
140 VASurfaceID render_target
144 void va_TraceRenderPicture(
152 void va_TraceEndPicture(
159 void va_TraceSyncSurface(
161 VASurfaceID render_target
165 void va_TraceQuerySurfaceAttributes(
168 VASurfaceAttrib
*attrib_list
,
169 unsigned int *num_attribs
173 void va_TraceQuerySurfaceStatus(
175 VASurfaceID render_target
,
176 VASurfaceStatus
*status
/* out */
180 void va_TraceQuerySurfaceError(
183 VAStatus error_status
,
184 void **error_info
/*out*/
189 void va_TraceMaxNumDisplayAttributes (
195 void va_TraceQueryDisplayAttributes (
197 VADisplayAttribute
*attr_list
, /* out */
198 int *num_attributes
/* out */
202 void va_TraceGetDisplayAttributes (
204 VADisplayAttribute
*attr_list
,
209 void va_TraceSetDisplayAttributes (
211 VADisplayAttribute
*attr_list
,
215 /* extern function called by display side */
216 void va_TracePutSurface (
219 void *draw
, /* the target Drawable */
226 unsigned short destw
,
227 unsigned short desth
,
228 VARectangle
*cliprects
, /* client supplied clip list */
229 unsigned int number_cliprects
, /* number of clip rects in the clip list */
230 unsigned int flags
/* de-interlacing flags */
238 #endif /* VA_TRACE_H */