www.pudn.com > 6027_HD65.rar > fslist.h


/**********************************************************************/ 
/***************    MTK CONFIDENTIAL & COPYRIGHTED     ****************/ 
/***************                                       ****************/ 
/***************  $Modtime:: 04/07/05 3:53p    $       ****************/ 
/***************  $Revision:: 5                $       ****************/ 
/***************                                       ****************/ 
/***************   Description : File Menu             ****************/ 
/***************                 Interface to other    ****************/ 
/***************                 play module           ****************/ 
/***************                                       ****************/ 
/***************       Company : MediaTek Inc.         ****************/ 
/***************    Programmer : Jacob Lin             ****************/ 
/**********************************************************************/ 
 
/** 
 *          $(PROJ_HOME)/8032/custom/demo/fslist/fslist.h 
 * 
 *          For external interface of the data disc menu based on "FS LIST" 
 */ 
 
#ifndef __FSLIST_H__ 
#define __FSLIST_H__ 
 
 
#define FLIP_VOLUME_UP       0x01 
#define FLIP_VOLUME_DOWN     0x02 
#define FLIP_VOLUME_REDRAW   0x04 
#define FLIP_VOLUME_MUTE_ON  0x10 
#define FLIP_VOLUME_MUTE_OFF 0x20 
#define FLIP_VOLUME_HINT     0x80 
 
enum 
{ 
  // Common 
  IP_INFO_PLAYTIME, 
  IP_INFO_TOTALTIME, 
  IP_INFO_FILE_INDEX, 
 
  // Panel 1 
  IP_INFO_BITRATE, 
  IP_INFO_PBC, 
  IP_INFO_USR_AUX_CTRL, 
  IP_INFO_VOLUME, 
  IP_INFO_EQ, 
   
  // Panel 2 
  IP_INFO_LIST_TYPE, 
  IP_INFO_KEY_SHIFT, 
  IP_INFO_RPT_TYPE, 
  IP_INFO_REVERB, 
   
  // Info Bar 
  IP_INFO_ERROR, 
  IP_INFO_CHG_LANG, 
 
  IP_INFO_DISC_TYPE, 
  
 
  IP_INFO_MAX, 
  IP_INFO_PANEL_1, 
  IP_INFO_PANEL_2,   
 
  IP_INFO_FILE_INDEX_0, 
  IP_INFO_FILE_INDEX_1, 
  IP_INFO_FILE_INDEX_2, 
  IP_INFO_FILE_INDEX_3, 
  IP_INFO_FILE_INDEX_4, 
  IP_INFO_FILE_INDEX_5 
}; 
 
#define IP_INFO_COMMOM_START    IP_INFO_PLAYTIME 
#define IP_INFO_COMMOM_END      IP_INFO_FILE_INDEX 
#define IP_INFO_PANEL_1_START   IP_INFO_BITRATE 
#define IP_INFO_PANEL_1_END     IP_INFO_EQ 
#define IP_INFO_PANEL_2_START   IP_INFO_LIST_TYPE 
#define IP_INFO_PANEL_2_END     IP_INFO_REVERB 
 
enum 
{ 
  FL_STATUS_BUSY, 
  FL_STATUS_OCCUPIED, 
  FL_STATUS_IN_MENU, 
  FL_STATUS_IN_HELP, 
  FL_STATUS_IN_JPEG, 
  FL_STATUS_IN_JPGDGST, 
  FL_STATUS_IN_MPEG, 
  FL_STATUS_JPEG_DECODING 
}; 
 
// - interface to this sub-module 
extern void vFsMenuInit(BOOL fgInit) large; 
extern BOOL fgFsMenuState(void) large; 
#ifdef SUPPORT_PCD 
extern BYTE bFlGetRepeatType(void) large; 
#endif 
extern BYTE bFlNextRepeatType(void) large; 
 
extern void vFlRecover(void) large; 
extern void vFlChgLang(BYTE bLang) large; 
 
// File List Meun 
extern void vFlMnOnTimer(void) large; 
 
// Info Panel 
void vFlIpShowInfo(BYTE bArea, BYTE bParam, WORD wParam) large; 
 
