sve_api.h

来自「SAMSUNG S3C6410 CPU BSP for winmobile6」· C头文件 代码 · 共 433 行 · 第 1/2 页

H
433
字号
#define	IOCTL_SVE_POST_SET_PROCESSING_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_POST_SET_PROCESSING_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_POST_WAIT_PROCESSING_DONE	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_POST_WAIT_PROCESSING_DONE, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_POST_GET_PROCESSING_STATUS	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_POST_GET_PROCESSING_STATUS, METHOD_BUFFERED, FILE_ANY_ACCESS)

// Local Path IOCTL
#define	IOCTL_SVE_LOCALPATH_SET_WIN0_START	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN0_START, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_LOCALPATH_SET_WIN0_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN0_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_LOCALPATH_SET_WIN1_START	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN1_START, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_LOCALPATH_SET_WIN1_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN1_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_LOCALPATH_SET_WIN2_START	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN2_START, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_LOCALPATH_SET_WIN2_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_LOCALPATH_SET_WIN2_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)

// Image Rotator IOCTL
#define	IOCTL_SVE_ROTATOR_SET_OPERATION_PARAM	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_SET_OPERATION_PARAM, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_SET_SOURCE_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_SET_SOURCE_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_SET_DESTINATION_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_SET_DESTINATION_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_SET_OPERATION_START	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_SET_OPERATION_START, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_SET_OPERATION_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_SET_OPERATION_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_WAIT_OPERATION_DONE	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_WAIT_OPERATION_DONE, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_ROTATOR_GET_STATUS	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_ROTATOR_GET_STATUS, METHOD_BUFFERED, FILE_ANY_ACCESS)

// TV Scaler IOCTL
#define	IOCTL_SVE_TVSC_SET_PROCESSING_PARAM	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_PROCESSING_PARAM, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_SOURCE_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_SOURCE_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_NEXT_SOURCE_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_NEXT_SOURCE_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_DESTINATION_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_DESTINATION_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_NEXT_DESTINATION_BUFFER	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_NEXT_DESTINATION_BUFFER, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_PROCESSING_START	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_PROCESSING_START, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_SET_PROCESSING_STOP	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_SET_PROCESSING_STOP, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_WAIT_PROCESSING_DONE	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_WAIT_PROCESSING_DONE, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVSC_GET_PROCESSING_STATUS	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVSC_GET_PROCESSING_STATUS, METHOD_BUFFERED, FILE_ANY_ACCESS)

// TV Encoder IOCTL
#define	IOCTL_SVE_TVENC_SET_INTERFACE_PARAM	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVENC_SET_INTERFACE_PARAM, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVENC_SET_ENCODER_ON	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVENC_SET_ENCODER_ON, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVENC_SET_ENCODER_OFF		\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVENC_SET_ENCODER_OFF, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_TVENC_GET_INTERFACE_STATUS	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_TVENC_GET_INTERFACE_STATUS, METHOD_BUFFERED, FILE_ANY_ACCESS)

// Power Management IOCTL
#define	IOCTL_SVE_PM_SET_POWER_ON		\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_PM_SET_POWER_ON, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_PM_SET_POWER_OFF		\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_PM_SET_POWER_OFF, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define	IOCTL_SVE_PM_GET_POWER_STATUS	\
		CTL_CODE(SVE_DEVICE_TYPE, SVE_PM_GET_POWER_STATUS, METHOD_BUFFERED, FILE_ANY_ACCESS)

typedef struct
{
	tDevInfo tRGBDevInfo;			// RGB I/F Device Information
	DWORD dwTVOutScreenWidth;		// TV Out Device Screen Width
	DWORD dwTVOutScreenHeight;	// TV Out Device Screen Height
} SVEARG_FIMD_OUTPUT_IF;

typedef struct
{
	DWORD dwLineCnt;			// Line Counter
	DWORD dwVerticalStatus;		// Vertical Status
	DWORD dwHorizontalStatus;	// Horizontal Status
	BOOL bENVID;				// ENVID Field of VIDCON0
} SVEARG_FIMD_OUTPUT_STAT;

typedef struct
{
	DWORD dwWinMode;	// FIMD Window Mode
	DWORD dwBPP;		// BitPerPixel
	DWORD dwWidth;		// Window Horizontal Pixel
	DWORD dwHeight;	// Window Vertical Pixel
	DWORD dwOffsetX;	// Window Horizontal Offset
	DWORD dwOffsetY;	// Window Vertical Offset
} SVEARG_FIMD_WIN_MODE;

