summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/g3dvl/vl_types.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_types.h
parentfb2732ff056a83418a379b81c1e5da50675c41ac (diff)
g3dvl: Modularized rendering, refactored to accommodate VAAPI, other APIs.
Diffstat (limited to 'src/gallium/state_trackers/g3dvl/vl_types.h')
-rw-r--r--src/gallium/state_trackers/g3dvl/vl_types.h124
1 files changed, 64 insertions, 60 deletions
diff --git a/src/gallium/state_trackers/g3dvl/vl_types.h b/src/gallium/state_trackers/g3dvl/vl_types.h
index 4d210c9e0a..504ba8ac81 100644
--- a/src/gallium/state_trackers/g3dvl/vl_types.h
+++ b/src/gallium/state_trackers/g3dvl/vl_types.h
@@ -1,102 +1,106 @@
#ifndef vl_types_h
#define vl_types_h
-enum VL_FORMAT
-{
- VL_FORMAT_YCBCR_420,
- VL_FORMAT_YCBCR_422,
- VL_FORMAT_YCBCR_444
-};
+#if 1 /*#ifdef X11*/
+#include <X11/Xlib.h>
-enum VL_PICTURE
-{
- VL_TOP_FIELD,
- VL_BOTTOM_FIELD,
- VL_FRAME_PICTURE
-};
+typedef Display* vlNativeDisplay;
+typedef Drawable vlNativeDrawable;
+#endif
+
+struct vlDisplay;
+struct vlScreen;
+struct vlContext;
+struct vlSurface;
-enum VL_FIELD_ORDER
+enum vlProfile
{
- VL_FIELD_FIRST,
- VL_FIELD_SECOND
+ vlProfileMpeg2Simple,
+ vlProfileMpeg2Main,
+
+ vlProfileCount
};
-enum VL_DCT_TYPE
+enum vlEntryPoint
{
- VL_DCT_FIELD_CODED,
- VL_DCT_FRAME_CODED
+ vlEntryPointIDCT,
+ vlEntryPointMC,
+ vlEntryPointCSC,
+
+ vlEntryPointCount
};
-enum VL_SAMPLE_TYPE
+enum vlFormat
{
- VL_FULL_SAMPLE,
- VL_DIFFERENCE_SAMPLE
+ vlFormatYCbCr420,
+ vlFormatYCbCr422,
+ vlFormatYCbCr444
};
-enum VL_MC_TYPE
+enum vlPictureType
{
- VL_FIELD_MC,
- VL_FRAME_MC,
- VL_DUAL_PRIME_MC,
- VL_16x8_MC = VL_FRAME_MC
+ vlPictureTypeTopField,
+ vlPictureTypeBottomField,
+ vlPictureTypeFrame
};
-struct VL_VERTEX4F
+enum vlMotionType
{
- float x, y, z, w;
+ vlMotionTypeField,
+ vlMotionTypeFrame,
+ vlMotionTypeDualPrime,
+ vlMotionType16x8
};
-struct VL_VERTEX2F
+enum vlFieldOrder
{
- float x, y;
+ vlFieldOrderFirst,
+ vlFieldOrderSecond
};
-struct VL_TEXCOORD2F
+enum vlDCTType
{
- float s, t;
+ vlDCTTypeFrameCoded,
+ vlDCTTypeFieldCoded
};
-struct VL_MC_VS_CONSTS
+struct vlVertex2f
{
- struct VL_VERTEX4F scale;
- struct VL_VERTEX4F mb_pos_trans;
- struct VL_VERTEX4F denorm;
- struct
- {
- struct VL_VERTEX4F top_field;
- struct VL_VERTEX4F bottom_field;
- } mb_tc_trans[2];
+ float x, y;
};
-struct VL_MC_FS_CONSTS
+struct vlVertex4f
{
- struct VL_VERTEX4F multiplier;
- struct VL_VERTEX4F bias;
- struct VL_VERTEX4F y_divider;
+ float x, y, z, w;
};
-struct VL_CSC_VS_CONSTS
+enum vlMacroBlockType
{
- struct VL_VERTEX4F src_scale;
- struct VL_VERTEX4F src_trans;
+ vlMacroBlockTypeIntra,
+ vlMacroBlockTypeFwdPredicted,
+ vlMacroBlockTypeBkwdPredicted,
+ vlMacroBlockTypeBiPredicted
};
-struct VL_CSC_FS_CONSTS
+struct vlMpeg2MacroBlock
{
- struct VL_VERTEX4F bias;
- float matrix[16];
+ unsigned int mbx, mby;
+ enum vlMacroBlockType mb_type;
+ enum vlMotionType mo_type;
+ enum vlDCTType dct_type;
+ int PMV[2][2][2];
+ unsigned int cbp;
+ short *blocks;
};
-struct VL_MOTION_VECTOR
+struct vlMpeg2MacroBlockBatch
{
- struct
- {
- int x, y;
- } top_field, bottom_field;
+ struct vlSurface *past_surface;
+ struct vlSurface *future_surface;
+ enum vlPictureType picture_type;
+ enum vlFieldOrder field_order;
+ unsigned int num_macroblocks;
+ struct vlMpeg2MacroBlock *macroblocks;
};
-struct VL_CONTEXT;
-struct VL_SURFACE;
-
#endif
-