// Handle Uop Ret 
extern void vFlHandleUopRet(BYTE bUopId, BYTE bUopRet) large; 
 
// - for compatible issue 
extern void vFsMenuExit(void); 
extern BOOL fgFlCheckStatus(BYTE bStatus) large; 
extern BYTE bFlGetFgPbcState(void) large; 
 
// - utility function for play module 
extern WORD wFlGetListLen(void) large; 
 
/////////////////////////////////////////////////////////////////////////////// 
// - Position Table 
 
//#define LINE_H           32 
 
#define OSD_POS_FS_PLAYTIME       wOsdPos(OSD_POS_TBL_FLMENU, 0) 
#define OSD_POS_FS_TOTALTIME      wOsdPos(OSD_POS_TBL_FLMENU, 1) 
#define OSD_POS_FS_BITRATE        wOsdPos(OSD_POS_TBL_FLMENU, 2) 
#define OSD_POS_FS_PBC            wOsdPos(OSD_POS_TBL_FLMENU, 3) 
#define OSD_POS_FS_USR_AUX_CTRL   wOsdPos(OSD_POS_TBL_FLMENU, 4) 
#define OSD_POS_FS_FILE_INDEX     wOsdPos(OSD_POS_TBL_FLMENU, 5) 
#define OSD_POS_FS_VOLUME         wOsdPos(OSD_POS_TBL_FLMENU, 6) 
//#define OSD_POS_FS_PLAY_INFO      wOsdPos(OSD_POS_TBL_FLMENU, 5) 
#define OSD_POS_FS_EQ             wOsdPos(OSD_POS_TBL_FLMENU, 7) 
 
#define OSD_POS_FS_LIST_TYPE      wOsdPos(OSD_POS_TBL_FLMENU, 8)  
#define OSD_POS_FS_KEY_SHIFT      wOsdPos(OSD_POS_TBL_FLMENU, 9)  
#define OSD_POS_FS_RPT_TYPE       wOsdPos(OSD_POS_TBL_FLMENU, 10) 
#define OSD_POS_FS_REVERB         wOsdPos(OSD_POS_TBL_FLMENU, 11) 
 
#define OSD_POS_FS_INFO_BAR       wOsdPos(OSD_POS_TBL_FLMENU, 12) 
#define OSD_POS_FS_PATH           wOsdPos(OSD_POS_TBL_FLMENU, 13) 
#define OSD_POS_FS_DISC_TYPE      wOsdPos(OSD_POS_TBL_FLMENU, 14) 
#define OSD_POS_FS_MAX          15 
 
 
#define FS_INFO_PANEL_LINE_1_Y     4 
#define FS_INFO_PANEL_LINE_2_Y    34 
#define FS_INFO_PANEL_LINE_H      30 
 
#define FS_PLAY_TIME_X       20 
#define FS_PLAY_TIME_W       80 
#define FS_TOTAL_TIME_X     110 
#define FS_TOTAL_TIME_W     100 
                             
#define FS_BITERATE_X       200 
#define FS_BITERATE_W       120 
#define FS_PBC_X            310 
#define FS_PBC_W            100 
#define FS_USR_AUX_CTRL_X   420 
#define FS_USR_AUX_CTRL_W   100 
#define FS_FILE_INDEX_X      20 
#define FS_FILE_INDEX_W     150 
#define FS_VOLUME_X         170 
#define FS_VOLUME_W         150 
#define FS_VOLUME_Y         36 
#define FS_VOLUME_H         60 
#define FS_EQ_X             330 
#define FS_EQ_W             200 
#define FS_EQ_LINE_W        12 
#ifdef HDCD_EN 
#define FS_DISC_TYPE_X      500 
#define FS_DISC_TYPE_Y      26 
#define FS_DISC_TYPE_W      100 
#endif 
 
#define FS_LIST_TYPE_X      FS_BITERATE_X 
#define FS_LIST_TYPE_W      (FS_BITERATE_W + 20) 
#define FS_KEY_SHIFT_X      (FS_PBC_X + 30) 
#define FS_KEY_SHIFT_W      (FS_PBC_W + FS_USR_AUX_CTRL_W) 
#define FS_RPT_TYPE_X       FS_VOLUME_X 
#define FS_RPT_TYPE_W       (FS_VOLUME_W + 50) 
#define FS_REVERB_X         (FS_EQ_X + 40) 
#define FS_REVERB_W         FS_EQ_W 
 