typedef struct
{
	DWORD dwWinNum;	// FIMD Window Number
	DWORD dwOffsetX;	// Window Horizontal Offset
	DWORD dwOffsetY;	// Window Vertical Offset
} SVEARG_FIMD_WIN_POS;

typedef struct
{
	DWORD dwWinNum;		// FIMD Window Number
	DWORD dwFrameBuffer;	// Frame Buffer Address
	BOOL bWaitForVSync;		// Blocked Operation
} SVEARG_FIMD_WIN_FRAMEBUFFER;

typedef struct
{
	DWORD dwWinNum;		// FIMD Window Number
	DWORD dwDirection;		// Keying Direction
	DWORD dwColorKey;		// Color Key Value
	DWORD dwCompareKey;	// Compare Key Value
	BOOL bOnOff;			// Color Key Enable/Disable
} SVEARG_FIMD_WIN_COLORKEY;

typedef struct
{
	DWORD dwWinNum;	// FIMD Window Number
	DWORD dwMethod;	// Blending Method (per Pixel or per Plane)
	DWORD dwAlpha0;	// Alpha Value 0
	DWORD dwAlpha1;	// Alpha Value 1
} SVEARG_FIMD_WIN_ALPHA;

typedef struct
{
	DWORD dwOpMode;		// Operation Mode (Frame or Free Run)
	DWORD dwScanMode;		// Scan Mode (Progressive or Interace)
	DWORD dwSrcType;		// Src Image Type
	DWORD dwSrcBaseWidth;
	DWORD dwSrcBaseHeight;
	DWORD dwSrcWidth;
	DWORD dwSrcHeight;
	DWORD dwSrcOffsetX;
	DWORD dwSrcOffsetY;
	DWORD dwDstType;		// Dst Image Type
	DWORD dwDstBaseWidth;
	DWORD dwDstBaseHeight;
	DWORD dwDstWidth;
	DWORD dwDstHeight;
	DWORD dwDstOffsetX;
	DWORD dwDstOffsetY;
} SVEARG_POST_PARAMETER;

typedef struct
{
	DWORD dwBufferRGBY;
	DWORD dwBufferCb;
	DWORD dwBufferCr;
	BOOL bWaitForVSync;		// Blocked Operation
} SVEARG_POST_BUFFER;

typedef struct
{
	DWORD dwImgFormat;	// Source Image Format
	DWORD dwOpType;		// Rotator Operation Type
	DWORD dwSrcWidth;
	DWORD dwSrcHeight;
} SVEARG_ROTATOR_PARAMETER;

typedef struct
{
	DWORD dwBufferRGBY;
	DWORD dwBufferCb;
	DWORD dwBufferCr;
} SVEARG_ROTATOR_BUFFER;

typedef struct
{
	DWORD dwOpMode;		// Operation Mode (Frame or Free Run)
	DWORD dwScanMode;		// Scan Mode (Progressive or Interace)
	DWORD dwSrcType;		// Src Image Type
	DWORD dwSrcBaseWidth;
	DWORD dwSrcBaseHeight;
	DWORD dwSrcWidth;
	DWORD dwSrcHeight;
	DWORD dwSrcOffsetX;
	DWORD dwSrcOffsetY;
	DWORD dwDstType;		// Dst Image Type
	DWORD dwDstBaseWidth;
	DWORD dwDstBaseHeight;
	DWORD dwDstWidth;
	DWORD dwDstHeight;
	DWORD dwDstOffsetX;
	DWORD dwDstOffsetY;
} SVEARG_TVSC_PARAMETER;

typedef struct
{
	DWORD dwBufferRGBY;
	DWORD dwBufferCb;
	DWORD dwBufferCr;
	BOOL bWaitForVSync;		// Blocked Operation
} SVEARG_TVSC_BUFFER;

typedef struct
{
	DWORD dwOutputType;		// Output Interface Type
	DWORD dwOutputStandard;	// Output System
	DWORD dwMVisionPattern;	// Macrovision Pattern
	DWORD dwSrcWidth;
	DWORD dwSrcHeight;
} SVEARG_TVENC_PARAMETER;

#define SVE_ERROR_BASE				(0x20000000)		// Non system error code

#endif	// _SVE_API_H_

⌨️ 快捷键说明

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