| 1 | /**************************************************************************** |
|---|
| 2 | * NAME: App_Fnc_ChTune.h |
|---|
| 3 | *---------------------------------------------------------------------------- |
|---|
| 4 | * Copyright (c) DIGITAL STREAM Technology Inc. |
|---|
| 5 | *---------------------------------------------------------------------------- |
|---|
| 6 | * CREATED_BY: Chan Hun Jeon |
|---|
| 7 | * CREATION_DATE: 2009/09/02 |
|---|
| 8 | * $Author: chjeon $ |
|---|
| 9 | * $Revision: 1.1 $ |
|---|
| 10 | * $Date: 2009/07/08 15:08:26 $ |
|---|
| 11 | *---------------------------------------------------------------------------- |
|---|
| 12 | * PURPOSE: |
|---|
| 13 | * - Channel tuning API (Chup, Chdown, Major-Minor tune, RF-tune) |
|---|
| 14 | *****************************************************************************/ |
|---|
| 15 | |
|---|
| 16 | #ifndef __APP_FNC_CHTUNE_H__ |
|---|
| 17 | #define __APP_FNC_CHTUNE_H__ |
|---|
| 18 | |
|---|
| 19 | /*_____ I N C L U D E __________________________________________*/ |
|---|
| 20 | |
|---|
| 21 | |
|---|
| 22 | |
|---|
| 23 | |
|---|
| 24 | |
|---|
| 25 | |
|---|
| 26 | #if COMMENT |
|---|
| 27 | ____Overview____(){} |
|---|
| 28 | #endif |
|---|
| 29 | |
|---|
| 30 | /* |
|---|
| 31 | Channel Tuning Module |
|---|
| 32 | - UID tune |
|---|
| 33 | - Channel Up/Down |
|---|
| 34 | - Major-minor tune (RF tune Æ÷ÇÔ) |
|---|
| 35 | - Stop TV |
|---|
| 36 | - Prev Channel |
|---|
| 37 | - Recovery last channel |
|---|
| 38 | |
|---|
| 39 | Dependencies |
|---|
| 40 | - Channel MW |
|---|
| 41 | - CC MW |
|---|
| 42 | - App_Fnc_EA |
|---|
| 43 | - App_Fnc_SignalMonitor |
|---|
| 44 | - App_Fnc_Security |
|---|
| 45 | - App_Fnc_DigitKeyProc |
|---|
| 46 | - App_Fnc_Rating |
|---|
| 47 | - App_Fnc_NvRam |
|---|
| 48 | - App_Fnc_EPG |
|---|
| 49 | */ |
|---|
| 50 | |
|---|
| 51 | |
|---|
| 52 | |
|---|
| 53 | |
|---|
| 54 | |
|---|
| 55 | /*_____ D E F I N I T I O N ____________________________________*/ |
|---|
| 56 | |
|---|
| 57 | #if COMMENT |
|---|
| 58 | ____Config____(){} |
|---|
| 59 | #endif |
|---|
| 60 | |
|---|
| 61 | #define DST_CHANNELBANNER_ERASE_DELAY 4000 |
|---|
| 62 | // |
|---|
| 63 | // Channel Banner Ç¥½Ã À¯Áö ±â°£.. |
|---|
| 64 | |
|---|
| 65 | #define DELETE_CHBANNER_AFTER_TUNNING 0 |
|---|
| 66 | // iskang 070830. |
|---|
| 67 | // channel banner¸¦ Áö¿ï ¶§ ¹«Á¶°Ç 5Ãʸ¦ ÁÖÁö ¾Ê°í |
|---|
| 68 | // tunningÀÌ ¼º°ø¸¦ Çϸé tunnig 2ÃÊ ÈÄ¿¡, ½ÇÆÐ¸¦ ÇÏ¸é ¹Ù·Î Áö¿î´Ù. |
|---|
| 69 | // ³ªÁß¿¡ Áö¿ì´Â ½Ã°£ÀÌ ³Ê¹« ª´Ù°í »ý°¢ÀÌ µÇ¸é api¸¦ Ãß°¡ÇÏÀÚ.. |
|---|
| 70 | |
|---|
| 71 | #define APP_CHTUNE_AIR_RF_MIN 2 |
|---|
| 72 | #define APP_CHTUNE_AIR_RF_MAX 51 //69 |
|---|
| 73 | #define APP_CHTUNE_AIR_RF_DEFAULT 2 |
|---|
| 74 | |
|---|
| 75 | #define APP_CHTUNE_CABLE_RF_MIN 1 |
|---|
| 76 | #define APP_CHTUNE_CABLE_RF_MAX 135 |
|---|
| 77 | #define APP_CHTUNE_CABLE_RF_DEFAULT 1 |
|---|
| 78 | |
|---|
| 79 | #define IS_VALID_RF(type, rf) ( \ |
|---|
| 80 | ((type) == ChannelType_Air && (rf) >= APP_CHTUNE_AIR_RF_MIN && (rf) <= APP_CHTUNE_AIR_RF_MAX) || \ |
|---|
| 81 | ((type) == ChannelType_Cable && (rf) >= APP_CHTUNE_CABLE_RF_MIN && (rf) <= APP_CHTUNE_CABLE_RF_MAX)) |
|---|
| 82 | |
|---|
| 83 | #define APP_QUICKSCAN_TYPE_STR(t) ( \ |
|---|
| 84 | (t) == APP_QUICKSCAN_DRF ? "DRF" : \ |
|---|
| 85 | (t) == APP_QUICKSCAN_SIGMON ? "SIGMON" : "?") |
|---|
| 86 | |
|---|
| 87 | #define APP_UID_TUNE_FLAG_STR(f) ( \ |
|---|
| 88 | (f) == APP_UID_TUNE_DONT_STOP_PREV ? "DontStopPrev" : \ |
|---|
| 89 | (f) == APP_UID_TUNE_SKIP_BANNER ? "SkipBanner" : \ |
|---|
| 90 | (f) == APP_UID_TUNE_INCLUDE_HIDDEN ? "IncludeHdn" : \ |
|---|
| 91 | (f) == APP_UID_TUNE_FROM_SIGMON ? "FromSigMon" : \ |
|---|
| 92 | (f) == APP_UID_TUNE_DONT_SAVE_PREV ? "DontSavePrev" : \ |
|---|
| 93 | "?") |
|---|
| 94 | |
|---|
| 95 | |
|---|
| 96 | |
|---|
| 97 | |
|---|
| 98 | |
|---|
| 99 | #if COMMENT |
|---|
| 100 | ____Types____(){} |
|---|
| 101 | #endif |
|---|
| 102 | |
|---|
| 103 | // cafrii 060608 add tuning method |
|---|
| 104 | // TuneCallback¿¡ userParamÀ¸·Î Àü´ÞµÊ. Áï Tuning ÇÔ¼ö¿¡ ÀÌ Ç÷¡±× Áß Çϳª¸¦ ÁöÁ¤ÇØ¾ß ÇÔ. |
|---|
| 105 | // ÇÏÀ§ 16 bit´Â ¾Æ·¡ METHOD »ó¼ö, |
|---|
| 106 | // »óÀ§ 16 bit´Â °¢ Method º°·Î parameterÀÌ´Ù. |
|---|
| 107 | // |
|---|
| 108 | typedef enum |
|---|
| 109 | { |
|---|
| 110 | APP_TUNE_UID, // uid¿¡ ÀÇÇØ Æ©´×µÈ °æ¿ì. »óÀ§ 16bit¸¦ »ç¿ëµÈ UID°ªÀ¸·Î °°ÀÌ ³Ñ±ä´Ù. |
|---|
| 111 | APP_TUNE_DRF, |
|---|
| 112 | APP_TUNE_DRF_PN, |
|---|
| 113 | |
|---|
| 114 | APP_TUNE_SIGMON, // tune by Signal Monitor |
|---|
| 115 | APP_TUNE_EA, // tune by EA force tune |
|---|
| 116 | |
|---|
| 117 | } APP_TUNE_METHOD; |
|---|
| 118 | |
|---|
| 119 | // cafrii 060804 add quick scan Á¾·ù. |
|---|
| 120 | typedef enum |
|---|
| 121 | { |
|---|
| 122 | APP_QUICKSCAN_DRF = 0, |
|---|
| 123 | APP_QUICKSCAN_SIGMON = 1, |
|---|
| 124 | |
|---|
| 125 | } APP_QUICKSCAN_TYPE; |
|---|
| 126 | |
|---|
| 127 | |
|---|
| 128 | // cafrii 060804 add |
|---|
| 129 | // Uid tune¿¡¼ »ç¿ë °¡´ÉÇÑ flag. |
|---|
| 130 | // bit flagÀ̹ǷΠÁ¶ÇÕÇØ¼ »ç¿ë °¡´ÉÇÏ´Ù. |
|---|
| 131 | typedef enum |
|---|
| 132 | { |
|---|
| 133 | APP_UID_TUNE_NORMAL = 0, |
|---|
| 134 | APP_UID_TUNE_DONT_STOP_PREV = 1, // ÇöÀç ¹Ì»ç¿ë. |
|---|
| 135 | APP_UID_TUNE_SKIP_BANNER = 2, |
|---|
| 136 | APP_UID_TUNE_INCLUDE_HIDDEN = 4, |
|---|
| 137 | |
|---|
| 138 | APP_UID_TUNE_FROM_SIGMON = 8, |
|---|
| 139 | |
|---|
| 140 | APP_UID_TUNE_DONT_SAVE_PREV = 0x10, // ÀÌÀü ä³Î ÀúÀåÇÏÁö ¾Ê´Â ¿É¼Ç. |
|---|
| 141 | |
|---|
| 142 | } APP_UID_TUNE_FLAG; |
|---|
| 143 | |
|---|
| 144 | |
|---|
| 145 | /* Comment : DST_CURCHANNEL Àº App_UCMÀ¸·Î À̵¿ÇÔ |
|---|
| 146 | App Fnc °£ÀÇ °èÃþȸ¦ À§ÇؼÀÓ |
|---|
| 147 | */ |
|---|
| 148 | |
|---|
| 149 | |
|---|
| 150 | typedef enum |
|---|
| 151 | { |
|---|
| 152 | APP_CH_SORT_CH_NUM=0, |
|---|
| 153 | APP_CH_SORT_GROUP=1, |
|---|
| 154 | APP_CH_SORT_NUMBER |
|---|
| 155 | } tAppChSortMode; |
|---|
| 156 | /* channel sort mode..APP_CH_SORT_GROUP means 1) HD 2) SD 3) Audio Only |
|---|
| 157 | */ |
|---|
| 158 | |
|---|
| 159 | |
|---|
| 160 | |
|---|
| 161 | |
|---|
| 162 | |
|---|
| 163 | #if COMMENT |
|---|
| 164 | ____Variables____(){} |
|---|
| 165 | #endif |
|---|
| 166 | |
|---|
| 167 | extern STATUS g_App_LastTuneResult; |
|---|
| 168 | // °¡Àå ¸¶Áö¸· Æ©´× »óÅÂ. |
|---|
| 169 | |
|---|
| 170 | |
|---|
| 171 | |
|---|
| 172 | |
|---|
| 173 | |
|---|
| 174 | #if COMMENT |
|---|
| 175 | ____NvParam____(){} |
|---|
| 176 | #endif |
|---|
| 177 | |
|---|
| 178 | typedef struct |
|---|
| 179 | { |
|---|
| 180 | UINT8 nChannelType; // 0: Air, 1: CableSTD |
|---|
| 181 | |
|---|
| 182 | // Air RF & Pn |
|---|
| 183 | UINT8 Air_RF; |
|---|
| 184 | UINT32 Air_Pn; |
|---|
| 185 | |
|---|
| 186 | // Cable RF & Pn |
|---|
| 187 | UINT8 Cable_RF; |
|---|
| 188 | UINT32 Cable_Pn; |
|---|
| 189 | |
|---|
| 190 | // Card OOB »óÅ¿¡¼ÀÇ ¸¶Áö¸· ½Ãû ä³Î |
|---|
| 191 | UINT8 Oob_RF; |
|---|
| 192 | UINT32 Oob_Pn; |
|---|
| 193 | |
|---|
| 194 | } nvparam_chtune; |
|---|
| 195 | |
|---|
| 196 | |
|---|
| 197 | |
|---|
| 198 | |
|---|
| 199 | |
|---|
| 200 | /*_____ F U N C T I O N ________________________________________*/ |
|---|
| 201 | |
|---|
| 202 | #if COMMENT |
|---|
| 203 | ____Function____(){} |
|---|
| 204 | #endif |
|---|
| 205 | |
|---|
| 206 | //int App_FindChannelToShow(int nUid, int *uidBuf, int nMajor, int nMinor); |
|---|
| 207 | |
|---|
| 208 | int App_TuneChannelByUid(int nUID); |
|---|
| 209 | int App_TuneChannelByUidEx(int nUID, APP_UID_TUNE_FLAG flag); |
|---|
| 210 | |
|---|
| 211 | |
|---|
| 212 | //int App_ChannelTuneByDRF(int rf, int program_number); |
|---|
| 213 | void App_ChTuneByDigitKey(int nMajor, int nMinor); |
|---|
| 214 | |
|---|
| 215 | void App_ChTuneStopTV(void); // cafrii 060724 add |
|---|
| 216 | void App_ChTuneStopTVEx(BOOL bFromSigMon); |
|---|
| 217 | |
|---|
| 218 | // cafrii ÀÌÀü ä³Î Æ©´× |
|---|
| 219 | STATUS App_ChTunePrevChannel(void); |
|---|
| 220 | // cafrii ¸¶Áö¸· ä³Î º¹±¸ |
|---|
| 221 | STATUS App_ChTuneRecoverLastChannel(void); |
|---|
| 222 | |
|---|
| 223 | |
|---|
| 224 | STATUS App_ChangeChannelType(ChannelType nType); |
|---|
| 225 | |
|---|
| 226 | |
|---|
| 227 | int App_ChTuneMinorUp(void); |
|---|
| 228 | int App_ChTuneMinorDown(void); |
|---|
| 229 | |
|---|
| 230 | int App_ChTuneSortUp(void); |
|---|
| 231 | int App_ChTuneSortDown(void); |
|---|
| 232 | |
|---|
| 233 | int App_ChTuneSurfUp(void); |
|---|
| 234 | int App_ChTuneSurfDown(void); |
|---|
| 235 | |
|---|
| 236 | int App_ChTuneSortSurfUp(void); |
|---|
| 237 | |
|---|
| 238 | int App_ChTuneSortNumberUp(void); |
|---|
| 239 | int App_ChTuneSortNumberDown(void); |
|---|
| 240 | int App_ChTuneSortNumberSurfUp(void); |
|---|
| 241 | |
|---|
| 242 | |
|---|
| 243 | void App_ChTuneAddDelSurfCurChannel(BOOL bAddOrDel); |
|---|
| 244 | |
|---|
| 245 | int App_SearchMostCloseChannel(int major, int minor); // cafrii 060814 add |
|---|
| 246 | |
|---|
| 247 | |
|---|
| 248 | // cafrii CH_ADD Ű ó¸® |
|---|
| 249 | STATUS App_ChTuneAddDelChannel(BOOL bAdd, BOOL bScanOtherChannel); |
|---|
| 250 | |
|---|
| 251 | STATUS App_ChTuneQuickScanAndTune(int rf, int program_number, APP_QUICKSCAN_TYPE type); |
|---|
| 252 | // cafrii 060804 add |
|---|
| 253 | |
|---|
| 254 | |
|---|
| 255 | // cafrii ÀÌÀü ä³Î Æ©´× (Prev-channel tune)À» À§ÇÑ Á¤º¸ ó¸® |
|---|
| 256 | void App_ResetPrevChannelInfo(void); |
|---|
| 257 | void App_SetPrevChannelInfo(void); |
|---|
| 258 | |
|---|
| 259 | // cafrii ä³Î º¹±¸ ±â´É (boot, air/cable Àüȯ)À» À§ÇÑ Á¤º¸ ó¸® |
|---|
| 260 | void App_SaveLastChannelInfo(int rf, int program_number, int uid); |
|---|
| 261 | |
|---|
| 262 | void App_UpdateUidChannelParam(int uid); |
|---|
| 263 | void App_UpdateDRFChannelParam(int rf, int program_number); |
|---|
| 264 | |
|---|
| 265 | void App_RegisterChannelNotifyCallback(void); // cafrii 060609 add |
|---|
| 266 | |
|---|
| 267 | void App_GetChannelSkippedInfo(int *pAdd);// iskang 071113 add |
|---|
| 268 | |
|---|
| 269 | // Access APP_CUR_CH |
|---|
| 270 | |
|---|
| 271 | // dynamic channel update |
|---|
| 272 | void App_CheckDynamicChUpdate(void); |
|---|
| 273 | void App_CancelDynamicChUpdate(void); |
|---|
| 274 | |
|---|
| 275 | |
|---|
| 276 | void App_ChTuneInit(void); |
|---|
| 277 | void App_ChTuneParamInit(void); |
|---|
| 278 | |
|---|
| 279 | void App_ForceEnableAirCable(BOOL is_enable); /* user debug¿ë */ |
|---|
| 280 | BOOL App_IsForceEnableAirCable(void); |
|---|
| 281 | void App_SetEnableCableQam(BOOL setting); |
|---|
| 282 | BOOL App_GetEnableCableQam(void); |
|---|
| 283 | |
|---|
| 284 | |
|---|
| 285 | void App_SetChSortMode(tAppChSortMode mode); |
|---|
| 286 | // set channel sort mode |
|---|
| 287 | |
|---|
| 288 | tAppChSortMode App_GetChSortMode(void); |
|---|
| 289 | // get channel sort mode |
|---|
| 290 | |
|---|
| 291 | int App_GetChUid(int idx); |
|---|
| 292 | |
|---|
| 293 | #endif /* __APP_FNC_CHTUNE_H__ */ |
|---|