#define FS_INFO_BAR_X        (8 + 20) // FLMN_BTN_3_X + 20 
#define FS_INFO_BAR_Y        (276 + 2) // FLMN_BTN_3_Y + 2 
#define FS_INFO_BAR_W        FSMENU_BASIC_WB_WIDTH 
#define FS_INFO_BAR_H        30 
 
#define FS_PATH_X            34  
#define FS_PATH_Y            6 
#define FS_PATH_W            FSMENU_BASIC_WB_WIDTH - 34 
#define FS_PATH_H            30 
 
 
#endif //__FSLIST_H__ 
 
#ifdef _OSDSHOW_MAIN_C_ 
static code strucOsdPos pwPosFsInfo[OSD_POS_FS_MAX] = { 
  // Panel 1 
  { FSMENU_INFO, FS_PLAY_TIME_X,    FS_INFO_PANEL_LINE_1_Y, FS_PLAY_TIME_W },    // OSD_POS_FS_PLAYTIME 
  { FSMENU_INFO, FS_TOTAL_TIME_X,   FS_INFO_PANEL_LINE_1_Y, FS_TOTAL_TIME_W },   // OSD_POS_FS_TOTALTIME 
  { FSMENU_INFO, FS_BITERATE_X,     FS_INFO_PANEL_LINE_1_Y, FS_BITERATE_W },     // OSD_POS_FS_BITRATE 
  { FSMENU_INFO, FS_PBC_X,          FS_INFO_PANEL_LINE_1_Y, FS_PBC_W },          // OSD_POS_PBC 
  { FSMENU_INFO, FS_USR_AUX_CTRL_X, FS_INFO_PANEL_LINE_1_Y, FS_USR_AUX_CTRL_W }, // OSD_POS_FS_USR_AUX_CTRL 
  { FSMENU_INFO, FS_FILE_INDEX_X,   FS_INFO_PANEL_LINE_2_Y, FS_FILE_INDEX_W },   // OSD_POS_FS_FILE_INDEX 
  { FSMENU_INFO, FS_VOLUME_X,       FS_INFO_PANEL_LINE_2_Y, FS_VOLUME_W },       // OSD_POS_FS_VOLUME 
  { FSMENU_INFO, FS_EQ_X,           FS_INFO_PANEL_LINE_2_Y, FS_EQ_W },           // OSD_POS_FS_EQ 
  // Panel 2                        
  { FSMENU_INFO, FS_LIST_TYPE_X,    FS_INFO_PANEL_LINE_1_Y, FS_LIST_TYPE_W },    // OSD_POS_FS_LIST_TYPE 
  { FSMENU_INFO, FS_KEY_SHIFT_X,    FS_INFO_PANEL_LINE_1_Y, FS_KEY_SHIFT_W },    // OSD_POS_FS_KEY_SHIFT 
  { FSMENU_INFO, FS_RPT_TYPE_X,     FS_INFO_PANEL_LINE_2_Y, FS_RPT_TYPE_W },     // OSD_POS_FS_RPT_TYPE 
  { FSMENU_INFO, FS_REVERB_X,       FS_INFO_PANEL_LINE_2_Y, FS_REVERB_W },       // OSD_POS_FS_REVERB 
  // Info Bar 
  { FSMENU_OSD_WBIDX_BASIC, FS_INFO_BAR_X, FS_INFO_BAR_Y, FS_INFO_BAR_W },       // OSD_POS_FS_INFO_BAR 
  { FSMENU_OSD_WBIDX_BASIC, FS_PATH_X,     FS_PATH_Y,     FS_PATH_W }            // OSD_POS_FS_PATH 
#ifdef HDCD_EN   
  , 
  { FSMENU_INFO, FS_DISC_TYPE_X,     FS_DISC_TYPE_Y,     FS_DISC_TYPE_W }            // OSD_POS_FS_DISC_TYPE 
#endif 
}; 
 
#endif  // _OSDSHOW_MAIN_C_