mso_item_access.h

来自「ZORAN 962/966 SOURCE CODE,DVD chip」· C头文件 代码 · 共 125 行

H
125
字号
/* **************************************************************************************
*  Copyright (c) 2004 ZORAN Corporation, All Rights Reserved
*  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
*  File: $Workfile: mso_item_access.h $
*
* Description:
* ============
* Project definition of the MSO_ITEM_ASCCESS
*
****************************************************************************************/
#ifndef _O_ITEM_ACCESS_H_
#define _O_ITEM_ACCESS_H_

/***************************************************************************************
* Include files
****************************************************************************************/
#include "GUI\Menu_system\ms_object.h"
#include "GUI\Menu_system\ms_container.h"
#include "GUI\Object_class\Vlist\mso_vlist.h"
#include "GUI\Object_class\Text\mso_text.h"

/***************************************************************************************
* 	Public Macros
****************************************************************************************/
#define CIDX_ITEM_ACCESS_PLAY				CIDX_2//CIDX_4
#define CIDX_ITEM_ACCESS_FOCUS			CIDX_2			
#define ITEM_ACCESS_TIMEOUT		30

#define PARAM_ITEM_ACCESS_START_NEW_EDITION		1
#define PARAM_ITEM_ACCESS_TIMEOUT					0xFFFE

#define _ItemNumUserToSystem(_Value_)		(_Value_ - 1)
#define _ItemNumSystemToUser(_Value_)		(_Value_ +1)

typedef enum item_access_type {
	ITEM_ACCESS_TYPE_NAV		= 0,
	ITEM_ACCESS_TYPE_PLAY 	= 1,
} ITEM_ACCESS_TYPE;


/***************************************************************************************
* 	Public typdef definitions.
****************************************************************************************/

typedef void (*mpfItemAccessMutator)(UINT16* pItem, UINT16* pTotalItems, UINT16* pItemType);

/***************************************************************************************
*MS_DESCRIPTOR_ITEM_ACCESS
****************************************************************************************/
typedef struct ms_descriptor_item_access{
	MS_DESCRIPTOR			moDescriptor;
	MS_X_Y_ALIGN			*mpXYAlignText;
	MS_BITMAP_SET			*mpBmpSetBg;
	FONT_INDEX				mtFontIndex;
	mpfItemAccessMutator		mpfGetDisplayItem;
} MS_DESCRIPTOR_ITEM_ACCESS;


/***************************************************************************************
* The Item  Access parameters.
****************************************************************************************/
typedef struct ms_param_item_access {			
	UINT16	mwItemCurrent;   
	UINT16 	mwItemType;
	UINT16	mwItemTotal;
	UINT16	mwTimeout;   
	MS_OP	mMsOpUser;
#ifdef D_10P_KEY
	UINT16     mw10PFlag;
#endif
} MS_PARAM_ITEM_ACCESS;

/***************************************************************************************
* The Item Access component object.
****************************************************************************************/
typedef struct mso_item_access {
	MSO_OBJECT 	moObject;
	MS_PARAM_ITEM_ACCESS  moParam;
}MSO_ITEM_ACCESS;


/***************************************************************************************
* 	Operation functions
****************************************************************************************/

/***************************************************************************************
*	Function	: 	OITEMACCESS_Operation
*
*	In		: 	pThis	=	Pointer to MSO_ITEM_ACCESS object.
*
*				MsOp	=	Operation ID.
*
*				lParam	=	Parameter associated with an MS_OP if any.
*
*	Out		: 	None.
*
*	Return	:	ID of the operation that is to be propagated once processing is done, 
*				otherwise MS_OP_NONE.
*
*	Desc 	:	This function default operation function of MSO_ITEM_ACCESS objects.
****************************************************************************************/
extern MS_OP OITEMACCESS_Operation(MSO_OBJECT __NEAR* pThis, MS_OP MsOp, UINT32 lParam);

/***************************************************************************************
* 	Display functions
****************************************************************************************/

/***************************************************************************************
*	Function	: 	OITEMACCESS_FillOSDSeg
*
*	In		: 	pThis	=	Pointer to a MSO_VLIST object.
*
*				pAbsArea	=	Absolute area of pThis object.
*
*	Out		: 	None.
*
*	Return	:	None.
*
*	Desc 	:	Default display function of MSO_ITEM_ACCESS objects.	
****************************************************************************************/
extern BOOL OITEMACCESS_FillOSDSeg(MSO_OBJECT __NEAR* pThis, MS_AREA __NEAR* pAbsArea);

#endif //_O_ITEM_ACCESS_H_

⌨️ 快捷键说明

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