📄 fmradiodef.h
字号:
/*****************************************************************************
* Copyright Statement:
* --------------------
* This software is protected by Copyright and the information contained
* herein is confidential. The software may not be copied and the information
* contained herein may not be used or disclosed except with the written
* permission of MediaTek Inc. (C) 2005
*
* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/
/*******************************************************************************
* Filename:
* ---------
* FMRadioDef.h
*
* Project:
* --------
* MAUI
*
* Description:
* ------------
* FM Radio id, const & macro definition
*
* Author:
* -------
* Tim Chen
*
*==============================================================================
* HISTORY
* Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*------------------------------------------------------------------------------
* $Log$
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
* removed!
* removed!
*
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*==============================================================================
*******************************************************************************/
#ifndef _FM_RADIO_DEF_H
#define _FM_RADIO_DEF_H
#include "MMI_features.h"
#ifdef __MMI_FM_RADIO__
/*
* Need to include:
* (1) xxx.h
* (2) yyy.h
*/
#define MAX_VOL_LEVEL 7
#define IS_CHANNEL_EMPTY(f) ((f)==0)
#define DEFAULT_FREQUENCY 987
#define MAX_MANUAL_INPUT_LEN 6
#define MAX_NAME_INPUT_LEN 21
#define MIN_FM_FREQUENCY 875
#define MAX_FM_FREQUENCY 1080
#define FM_BANDWIDTH (MAX_FM_FREQUENCY - MIN_FM_FREQUENCY + 1)
#define NORMAL_REAPEAT_STEP_TIME 2000
#define NORMAL_REAPEAT_STEP_PERIOD 200
#define FAST_REAPEAT_STEP_PERIOD 100
#define NORMAL_REAPEAT_STEP_COUNT (NORMAL_REAPEAT_STEP_TIME / NORMAL_REAPEAT_STEP_PERIOD)
#define TWINKLE_FREQUENCY_COUNT 5
#define TWINKLE_FREQUENCY_ON_TIME 200
#define TWINKLE_FREQUENCY_OFF_TIME 100
#define FM_SUB_BAND_NUM NVRAM_EF_FM_RADIO_CHANNEL /* customizable in MMI_Fetures.h */
#define FM_RADIO_CHANNEL_NUM NVRAM_EF_FM_RADIO_CHANNEL /* customizable in MMI_Fetures.h */
#define FM_SUB_BANDWIDTH ((FM_BANDWIDTH+1)/FM_SUB_BAND_NUM)
#define FM_MARK_SIG(x) ((x) |= 0x80)
#define FM_SIG_MARK(x) ((x) & 0x80)
#define FM_SIG_LVL(x) ((x) & 0x7F)
#define FM_SUB_MARK(x,i) ((x)&(1<<(i)))
#define FM_MARK_SUB(x,i) ((x) |= (1<<(i)))
#if defined(__MMI_FM_RADIO_RECORD__)
/* Note these defines should be the same as sound recorder */
#define MAX_FM_FILE_NAME_LEN 80
#define MAX_FM_PATH_LEN 25 /* The path is fixed. i.e "c:\audio\" */
#define MAX_FM_FULL_NAME_LEN (MAX_FM_PATH_LEN+MAX_FM_FILE_NAME_LEN)
#define MAX_FM_INPUT_FILE_LEN 35 /* max file length for user to input */
#define FM_FILE_EXT_AMR L".amr"
#define FM_FILE_EXT_WAV L".wav"
#define FM_FILE_EXT_AWB L".awb"
#if defined(__DRM_SUPPORT__)
#define DRM_NOT_PERMIT_TO_APPEND 10000
#endif
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
typedef enum
{
STR_ID_FMRDO_BASE = FM_RADIO_BASE + 1,
STR_ID_FMRDO_TITLE,
STR_ID_FMRDO_CHANNEL_LIST,
STR_ID_FMRDO_MANUAL_INPUT,
STR_ID_FMRDO_PRESET_AUTO_SEARCH,
STR_ID_FMRDO_SETTINGS,
STR_ID_FMRDO_BACKGROUND_PLAY,
STR_ID_FMRDO_SKIN,
STR_ID_FMRDO_SKIN_1,
STR_ID_FMRDO_SKIN_2,
STR_ID_FMRDO_SKIN_3,
STR_ID_FMRDO_PLAY,
STR_ID_FMRDO_EDIT,
STR_ID_FMRDO_EMPTY,
STR_ID_FMRDO_PRESET_LIST,
STR_ID_FMRDO_SEARCHING,
STR_ID_FMRDO_CHANNEL_NAME,
STR_ID_FMRDO_FREQUENCY,
STR_ID_FMRDO_VALID_FM_BANDWIDTH,
STR_ID_FMRDO_VALID_FM_DECIMAL,
STR_ID_FMRDO_NEW_CHANNEL,
STR_ID_FMRDO_POWER_ON_FIRST,
#ifdef __MMI_FM_RADIO_BIND_EARPHONE__
STR_ID_FMRDO_PLEASE_PLUG_IN_EARPHONE,
#endif
STR_ID_FMRDO_LOUD_SPEAKER,
#if defined(__MMI_FM_RADIO_RECORD__)
STR_ID_FMRDO_RECORD,
STR_ID_FMRDO_APPEND,
STR_ID_FMRDO_PAUSE,
STR_ID_FMRDO_STOP,
STR_ID_FMRDO_RESUME,
STR_ID_FMRDO_FILE_LIST,
STR_ID_FMRDO_RECORD_FORMAT,
STR_ID_FMRDO_RECORD_STORAGE,
STR_ID_FMRDO_FORMAT_AMR,
STR_ID_FMRDO_FORMAT_WAV,
STR_ID_FMRDO_FORMAT_AWB,
STR_ID_FMRDO_BAD_FORMAT,
STR_ID_FMRDO_INVALID_FORMAT,
STR_ID_FMRDO_DEVICE_BUSY,
STR_ID_FMRDO_OPEN_FILE_ERROR,
STR_ID_FMRDO_NO_CARD,
STR_ID_FMRDO_WRITE_PROTECTION_ERROR,
STR_ID_FMRDO_RECORD_IN_BT_SCO,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
NO_OF_STR_ID_FMRDO
} FMRDO_STR_ID_Enum;
typedef enum
{
IMG_ID_FMRDO_BASE = FM_RADIO_BASE + 1,
IMG_ID_FMRDO_APP,
IMG_ID_FMRDO_BACKGROUND_PLAY,
IMG_ID_FMRDO_SKIN,
IMG_ID_FMRDO_LOUDSPEAK,
IMG_ID_FMRDO_CHANNEL_NAME,
IMG_ID_FMRDO_FREQUENCY,
#if defined(__MMI_FM_RADIO_RECORD__)
IMG_ID_FMRDO_RECORD_FORMAT,
IMG_ID_FMRDO_RECORD_STORAGE,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
/* skin 1 */
IMG_ID_FMRDO_SKIN_1_BACKGROUND,
IMG_ID_FMRDO_SKIN_1_VOLUME,
IMG_ID_FMRDO_SKIN_1_TUNER_SCALE,
IMG_ID_FMRDO_SKIN_1_TUNER_SCALE_INDICATOR,
IMG_ID_FMRDO_SKIN_1_POWER_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_1_POWER_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_1_POWER_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_1_POWER_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_1_SEARCH_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_1_SEARCH_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_1_SEARCH_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_1_SEARCH_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_1_STEP_UP_BUTTON_UP,
IMG_ID_FMRDO_SKIN_1_STEP_UP_BUTTON_DOWN,
IMG_ID_FMRDO_SKIN_1_STEP_DOWN_BUTTON_UP,
IMG_ID_FMRDO_SKIN_1_STEP_DOWN_BUTTON_DOWN,
#ifdef __MMI_FM_RADIO_ANIMATION__
IMG_ID_FMRDO_SKIN_1_ANIMATION,
#endif
#ifdef __MMI_TOUCH_SCREEN__
IMG_ID_FMRDO_SKIN_1_VOLUME_INC_UP,
IMG_ID_FMRDO_SKIN_1_VOLUME_INC_DOWN,
IMG_ID_FMRDO_SKIN_1_VOLUME_DEC_UP,
IMG_ID_FMRDO_SKIN_1_VOLUME_DEC_DOWN,
IMG_ID_FMRDO_SKIN_1_SETTING_UP,
IMG_ID_FMRDO_SKIN_1_SETTING_DOWN,
#endif /* __MMI_TOUCH_SCREEN__ */
#if defined(__MMI_FM_RADIO_RECORD__)
IMG_ID_FMRDO_SKIN_1_REC,
IMG_ID_FMRDO_SKIN_1_REC_PAUSE,
IMG_ID_FMRDO_SKIN_1_NUM_0,
IMG_ID_FMRDO_SKIN_1_NUM_1,
IMG_ID_FMRDO_SKIN_1_NUM_2,
IMG_ID_FMRDO_SKIN_1_NUM_3,
IMG_ID_FMRDO_SKIN_1_NUM_4,
IMG_ID_FMRDO_SKIN_1_NUM_5,
IMG_ID_FMRDO_SKIN_1_NUM_6,
IMG_ID_FMRDO_SKIN_1_NUM_7,
IMG_ID_FMRDO_SKIN_1_NUM_8,
IMG_ID_FMRDO_SKIN_1_NUM_9,
IMG_ID_FMRDO_SKIN_1_NUM_COL,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
/* skin 2 */
IMG_ID_FMRDO_SKIN_2_BACKGROUND,
IMG_ID_FMRDO_SKIN_2_VOLUME,
IMG_ID_FMRDO_SKIN_2_TUNER_SCALE,
IMG_ID_FMRDO_SKIN_2_TUNER_SCALE_INDICATOR,
IMG_ID_FMRDO_SKIN_2_POWER_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_2_POWER_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_2_POWER_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_2_POWER_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_2_SEARCH_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_2_SEARCH_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_2_SEARCH_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_2_SEARCH_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_2_STEP_UP_BUTTON_UP,
IMG_ID_FMRDO_SKIN_2_STEP_UP_BUTTON_DOWN,
IMG_ID_FMRDO_SKIN_2_STEP_DOWN_BUTTON_UP,
IMG_ID_FMRDO_SKIN_2_STEP_DOWN_BUTTON_DOWN,
#ifdef __MMI_FM_RADIO_ANIMATION__
IMG_ID_FMRDO_SKIN_2_ANIMATION,
#endif
#ifdef __MMI_TOUCH_SCREEN__
IMG_ID_FMRDO_SKIN_2_VOLUME_INC_UP,
IMG_ID_FMRDO_SKIN_2_VOLUME_INC_DOWN,
IMG_ID_FMRDO_SKIN_2_VOLUME_DEC_UP,
IMG_ID_FMRDO_SKIN_2_VOLUME_DEC_DOWN,
IMG_ID_FMRDO_SKIN_2_SETTING_UP,
IMG_ID_FMRDO_SKIN_2_SETTING_DOWN,
#endif /* __MMI_TOUCH_SCREEN__ */
#if defined(__MMI_FM_RADIO_RECORD__)
IMG_ID_FMRDO_SKIN_2_REC,
IMG_ID_FMRDO_SKIN_2_REC_PAUSE,
IMG_ID_FMRDO_SKIN_2_NUM_0,
IMG_ID_FMRDO_SKIN_2_NUM_1,
IMG_ID_FMRDO_SKIN_2_NUM_2,
IMG_ID_FMRDO_SKIN_2_NUM_3,
IMG_ID_FMRDO_SKIN_2_NUM_4,
IMG_ID_FMRDO_SKIN_2_NUM_5,
IMG_ID_FMRDO_SKIN_2_NUM_6,
IMG_ID_FMRDO_SKIN_2_NUM_7,
IMG_ID_FMRDO_SKIN_2_NUM_8,
IMG_ID_FMRDO_SKIN_2_NUM_9,
IMG_ID_FMRDO_SKIN_2_NUM_COL,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
/* skin 3 */
IMG_ID_FMRDO_SKIN_3_BACKGROUND,
IMG_ID_FMRDO_SKIN_3_VOLUME,
IMG_ID_FMRDO_SKIN_3_TUNER_SCALE,
IMG_ID_FMRDO_SKIN_3_TUNER_SCALE_INDICATOR,
IMG_ID_FMRDO_SKIN_3_POWER_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_3_POWER_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_3_POWER_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_3_POWER_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_3_SEARCH_BUTTON_ON_UP,
IMG_ID_FMRDO_SKIN_3_SEARCH_BUTTON_ON_DOWN,
IMG_ID_FMRDO_SKIN_3_SEARCH_BUTTON_OFF_UP,
IMG_ID_FMRDO_SKIN_3_SEARCH_BUTTON_OFF_DOWN,
IMG_ID_FMRDO_SKIN_3_STEP_UP_BUTTON_UP,
IMG_ID_FMRDO_SKIN_3_STEP_UP_BUTTON_DOWN,
IMG_ID_FMRDO_SKIN_3_STEP_DOWN_BUTTON_UP,
IMG_ID_FMRDO_SKIN_3_STEP_DOWN_BUTTON_DOWN,
#ifdef __MMI_FM_RADIO_ANIMATION__
IMG_ID_FMRDO_SKIN_3_ANIMATION,
#endif
#ifdef __MMI_TOUCH_SCREEN__
IMG_ID_FMRDO_SKIN_3_VOLUME_INC_UP,
IMG_ID_FMRDO_SKIN_3_VOLUME_INC_DOWN,
IMG_ID_FMRDO_SKIN_3_VOLUME_DEC_UP,
IMG_ID_FMRDO_SKIN_3_VOLUME_DEC_DOWN,
IMG_ID_FMRDO_SKIN_3_SETTING_UP,
IMG_ID_FMRDO_SKIN_3_SETTING_DOWN,
#endif /* __MMI_TOUCH_SCREEN__ */
#if defined(__MMI_FM_RADIO_RECORD__)
IMG_ID_FMRDO_SKIN_3_REC,
IMG_ID_FMRDO_SKIN_3_REC_PAUSE,
IMG_ID_FMRDO_SKIN_3_NUM_0,
IMG_ID_FMRDO_SKIN_3_NUM_1,
IMG_ID_FMRDO_SKIN_3_NUM_2,
IMG_ID_FMRDO_SKIN_3_NUM_3,
IMG_ID_FMRDO_SKIN_3_NUM_4,
IMG_ID_FMRDO_SKIN_3_NUM_5,
IMG_ID_FMRDO_SKIN_3_NUM_6,
IMG_ID_FMRDO_SKIN_3_NUM_7,
IMG_ID_FMRDO_SKIN_3_NUM_8,
IMG_ID_FMRDO_SKIN_3_NUM_9,
IMG_ID_FMRDO_SKIN_3_NUM_COL,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
NO_OF_IMG_ID_FMRDO
} FMRDO_IMD_ID_Enum;
typedef enum
{
SCR_ID_FMRDO_BASE = FM_RADIO_BASE + 1,
SCR_ID_FMRDO_MAIN,
SCR_ID_FMRDO_MAIN_OPTION,
SCR_ID_FMRDO_CHANNEL_LIST,
SCR_ID_FMRDO_MANUAL_INPUT,
SCR_ID_FMRDO_PRESET_LIST_CONFIRM,
SCR_ID_FMRDO_SETTINGS,
SCR_ID_FMRDO_CHANNEL_OPTION,
SCR_ID_FMRDO_SEARCHING,
SCR_ID_FMRDO_CHANNEL_EDIT,
SCR_ID_FMRDO_CHANNEL_NAME_EDIT,
SCR_ID_FMRDO_CHANNEL_NAME_EDIT_OPTION,
SCR_ID_FMRDO_CLEAR_CHANNEL_CONFIRM,
SCR_ID_FMRDO_SAVE_CHANNEL_CONFIRM,
#if defined(__MMI_FM_RADIO_RECORD__)
SCR_ID_FMRDO_EDIT_FILENAME,
SCR_ID_FMRDO_EDIT_FILENAME_OPTIONS,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
NO_OF_SCR_ID_FMRDO
} FMRDO_SCR_ID_Enum;
typedef enum
{
FMRDO_STATE_NOT_READY = 0,
FMRDO_STATE_READY,
FMRDO_STATE_RECORD,
FMRDO_STATE_RECORD_PAUSE,
FMRDO_STATE_SEARCH_ONE,
FMRDO_STATE_SEARCH_ALL,
NO_OF_FMRDO_STATE
} fmrdo_state_enum;
typedef enum
{
FMRDO_BUTTON_NONE,
FMRDO_BUTTON_POWER,
FMRDO_BUTTON_SEARCH,
FMRDO_BUTTON_STEP_UP,
FMRDO_BUTTON_STEP_DOWN,
FMRDO_BUTTON_REC,
FMRDO_BUTTON_REC_PAUSE
} fmrdo_main_button_enum;
/* Number of FM Radio Main Option */
typedef enum
{
FMRDO_MAIN_OPTION_CHANNEL_LIST,
FMRDO_MAIN_OPTION_MANUAL_INPUT,
FMRDO_MAIN_OPTION_PRESET_AUTO_SEARCH,
FMRDO_MAIN_OPTION_SETTINGS,
#if defined(__MMI_FM_RADIO_RECORD__)
FMRDO_MAIN_OPTION_RECORD,
FMRDO_MAIN_OPTION_APPEND,
FMRDO_MAIN_OPTION_FILE_LIST,
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
FMRDO_MAIN_OPTION_TOTAL
} fmrdo_main_option_item_enum;
#if defined(__MMI_FM_RADIO_RECORD__)
typedef enum
{
FM_FORMAT_AMR,
FM_FORMAT_WAV,
#if defined( AMRWB_ENCODE ) && defined( AMRWB_DECODE )
FM_FORMAT_AWB,
#endif
FM_REC_FORMAT_NUM
} fmrdo_record_format;
#endif /* defined(__MMI_FM_RADIO_RECORD__) */
#endif /* __MMI_FM_RADIO__ */
#endif /* _FM_RADIO_DEF_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -