⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mmp_global.h

📁 SAMSUNG 5009的源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
	BYTE2 					ewPgm_cursor_pos;	
//>>>temp	

	MmpRef_st			estDirRef;				/* The reference folder */
	MmpRef_st			*epstRef_next_list;		/* Reference folder list for next play */
	MmpRef_st			*epstRef_prev_list;		/* Reference folder list for prev play */	

	BYTE2 				ecCtrl_total;				/* Filtered total file number for opening a folder */	
	FS_Entry_st			*epCtl_list;				/* the folder page or file page list for opening a folder */
	BYTE2				*ecCtrl_table;			/* Filtered file page list for opening a folder */	
	MmpSelectInfo_st	estSel;
	BYTE2				ewFolder_hi;			/* highlighted folder. */
	CHAR				ecFolder_page[MMP_CTRL_PAGE_UNIT_SIZE*(MMP_NAME_LENGTH+1)];
	CHAR				ecFile_page[MMP_CTRL_PAGE_UNIT_SIZE*(MMP_NAME_LENGTH+1)];
	PbTime_st			estPb_time;
#if _APP_CAP_NAV_MMP_PLAY_VIDEO_FILE //azureming@060120
	UINT			estSaved_index;			/*to retrieve time when continues error happens*/
	//gaoping 20060207 not use now we use decode state
	//MmpPlayStatus_et		ewPlay_status;	     		//azureming@060123

#endif

	BYTE1				ecError_cnt;				/* Error counter */
	
	BYTE1				ebAuto_play;
	BYTE1				ebDecode_started;
	BYTE1				ecEmer_cnt;				/* Emergency counter */
	BYTE1				ecPlayerr_cnt;
	BOOL				ebPlay_err_recover;
	
	BYTE4				eiPlay_history[MMP_HISTORY_ARRY_NUM];/* For storing the play history */	
	BYTE2				ewPlay_count;	

	BYTE2				ewFolder_level;

	FS_Drive_et			etMnt_drv;

	union	{
				SetMainState_t		state_prev;
				OSD_MainType_et 			dsp_prev;
			} estSetup_state_prev;
	MmpFileType_et		etCurrentFileType;

#if _APP_CAP_FUNC_MMP_INTRO_PLAY
	BOOL                          Intro_flag;
#endif

#if (_CUSTOM_ID_==_CUSTOM_ID_BENIX_)
    BYTE1               ebAllmedia_type;     /* for displaying the mmp title  */
#endif

} MmpCtrl_st;

#else /* _APP_CAP_OSD_FLATTEN_EXPLORER */


typedef struct {
	BYTE2	ewFolder_pg;			/* the folder page number */
	BYTE2 	ewFile_pg;				/* the file page number */		
	BYTE2	ewFolder_level;			/* the folder level */
	BYTE2 	ewFolder_idx;			/* Opened folder index: ui side index */	
	BYTE2 	ewFolder_idx_tmp;		/* Temporary Opened folder index: ui side index */	
	BYTE2 	ewFile_idx;				/* file selection index */
	BYTE2 	ewFile_idx_tmp;			/* Temporary file index: ui side index */
	BYTE2 	ewFile_idx_old;			/* Old select file index */	
	BYTE2 	ewFolder_idx_old;		/* Old select folder index */		
	
	BYTE2 	ewFile_idx_area_chg;		/* Change file index //@dh051122*/	
	BYTE2 	ewFolder_idx_area_chg;		/* Change file index //@dh051122*/	
	BYTE2 	ewFolder_level_area_chg;	/* Change file index //@dh051122*/
	
	BYTE2 	ewFile_idx_mode_chg;		/* Change file index //@dh051122*/		
	BYTE2 	ewFile_pg_chg;				/* Change page index //@dh051122*/		
	BYTE2	ewTotal_files;			/* in ewFolder_idx folder */
} MmpSelectInfo_st;

typedef struct {
	
	UINT				eiRepeat_a; 			/* byte position */
	UINT				eiRepeat_b;
	UINT				eiRepeat_a_pts; 		/* pts in msec */

	UINT				eiResume;				// cydrain 20051221
	UINT				eiResume_pts;			// cydrain 20051221


	UINT				eiCur_time;
	UINT				eiTotal_time;

	BYTE4				eiPlay_history[MMP_HISTORY_ARRY_NUM];/* For storing the play history */	
	BYTE4				eiPlay_count;
	
	BYTE2 				ecConv_total;	
	BYTE2				*epConv_table; /* audio file conversion table from file list*/	
	
	MmpRef_st			estDirRef; 				/* The reference folder */		
		
	FS_Entry_st			*epEntry_list;	
	
#if	_API_CAP_GLB_MPVD_FRAME_MODE
	FS_Entry_st 			*epSmiEntry_list;		/* in order to hide smi file in explore window*/
	FS_File_t				etSmi_fid;	
#endif
	FS_File_t				etPlay_fid; 

	RepeatSub_et			ecRepeat_state;		// cydrain 20060412
	RepeatSub_et			ecRepeat_ab;
	BYTE1				ecPlay_speed;
	BYTE1				ecPlay_mode;

	MmpSelectInfo_st	estSel;
} MmpAvPlayCtrl_st;

typedef struct {
	FS_Entry_st *			epEntry_list;
	MmpSelectInfo_st		estSel;
	BOOL				ebThumb_view;
	BOOL				ebProgressive;
	UINT				eiWidth;
	UINT				eiHeight;
	USHORT				eiOrg_width;
	USHORT				eiOrg_height;
	UINT				eiSlide_time;			/* if 0, slide show off */

	BYTE2 				ecConv_total;	
	BYTE2				*epConv_table;			/* image file conversion table from file list*/
	FS_File_t				etPlay_fid;

	BYTE2				ewAlbum_init_index;
	BYTE2				ewAlbum_count;
	BOOL				ebAlbum_init;

	BYTE1				ecScan_count;			/* if ebProgressive == TRUE */
	BYTE1				ecPlay_mode;

	MmpImage_st			estImage;
	BYTE1				ecPlay_status;
	BYTE1				ecRepeat_state;
} MmpImgPlayCtrl_st;

/* For DVS Solution */
typedef struct {
	MmpAvPlayCtrl_st			*epstBg_play;
	MmpImgPlayCtrl_st		*epstImg_play;
#if _APP_CAP_NAV_MMP_PLAY_VIDEO_FILE
		MmpVidPlayCtrl_st		*epstVid_play;
#endif
	BOOL					ebBg_played;			/* TRUE: background play running */
	BOOL  					ebRead_reverse;		/* TRUE: play the last one after reading folder */
	BOOL					ebEOF;					/* EOD can be handled after this flag TRUE */

	MmpState_et				etMmp_state;
	MmpDspSync_et			etDsp_sync;			/* which information displayed */	
	MmpStopMode_et			etStop_mode;
	BYTE4					eiFile_page_type;		/* refer Fs_api.h */
/*rm.jung @ 051024 : base_merge*/
	MmpRef_st				estDirRef;				/* The reference folder */
	MmpRef_st				estRef_Cur_list;			/*rm.jung @ 060110*/
	MmpRef_st				*epstRef_next_list;		/* Reference folder list for next play */
	MmpRef_st				*epstRef_prev_list;		/* Reference folder list for prev play */	

	FS_Entry_st				*epCtl_list;				/* the folder page or file page list for opening a folder */
	FS_Entry_st				*epFolder_list;	
	FS_Entry_st				*epEntry_list;	
	FS_Entry_st				*epPgm_list;	/*rm.jung @ 051124*/
	BYTE2					ecPgm_play_index;	/*rm.jung @ 051124*/
	MmpProgram_st			*epstPgm_data;	
#if _APP_CAP_FUNC_JPG_PLAY_MODE
 	MmpProgram_st			*epstPgm_image;
#endif

	FS_Entry_st				*epFlatten_list;
	BYTE2 					ecConv_total;	
	BYTE2					*epConv_table;
	MmpFolderListTotal_st	estTotal_folders;
	MmpFileListTotal_st		estTotal_files;	/*rm.jung @ 060106*/
/*rm.jung @ 051014 : for playlist (program)*/
	MmpPgmNode_st			ewPgm_list[MMP_MAX_PROGRAM];
	BYTE1					ecPgm_pos;
	BYTE2					ewPgm_sel_pos;
	BYTE2 					ewPgm_sel_pg;
	BYTE2 					ewPgm_sel_old_pos;		//@dh051018
	BYTE2 					ewPgm_cursor_pos;	
	

	/* <<< @: 5010.joe.kang 060119 : To hide SMI file, add ctrl table index */
	BYTE2 					ecCtrl_total;				/* Filtered total file number for opening a folder */
	BYTE2					*ecCtrl_table;			/* Filtered file page list for opening a folder */
	/* >>> @: 5010.joe.kang 060119 : To hide SMI file, add ctrl table index */		

	MmpSelectInfo_st			estSel;
	BYTE2					ewFolder_hi;			/* highlighted folder. */
/* <<< @ common. kimjungtae. 060224 : expand name length from 46 to 256 for long name file 
									in case of MP3 play list must have MMP_CTRL_PAGE_UNIT_SIZE + 1 */
	CHAR					ecFolder_page[(MMP_CTRL_PAGE_UNIT_SIZE+1)*(MMP_NAME_LENGTH+1)];
	CHAR					ecFile_page[(MMP_CTRL_PAGE_UNIT_SIZE+1)*(MMP_NAME_LENGTH+1)];
	//CHAR					ecFile_page[1024];
/* <<< @ common. kimjungtae. 060224 */

	PbTime_st				estPb_time;

	BYTE1					ebAuto_play;	
	BYTE1					ebDecode_started;
	BYTE1					ecEmer_cnt;			/* Emergency counter */
	BYTE1					ecPlayerr_cnt;
	BOOL					ebPlay_err_recover;
	BYTE4					eiPlay_history[MMP_HISTORY_ARRY_NUM];/* For storing the play history */	
	BYTE2					ewPlay_count;	
	BYTE2					ewFolder_level;
	BYTE2					ewFolder_level_old;	//@dh051116 : Old index level

	FS_Drive_et				etMnt_drv;

	union	{
				SetMainState_t		state_prev;
				OSD_MainType_et 		dsp_prev;	
			} estSetup_state_prev;

#if _CUSTOM_OPTION_FOR_RECODER_	//@ha050925
	BYTE2					ecMmp_folder_dsp_cnt;
	BYTE2					ecPgm_folder_dsp_cnt;
#endif	//_SUPPORT_RECODER_MMP
/* <<< @:PAL.jsh050813 */

	MmpPlayStatus_et		ewPlay_status;	

//<<<@R3600.jj.051129	cache for filetype
	MmpFileType_et			etCurrentFileType;
//>>>@R3600.jj.051129	cache for filetype	
	BYTE2					usTotalFolders; // <<< @: 5010.joe.kang 060124

#if (_CUSTOM_ID_==_CUSTOM_ID_BENIX_)
		BYTE1				ebAllmedia_type;	 /* for displaying the mmp title  */
#endif

} MmpCtrl_st;


