s3c6410_image_rotator.h

来自「SAMSUNG S3C6410 CPU BSP for winmobile6」· C头文件 代码 · 共 69 行

H
69
字号
#ifndef __S3C6410_IMAGE_ROTATOR_H__
#define __S3C6410_IMAGE_ROTATOR_H__

#if __cplusplus
extern "C"
{
#endif

typedef enum
{
	ROT_FORMAT_YUV420 = 0,
	ROT_FORMAT_YUV422,
	ROT_FORMAT_RGB565,
	ROT_FORMAT_RGB888
} ROTATOR_IMAGE_FORMAT;

typedef enum
{
	ROT_OP_ROTATE_90 = 0,
	ROT_OP_ROTATE_180,
	ROT_OP_ROTATE_270,
	ROT_OP_FLIP_VERTICAL,
	ROT_OP_FLIP_HORIZONTAL
} ROTATOR_OPERATION_TYPE;

typedef enum
{
	ROT_SUCCESS,
	ROT_ERROR_NULL_PARAMETER,
	ROT_ERROR_ILLEGAL_PARAMETER,
	ROT_ERROR_NOT_INITIALIZED,
	ROT_ERROR_NOT_IMPLEMENTED,
	ROT_ERROR_XXX
} ROT_ERROR;

typedef enum
{
	ROTATOR_IDLE = 0,
	ROTATOR_BUSY,
	ROTATOR_BUSY2
} ROTATOR_OP_STATUS;

typedef struct _tRotatorStatus
{
	unsigned int	uiCurLineNumber;
	BOOL		bIntPending;
	ROTATOR_OP_STATUS eOpStatus;
} tRotatorStatus;

ROT_ERROR Rotator_initialize_register_address(void *pRotatorReg);
ROT_ERROR Rotator_initialize(ROTATOR_IMAGE_FORMAT eFormat, ROTATOR_OPERATION_TYPE eOperation, unsigned int uiSrcWidth, unsigned int uiSrcHeight);
ROT_ERROR Rotator_set_source_buffer(unsigned int AddrRGBY, unsigned int AddrCb, unsigned int AddrCr);
ROT_ERROR Rotator_set_destination_buffer(unsigned int AddrRGBY, unsigned int AddrCb, unsigned int AddrCr);

void Rotator_start(void);
void Rotator_stop(void);

void Rotator_enable_interrupt(void);
void Rotator_disable_interrupt(void);
BOOL Rotator_clear_interrupt_pending(void);

ROT_ERROR Rotator_get_status(tRotatorStatus *pStatus);


#if __cplusplus
}
#endif

#endif	// __S3C6410_IMAGE_ROTATOR_H__

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?