va_buffer.c revision 664f10625a74a7e0ed1bfd44b2fb6f44bd8828a2
1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)/**************************************************************************
2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Copyright 2010 Thomas Balling Sørensen & Orasanu Lucian.
4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * All Rights Reserved.
5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Permission is hereby granted, free of charge, to any person obtaining a
7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * copy of this software and associated documentation files (the
8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * "Software"), to deal in the Software without restriction, including
9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * without limitation the rights to use, copy, modify, merge, publish,
10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * distribute, sub license, and/or sell copies of the Software, and to
11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * permit persons to whom the Software is furnished to do so, subject to
12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * the following conditions:
13c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * The above copyright notice and this permission notice (including the
15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * next paragraph) shall be included in all copies or substantial portions
16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * of the Software.
17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR
22424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) *
26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) **************************************************************************/
27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include <va/va.h>
29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include <va/va_backend.h>
30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "va_private.h"
31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
33868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)VAStatus vlVaCreateBuffer(		VADriverContextP ctx,
34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                VAContextID context,
35c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                VABufferType type,
36868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)                                unsigned int size,
37c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                unsigned int num_elements,
38c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                void *data,
39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                VABufferID *buf_id)
40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles){
41c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (!ctx)
42c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		return VA_STATUS_ERROR_INVALID_CONTEXT;
43c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
44c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	return VA_STATUS_ERROR_UNIMPLEMENTED;
45c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
46c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
47c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)VAStatus vlVaBufferSetNumElements(	VADriverContextP ctx,
48a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)                                    VABufferID buf_id,
49a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)                                    unsigned int num_elements)
50a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles){
51a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)	if (!ctx)
52a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)		return VA_STATUS_ERROR_INVALID_CONTEXT;
53c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
54c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	return VA_STATUS_ERROR_UNIMPLEMENTED;
55c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
56c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
57c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)VAStatus vlVaMapBuffer(			VADriverContextP ctx,
58c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                VABufferID buf_id,
59c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                void **pbuff)
60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles){
61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (!ctx)
62c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		return VA_STATUS_ERROR_INVALID_CONTEXT;
63c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
64c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	return VA_STATUS_ERROR_UNIMPLEMENTED;
65c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
66c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
67c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)VAStatus vlVaUnmapBuffer(		VADriverContextP ctx,
68c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                VABufferID buf_id)
69c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles){
70c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (!ctx)
71c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		return VA_STATUS_ERROR_INVALID_CONTEXT;
72c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
73c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	return VA_STATUS_ERROR_UNIMPLEMENTED;
74c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
75c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
76c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)VAStatus vlVaDestroyBuffers(		VADriverContextP ctx,
77c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                                    VABufferID buffer_id)
78c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles){
79c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	if (!ctx)
80c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)		return VA_STATUS_ERROR_INVALID_CONTEXT;
81c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
82c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)	return VA_STATUS_ERROR_UNIMPLEMENTED;
83c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}
84
85VAStatus vlVaBufferInfo(		VADriverContextP ctx,
86                                VAContextID context,
87                                VABufferID buf_id,
88                                VABufferType *type,
89                                unsigned int *size,
90                                unsigned int *num_elements)
91{
92	if (!ctx)
93		return VA_STATUS_ERROR_INVALID_CONTEXT;
94
95	return VA_STATUS_ERROR_UNIMPLEMENTED;
96}
97