#endif /* _APP_CAP_OSD_FLATTEN_EXPLORER */

typedef struct{
	BYTE2			ewFile_index;
	BYTE2			ewFolder_index;
	UINT			ewTime_resume;	// cydrain 20060425
	MmpFileType_et	file_type;	
#if _APP_CAP_FUNC_MMP_FIXED_SUB_SCHEME //azureming@060724!!
	ULONG		iEntryLba;
#endif
#if _APP_CAP_NAV_USB_DISC || _APP_CAP_NAV_FX_DATA
	BYTE1			disc_mode;
#endif
}MmpResumeInfo_st;


#if _APP_CAP_NAV_MMP_PLAY_VIDEO_FILE	// cydrain 20060210
#ifdef _MMP_BOOKMARK
typedef struct {
	BOOL		valid;
	UINT		folder_index;
	UINT		file_index;
	UINT		bookmark_time;
#if _APP_CAP_FUNC_MMP_FIXED_SUB_SCHEME //azureming@060724!!
	ULONG		iEntryLba;
#endif
} MmpBookmarkInfo_t;
extern BYTE2 gMmpBookmark_flag_num;
extern MmpBookmarkInfo_t gMmpBookmark_info[MAX_BOOKMARK_NUM];
#endif
#endif

#if _APP_CAP_FUNC_MMP_POWER_RESUME	// cydrain 20060425
extern MmpResumeInfo_st gMmpPowerResume;
#endif

extern MmpCtrl_st		*gpstMmp_ctrl;
extern volatile BOOL	gMmpSubtitleShown_flag;	// cydrain 20060524

VOID InitMmpOsd(VOID);
VOID DeInitMmpOsd(VOID);

/******************************************************************************
 *  By            : Liu renliang
 *  Description   : the function belows should be init by osd manager when start
  *				during playing this also may be called
 ******************************************************************************
 */
VOID SetMmpImageInfoState(MmpImgInfoSub_et image_info);
VOID SetMmpalbum_page_num(BYTE2 album_page);
VOID SetMmpAlbumSelect(BYTE2 select);
VOID SetMmpNoticeType(MmpNoticeType_et notice_type);
VOID SetMmpNoticeString(char *notice_string);
VOID AddMmpNoticeString(char *notice_string);//By QQ 050801
//VOID SprintfMmpNoticeString(const char *fmt, ... );//By QQ 050802

/******************************************************************************
 *  By            : Liu renliang
 *  Description   : the function below is used to draw osd to decide what to do in key hander
 ******************************************************************************
 */
MmpModeSub_et 	GetMmpModeState(VOID); 
RepeatSub_et GetMmpRepeatState(VOID);
VOID SetMmpRepeatState(RepeatSub_et state);//By QQ 051026
#if _APP_CAP_FUNC_AUDIO_LR_IN_MMP
//S5H_AdmChnCont_t GetMmpAudioState(VOID);
S5H_Lrstereo_et GetMmpAudioState(VOID);//BY QQ 050904 /*S5H_AdmChnCont_t*/ 
#endif /* _APP_CAP_FUNC_AUDIO_LR_IN_MMP */

MmpImgInfoSub_et GetMmpImageInfoState(VOID);
BYTE2 GetMmpAlbumSelect(VOID);
BOOL GetMmpInfoState(VOID);
MmpNoticeType_et GetMmpNoticeType(VOID);
VOID GetMmpNoticeString(char *notice_string);
BYTE2 GetMmpIndexofFirstPlayFile(VOID);
MmpFileType_et GetMmpFileTypeCursor(VOID);

#ifdef	__cplusplus
}
#endif

#endif /* _MMP_GLOBAL_H_ */

⌨️ 快捷键说明

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