source: svn/newcon3bcm2_21bu/dst/app/src/Function/App_Fnc_Ucm.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: 5.4 KB
Line 
1/****************************************************************************
2* NAME: App_Fnc_Ucm.h
3*----------------------------------------------------------------------------
4* Copyright (c) DIGITAL STREAM Technology Inc.
5*----------------------------------------------------------------------------
6* CREATED_BY: Do Gon Lee
7* CREATION_DATE: 2009/08/26
8* $Author: foxhunt $
9* $Revision: 1.0 $
10* $Date: 2009/08/26 09:12:22 $
11*----------------------------------------------------------------------------
12* PURPOSE:
13* - App_Fnc_Ucm.c header file
14*****************************************************************************/
15
16#ifndef __APP_FNC_UCM_H__
17#define __APP_FNC_UCM_H__
18
19/*_____ I N C L U D E __________________________________________*/
20
21
22
23
24
25#if COMMENT
26____Overview____(){}
27#endif
28
29
30
31
32
33/*_____ D E F I N I T I O N ____________________________________*/
34
35#if COMMENT
36____Config____(){}
37#endif
38
39
40
41
42
43#if COMMENT
44____Types____(){}
45#endif
46
47
48
49typedef struct {
50        UINT16 uid;
51       
52        UINT16 major;
53        UINT16 minor;
54        UINT8 rf;
55       
56        UINT16 source_id;
57
58        UINT16 prog_number;
59
60        UINT16 short_name[8];
61       
62        UINT16 pcr_pid;
63        UINT16 vid_pid;
64        UINT16 aud_pid;
65
66        UINT8 service_type;      // 0: NTSC, 1: ATSC-VSB, 2: ATSC-64QAM, 3: ATSC-256QAM
67
68        BOOL bAdd;
69        BOOL bFav;
70        BOOL bHidden;
71       
72        UINT8 vct_flag;
73       
74        tDHL_AudioCodingType aud_type;
75        tDHL_VideoCodingType vid_type;
76       
77        tDHL_DispFormat video_format;
78       
79} tApp_UcmShortInfo;
80
81
82typedef enum {
83        eAPP_UCM_MAJOR,
84        eAPP_UCM_MINOR,
85        eAPP_UCM_RF,
86        eAPP_UCM_VCT_FLAG,
87        eAPP_UCM_PROG_NUMBER,
88        eAPP_UCM_SERVICE_TYPE,
89        eAPP_UCM_SKIPPED,
90        eAPP_UCM_SURF_INDEX,
91        eAPP_UCM_SHORT_NAME,
92        eAPP_UCM_FREQ_OFFSET,
93        eAPP_UCM_SOURCE_ID,
94        eAPP_UCM_UID,
95        eAPP_UCM_P_EPG_DB,
96        eAPP_UCM_PCR_PID,
97        eAPP_UCM_VID_PID,
98        eAPP_UCM_AUD_PID,
99        eAPP_UCM_AUD_TYPE,
100        eAPP_UCM_PMT_PID,
101        eAPP_UCM_SIG_STR,
102        eAPP_UCM_TSID,
103        eAPP_UCM_CHANNEL_TSID,
104        eAPP_UCM_HIDDEN,
105        eAPP_UCM_BLOCKED,
106        eAPP_UCM_SCRAMBLED,
107        eAPP_UCM_FRESH,
108        eAPP_UCM_NUM_CSD,
109        eAPP_UCM_MAX_CSD,
110        eAPP_UCM_P_CSD
111} tApp_UcmItem;
112
113
114typedef struct
115{
116        // input channels
117        int nUid;
118        int *uidBuf;
119
120        // criterions
121        int program_number; // if > 0, try to find channel which has same program number
122       
123} tApp_UcmSelectParam;
124
125
126
127typedef struct
128{
129        //------------------------
130        // channel environment Á¤º¸
131       
132        // cafrii 060609 add
133        UINT8 nChannelType;   // 0: Air, 1: CableSTD
134        UINT8 nCableType;      //
135       
136        //------------------------
137        // ÇöÀç ä³Î Á¤º¸
138       
139        UINT8 nRF;      // RF
140        UINT8 nServiceType;  // service type (VSB, QAM..) ÇöÀç´Â °ÅÀÇ »ç¿ëµÇÁö ¾ÊÀ½.
141        UINT16 nProgramNumber;
142                // program number´Â ¾î¶°ÇÑ °æ¿ì¿¡µµ ¿Ã¹Ù¸¥ °ªÀ» °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù.
143
144        int   nUid;  // DRF¸¦ ÀÌ¿ëÇÑ Æ©´×½Ã¿¡´Â 0À¸·Î reset µÇ¾î¾ß ÇÑ´Ù.
145
146        //------------------------
147        // ºÎ°¡ Á¤º¸.
148       
149        UINT16 nMajor;          // major number
150        UINT16 nMinor;          // minor number
151       
152        UINT16 nSourceId;
153                // PMT·Î Æ©´×µÈ °æ¿ì¿¡´Â nSourceId´Â 0À¸·Î ¼³Á¤ÇÏÀÚ.
154                // 0Àº PSIP spec¿¡ invalid ÇÑ °ªÀÌ´Ù.
155               
156        BOOL bPSIChannel; 
157                // cafrii 060628 add,
158                // PAT/PMT¸¸ Àִ ä³ÎÀ̸é TRUE..
159       
160        UINT16 uPcrPid, uVidPid, uAudPid;
161
162        tDHL_AudioCodingType   AudioType;
163        tDHL_VideoCodingType   VideoType;
164       
165        UINT16 ShortName[7];
166       
167} DST_CURCHANNEL;
168
169
170#define APP_CUR_CH (*(DST_CURCHANNEL *)App_Ucm_GetCurChInfo(NULL))
171
172
173
174typedef struct {
175        BOOL exc_skip;
176        BOOL exc_hidden;
177        BOOL exc_disable;
178        BOOL exc_hd;
179        BOOL exc_sd;
180        BOOL exc_audio;
181        BOOL turn_around; //
182        BOOL only_fav; //
183        BOOL inc_cur_ch; //skipÀ̾ cur channelÀ̸é Ãß°¡ÇÔ.
184} tApp_ChSelParam;
185
186
187
188#if COMMENT
189____Variables____(){}
190#endif
191
192
193
194
195
196#if COMMENT
197____NvParam____(){}
198#endif
199
200
201
202
203
204/*_____ F U N C T I O N ________________________________________*/
205
206#if COMMENT
207____Function____(){}
208#endif
209
210STATUS App_GetUcmShortInfo(int uid, tApp_UcmShortInfo *pinfo);
211STATUS App_GetUcmInfo(int uid, tApp_UcmItem item, UINT32 *ret);
212STATUS App_GetCurUcmShortInfo(tApp_UcmShortInfo *pinfo);
213DST_CURCHANNEL *App_Ucm_GetCurChInfo(DST_CURCHANNEL* chinfo );
214void App_ChtuneSetChannelInfo_AudioPid(UINT16 audpid);
215
216STATUS App_Ucm_GetShortInfobyIndex(int index, tApp_UcmShortInfo *pinfo);
217int App_Ucm_GetTotalUcmCount(void);
218int App_Ucm_GetNoHiddenUcmCount(void);
219BOOL App_Ucm_CheckHiddenCh(int index);
220BOOL App_Ucm_CheckDisabledCh(int index);
221void App_Ucm_SetChinfo_AddFav(int idx, BOOL bAdd, BOOL bFav);
222
223int App_Ucm_GetChNum(tApp_ChSelParam *pparam);
224        //param¿¡ ¸í½ÃµÈ ¼º°ÝÀ» °®´Â ä³ÎÀÌ ¸î °³ÀÎÁö ¸®ÅÏÇÔ.
225
226
227/*
228        ÁöÁ¤ÇÑ uid ä³Î µé Áß¿¡¼­ ÀûÀýÇÑ Ã¤³ÎÀ» ¼±ÅÃÇÑ´Ù.
229        Á¶°ÇÀº non-hidden, non-scrambed ¼ø¼­.
230        preference¸¦ Ãß°¡ÇÏ°í ½ÍÀ¸¸é À§ struct ¿¡ Ãß°¡Çϰí Äڵ带 ¼öÁ¤ÇÒ °Í.
231
232        ¸®ÅϰªÀº ¼±Åà µÈ ä³ÎÀÇ uid ¹øÈ£ÀÌ´Ù.
233        Àû´çÇÑ Ã¤³ÎÀÌ ¾øÀ» °æ¿ì -1À» ¸®ÅÏÇÑ´Ù.
234*/
235int App_Ucm_SelectChannels(tApp_UcmSelectParam *param);
236
237
238/*
239        ä³ÎDBÀÇ ¸ðµç ä³Î Áß¿¡¼­ ÁöÁ¤ÇÑ rf ¹øÈ£¸¦ °®´Â ä³ÎÀ» ¼±ÅÃÇÑ´Ù.
240
241        ¸®ÅÏ °ªÀº ÀÌ ÇÔ¼ö°¡ ½º½º·Î ÆÇ´ÜÇÏ¿© ¼±ÅÃÇÑ °¡Àå ÀûÀýÇÑ Ã¤³ÎÀÇ uid ÀÌ´Ù.
242        Çϳªµµ ¹ß°ßµÇÁö ¾Ê°Å³ª Çϸé -1 ¸®ÅÏ.
243
244        nUidBufSize ¿Í pUidBuf¸¦ ÁöÁ¤ÇÏÁö ¾Ê°í ±×³É ¸®Åϰª¸¸ »ç¿ëÇØµµ µÈ´Ù.
245*/
246int App_Ucm_FindChannelByRF(int rf, int nUidBufSize, int *pUidBuf);
247
248
249int App_Ucm_GetNextChannel(int cur_uid, tApp_ChSelParam *pparam);
250
251int App_Ucm_GetNextChannelNumber(int cur_idx, BOOL bTrue, BOOL bTune);
252
253int App_Ucm_GetPrevChannel(int cur_uid, tApp_ChSelParam *pparam);
254
255int App_Ucm_GetChannelNum(BOOL binc_skip); //return channel num using skip flag
256
257void App_UcmInit(void);
258
259
260
261
262
263#endif /* __APP_FNC_UCM_H__ */
Note: See TracBrowser for help on using the repository browser.