Remove SetHWColorKey, SetHWAlpha; Tune prototype of FillHWRect; Add CopyHWSurface()

This commit is contained in:
Vincent Wei
2023-07-23 12:01:18 +08:00
parent 6422cb8568
commit 6a83f2efbf
41 changed files with 83 additions and 2316 deletions
+4 -46
View File
@@ -165,28 +165,6 @@ typedef struct _DrmSurfaceBuffer {
uint8_t* buff;
} DrmSurfaceBuffer;
typedef enum {
BLIT_COPY_NORMAL = 0,
BLIT_COPY_SCALE,
BLIT_COPY_ROT_90,
BLIT_COPY_ROT_180,
BLIT_COPY_ROT_270,
BLIT_COPY_FLIP_H,
BLIT_COPY_FLIP_V,
BLIT_COPY_FLIP_H_V
} BlitCopyOperation;
typedef enum {
BLIT_COLORKEY_NONE = 0,
BLIT_COLORKEY_NORMAL,
BLIT_COLORKEY_INVERTED,
} BlitKeyOperation;
typedef enum {
BLIT_ALPHA_NONE = 0,
BLIT_ALPHA_SET,
} BlitAlphaOperation;
typedef struct _DrmBlitOperations {
BlitCopyOperation cpy;
BlitKeyOperation key;
@@ -335,35 +313,15 @@ typedef struct _DrmDriverOps {
const DrmBlitOperations *ops);
/**
* This operation copies the whole bits from a source buffer to
* a destination buffer.
* This operation copies the pixels from the source buffer to
* the destination buffer, with or without scaling, rotation, and flip.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated copy operation between buffers.
*/
int (* copy_buff) (DrmDriver *driver,
DrmSurfaceBuffer* src_buf, DrmSurfaceBuffer* dst_buf);
/**
* This operation rotates the bits from a source buffer to
* a destination buffer.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated rotation operation between buffers.
*/
int (* rotate_buff) (DrmDriver *driver,
DrmSurfaceBuffer* src_buf, DrmSurfaceBuffer* dst_buf,
BlitCopyOperation op);
/**
* This operation flips the bits from a source buffer to
* a destination buffer.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated flip operation between buffers.
*/
int (* flip_buff) (DrmDriver *driver,
DrmSurfaceBuffer* src_buf, DrmSurfaceBuffer* dst_buf,
DrmSurfaceBuffer* src_buf, const GAL_Rect* src_rc,
DrmSurfaceBuffer* dst_buf, const GAL_Rect* dst_rc,
BlitCopyOperation op);
} DrmDriverOps;
+21
View File
@@ -5162,6 +5162,27 @@ MG_EXPORT BOOL GUIAPI FillBitmapPartInBox (HDC hdc, int box_x, int box_y,
int box_w, int box_h, const BITMAP* pbmp, int bmp_x, int bmp_y,
int bmp_w, int bmp_h);
typedef enum {
BLIT_COPY_TRANSLATE = 0,
BLIT_COPY_ROT_90,
BLIT_COPY_ROT_180,
BLIT_COPY_ROT_270,
BLIT_COPY_FLIP_H,
BLIT_COPY_FLIP_V,
BLIT_COPY_FLIP_H_V
} BlitCopyOperation;
typedef enum {
BLIT_COLORKEY_NONE = 0,
BLIT_COLORKEY_NORMAL,
BLIT_COLORKEY_INVERTED,
} BlitKeyOperation;
typedef enum {
BLIT_ALPHA_NONE = 0,
BLIT_ALPHA_SET,
} BlitAlphaOperation;
/**
* The color blend mothed.
*