source: svn/newcon3bcm2_21bu/dst/app/src/Function/App_Fnc_SignalMonitor.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: 4.3 KB
Line 
1/****************************************************************************
2* NAME: App_Fnc_SignalMonitor.h
3*----------------------------------------------------------------------------
4* Copyright (c) 2006-2009 DIGITAL STREAM Technology Inc.
5*----------------------------------------------------------------------------
6* CREATED_BY: Chan Hun Jeon
7* CREATION_DATE: 2009/08/27
8* $Author: chjeon $
9* $Revision: 1.1 $
10* $Date: 2009/07/08 15:08:26 $
11*----------------------------------------------------------------------------
12* PURPOSE:
13*       - Implement signal monitor module
14*****************************************************************************/
15
16#ifndef __APP_FNC_SIGNAL_MONITOR_H__
17#define __APP_FNC_SIGNAL_MONITOR_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        Signal Monior module
31        - signal monitoring
32        - check low signal, no program, audio only etc.
33        - channel tuing (recovery)
34
35        Dependencies
36        - DHL_AVCAP
37        - DHL_FE       
38*/
39
40
41
42
43
44/*_____ D E F I N I T I O N ____________________________________*/
45
46#if COMMENT
47____Config____(){}
48#endif
49
50#define APP_SIGMON_PARAM_STR(f) ( \
51                (f) == APP_SM_PARAM_NUM_SAMPLES ? "NumSamples" : \
52                (f) == APP_SM_PARAM_CHECK_PERIOD_LO ? "ChkPeriodLo" : \
53                (f) == APP_SM_PARAM_CHECK_PERIOD_HI ? "ChkPeriodHi" : \
54                (f) == APP_SM_PARAM_BANNER_SHOW_PERIOD ? "BnrShowPeriod" : \
55                (f) == APP_SM_PARAM_RETRY_TUNE_PERIOD ? "RetryTunePeriod" : \
56                (f) == APP_SM_PARAM_KEEP_PERIOD_NOPGM ? "KeepPeriodNoProgram" : \
57                (f) == APP_SM_PARAM_KEEP_PERIOD_AUDIO ? "KeepPeriodAudioOnly" : \
58                (f) == APP_SM_PARAM_INITIAL_DELAY_MS ? "InitialDelayMs" : \
59                (f) == APP_SM_PARAM_SIGNAL_LO_LIMIT ? "SignalLoLimit" : \
60                (f) == APP_SM_PARAM_SIGNAL_HI_LIMIT ? "SignalHiLimit" : \
61                (f) == APP_SM_PARAM_SKIP_LOW_SIG_MODE ? "SkipLowSigMode" : \
62                (f) == APP_SM_PARAM_CHECK_COUNT_THRESHOLD_H2L ? "ChkCountThrsdH2L" : \
63                (f) == APP_SM_PARAM_CHECK_COUNT_THRESHOLD_L2H ? "ChkCountThrsdL2H" : \
64                "?")
65
66/*
67        // multi-line comments may be dangerous. use c-style comments.
68                //(f) == APP_SM_PARAM_DISABLE_BANNER ? "DisableBanner" : \
69                //(f) == APP_SM_PARAM_NOISE_VIDEO_IN_NO_SIGNAL ? "NoiseVideoNoSig" : \
70*/
71
72
73
74
75
76#if COMMENT
77____Types____(){}
78#endif
79
80// Signal Monitor State machineÀÇ ³»ºÎ »óÅÂ.
81typedef enum
82{
83        APP_SM_STAT_DISABLED,
84        APP_SM_STAT_STOP,
85        APP_SM_STAT_HIGH,  // good digital signal
86        APP_SM_STAT_LOW,   // bad digital signal
87        APP_SM_STAT_AUDIO, // audio only digital
88        APP_SM_STAT_NOPGM, // no program digital
89       
90        APP_SM_STAT_HIGH_ANALOG,
91        APP_SM_STAT_LOW_ANALOG,
92
93        APP_SM_STAT_TEST,  // test mode, just check signal data
94       
95} APP_SIGMON_STAT;
96
97
98// cafrii 060821 add
99typedef enum
100{
101        APP_SM_PARAM_NUM_SAMPLES,
102
103        APP_SM_PARAM_CHECK_PERIOD_LO,
104        APP_SM_PARAM_CHECK_PERIOD_HI,
105
106        APP_SM_PARAM_BANNER_SHOW_PERIOD,
107
108        APP_SM_PARAM_RETRY_TUNE_PERIOD,
109
110        APP_SM_PARAM_KEEP_PERIOD_NOPGM,
111        APP_SM_PARAM_KEEP_PERIOD_AUDIO,
112
113        APP_SM_PARAM_INITIAL_DELAY_MS,
114
115        APP_SM_PARAM_SIGNAL_LO_LIMIT,
116        APP_SM_PARAM_SIGNAL_HI_LIMIT,
117
118        APP_SM_PARAM_SKIP_LOW_SIG_MODE, // cafrii 070613 add
119
120        APP_SM_PARAM_CHECK_COUNT_THRESHOLD_H2L, // cafrii 070912 add
121        APP_SM_PARAM_CHECK_COUNT_THRESHOLD_L2H,
122       
123        //APP_SM_PARAM_DISABLE_BANNER,
124
125        //APP_SM_PARAM_NOISE_VIDEO_IN_NO_SIGNAL,
126
127} APP_SIGMON_PARAM;
128
129
130typedef struct 
131{
132        APP_SIGMON_STAT status;
133        UINT32 status_period_ms;
134} APP_SIGMON_INFO;
135
136
137
138
139
140#if COMMENT
141____Variables____(){}
142#endif
143
144
145
146
147
148#if COMMENT
149____NvParam____(){}
150#endif
151
152
153
154
155
156/*_____ F U N C T I O N ________________________________________*/
157
158#if COMMENT
159____Function____(){}
160#endif
161
162// Fnc_SignalMonitor
163void App_Resume_SMTask(void);
164void App_Pause_SMTask(void);
165void App_Restart_SMTask(BOOL bAnalog, BOOL bTuneSuccess); // cafrii 060721 add
166void App_ForceDisableSMTask(BOOL bDisable);
167void App_NotifySigMonBannerToken(BOOL bAvail);
168        // cafrii 060714 add for OSD mgr
169
170// cafrii 060821 add
171UINT32 App_GetSigMonParam(APP_SIGMON_PARAM param);
172void App_ChangeSigMonParam(APP_SIGMON_PARAM param, int value);
173
174void App_GetSigMonInfo(APP_SIGMON_INFO *pinfo);
175
176// internal API only for Service Menu
177void SigMon_SetDbgLevel(int debug_level);
178int SigMon_GetDbgLevel(void);
179int SigMon_GetStrength(void);
180
181// module init
182void App_SMInit(void);
183
184
185
186
187
188#endif /* __APP_FNC_SIGNAL_MONITOR_H__ */
Note: See TracBrowser for help on using the repository browser.