summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/g3dvl/vl_surface.h
diff options
context:
space:
mode:
authorYounes Manton <younes.m@gmail.com>2008-08-16 13:04:23 -0400
committerYounes Manton <younes.m@gmail.com>2008-08-16 13:04:54 -0400
commit6858dd50c9b696c1c6044f5a403000f9d20b286b (patch)
tree03304cd6b3e129db06aa006ed0be066e8f0abd35 /src/gallium/state_trackers/g3dvl/vl_surface.h
parentfb2732ff056a83418a379b81c1e5da50675c41ac (diff)
g3dvl: Modularized rendering, refactored to accommodate VAAPI, other APIs.
Diffstat (limited to 'src/gallium/state_trackers/g3dvl/vl_surface.h')
-rw-r--r--src/gallium/state_trackers/g3dvl/vl_surface.h91
1 files changed, 38 insertions, 53 deletions
diff --git a/src/gallium/state_trackers/g3dvl/vl_surface.h b/src/gallium/state_trackers/g3dvl/vl_surface.h
index 9f56b77e1e..b975e131fa 100644
--- a/src/gallium/state_trackers/g3dvl/vl_surface.h
+++ b/src/gallium/state_trackers/g3dvl/vl_surface.h
@@ -1,81 +1,66 @@
#ifndef vl_surface_h
#define vl_surface_h
-#include <X11/Xlib.h>
#include "vl_types.h"
+#ifdef VL_INTERNAL
struct pipe_texture;
-struct VL_SURFACE
+struct vlSurface
{
- struct VL_CONTEXT *context;
+ struct vlScreen *screen;
+ struct vlContext *context;
unsigned int width;
unsigned int height;
- enum VL_FORMAT format;
+ enum vlFormat format;
struct pipe_texture *texture;
};
+#endif
-int vlCreateSurface(struct VL_CONTEXT *context, struct VL_SURFACE **surface);
+int vlCreateSurface
+(
+ struct vlScreen *screen,
+ unsigned int width,
+ unsigned int height,
+ enum vlFormat format,
+ struct vlSurface **surface
+);
-int vlDestroySurface(struct VL_SURFACE *surface);
+int vlDestroySurface
+(
+ struct vlSurface *surface
+);
-int vlRenderIMacroBlock
+int vlRenderMacroBlocksMpeg2
(
- enum VL_PICTURE picture_type,
- enum VL_FIELD_ORDER field_order,
- unsigned int mbx,
- unsigned int mby,
- unsigned int coded_block_pattern,
- enum VL_DCT_TYPE dct_type,
- short *blocks,
- struct VL_SURFACE *surface
+ struct vlMpeg2MacroBlockBatch *batch,
+ struct vlSurface *surface
);
-int vlRenderPMacroBlock
+int vlPutPicture
(
- enum VL_PICTURE picture_type,
- enum VL_FIELD_ORDER field_order,
- unsigned int mbx,
- unsigned int mby,
- enum VL_MC_TYPE mc_type,
- struct VL_MOTION_VECTOR *motion_vector,
- unsigned int coded_block_pattern,
- enum VL_DCT_TYPE dct_type,
- short *blocks,
- struct VL_SURFACE *ref_surface,
- struct VL_SURFACE *surface
+ struct vlSurface *surface,
+ vlNativeDrawable drawable,
+ int srcx,
+ int srcy,
+ int srcw,
+ int srch,
+ int destx,
+ int desty,
+ int destw,
+ int desth,
+ enum vlPictureType picture_type
);
-int vlRenderBMacroBlock
+struct vlScreen* vlSurfaceGetScreen
(
- enum VL_PICTURE picture_type,
- enum VL_FIELD_ORDER field_order,
- unsigned int mbx,
- unsigned int mby,
- enum VL_MC_TYPE mc_type,
- struct VL_MOTION_VECTOR *motion_vector,
- unsigned int coded_block_pattern,
- enum VL_DCT_TYPE dct_type,
- short *blocks,
- struct VL_SURFACE *past_surface,
- struct VL_SURFACE *future_surface,
- struct VL_SURFACE *surface
+ struct vlSurface *surface
);
-int vlPutSurface
+struct vlContext* vlBindToContext
(
- struct VL_SURFACE *surface,
- Drawable drawable,
- unsigned int srcx,
- unsigned int srcy,
- unsigned int srcw,
- unsigned int srch,
- unsigned int destx,
- unsigned int desty,
- unsigned int destw,
- unsigned int desth,
- enum VL_PICTURE picture_type
+ struct vlSurface *surface,
+ struct vlContext *context
);
#endif
-