source: svn/newcon3bcm2_21bu/dst/app/src/Function/App_Fnc_ChTune.h

Last change on this file was 76, checked in by megakiss, 10 years ago

1W 대기전력을 만족시키기 위하여 POWEROFF시 튜너를 Standby 상태로 함

  • Property svn:executable set to *
File size: 6.7 KB
Line 
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//
108typedef 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 Á¾·ù.
120typedef 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À̹ǷΠÁ¶ÇÕÇØ¼­ »ç¿ë °¡´ÉÇÏ´Ù.
131typedef 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
150typedef 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
167extern STATUS g_App_LastTuneResult;
168        // °¡Àå ¸¶Áö¸· Æ©´× »óÅÂ.
169
170
171
172
173
174#if COMMENT
175____NvParam____(){}
176#endif
177
178typedef 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
208int App_TuneChannelByUid(int nUID);
209int App_TuneChannelByUidEx(int nUID, APP_UID_TUNE_FLAG flag);
210
211
212//int App_ChannelTuneByDRF(int rf, int program_number);
213void App_ChTuneByDigitKey(int nMajor, int nMinor);
214
215void App_ChTuneStopTV(void); // cafrii 060724 add
216void App_ChTuneStopTVEx(BOOL bFromSigMon);
217
218// cafrii ÀÌÀü ä³Î Æ©´×
219STATUS App_ChTunePrevChannel(void);
220// cafrii ¸¶Áö¸· ä³Î º¹±¸
221STATUS App_ChTuneRecoverLastChannel(void);
222
223
224STATUS App_ChangeChannelType(ChannelType nType);
225
226
227int App_ChTuneMinorUp(void);
228int App_ChTuneMinorDown(void);
229
230int App_ChTuneSortUp(void);
231int App_ChTuneSortDown(void);
232
233int App_ChTuneSurfUp(void);
234int App_ChTuneSurfDown(void);
235
236int App_ChTuneSortSurfUp(void);
237
238int App_ChTuneSortNumberUp(void);
239int App_ChTuneSortNumberDown(void);
240int App_ChTuneSortNumberSurfUp(void);
241
242
243void App_ChTuneAddDelSurfCurChannel(BOOL bAddOrDel);
244
245int App_SearchMostCloseChannel(int major, int minor); // cafrii 060814 add
246
247
248// cafrii CH_ADD Ű ó¸®
249STATUS App_ChTuneAddDelChannel(BOOL bAdd, BOOL bScanOtherChannel);
250
251STATUS App_ChTuneQuickScanAndTune(int rf, int program_number, APP_QUICKSCAN_TYPE type);
252        // cafrii 060804 add
253
254
255// cafrii ÀÌÀü ä³Î Æ©´× (Prev-channel tune)À» À§ÇÑ Á¤º¸ ó¸®
256void App_ResetPrevChannelInfo(void);
257void App_SetPrevChannelInfo(void);
258
259// cafrii ä³Î º¹±¸ ±â´É (boot, air/cable Àüȯ)À» À§ÇÑ Á¤º¸ ó¸®
260void App_SaveLastChannelInfo(int rf, int program_number, int uid);
261
262void App_UpdateUidChannelParam(int uid);
263void App_UpdateDRFChannelParam(int rf, int program_number);
264
265void App_RegisterChannelNotifyCallback(void); // cafrii 060609 add
266
267void App_GetChannelSkippedInfo(int *pAdd);// iskang 071113 add
268
269// Access APP_CUR_CH
270
271// dynamic channel update
272void App_CheckDynamicChUpdate(void);
273void App_CancelDynamicChUpdate(void);
274
275
276void App_ChTuneInit(void);
277void App_ChTuneParamInit(void);
278
279void App_ForceEnableAirCable(BOOL is_enable); /* user debug¿ë */
280BOOL App_IsForceEnableAirCable(void);
281void App_SetEnableCableQam(BOOL setting);
282BOOL App_GetEnableCableQam(void);
283
284
285void App_SetChSortMode(tAppChSortMode mode);
286        // set channel sort mode
287
288tAppChSortMode App_GetChSortMode(void);
289        // get channel sort mode
290
291int App_GetChUid(int idx);
292
293#endif /* __APP_FNC_CHTUNE_H__ */
Note: See TracBrowser for help on using the repository browser.