source: svn/trunk/newcon3bcm2_21bu/dta/src/dcc/bcmDcc.h @ 53

Last change on this file since 53 was 2, checked in by jglee, 11 years ago

first commit

  • Property svn:executable set to *
File size: 15.1 KB
Line 
1/***************************************************************************
2 *     Copyright (c) 2002, Broadcom Corporation
3 *     All Rights Reserved
4 *     Confidential Property of Broadcom Corporation
5 *
6 *  THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
7 *  AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
8 *  EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
9 *
10 * $brcm_Workfile: bcmDcc.h $
11 * $brcm_Revision: SanJose_MSTV_Devel/4 $
12 * $brcm_Date: 10/25/02 10:30a $
13 *
14 * Module Description:
15 *
16 * Revision History:
17 *
18 * $brcm_Log: /SetTop/applications/vbi/public_inc/bcmDcc.h $
19 *
20 * SanJose_MSTV_Devel/4   10/25/02 10:30a erikg
21 * Numerous Changes: 1.  cbPostByte/Ptr fixed return val and Len logic 2.
22 * DccEngine_Reset:  save/restore user overrides 3.
23 * DccEngine_Process708:  finer grained pipe 4.  ccgfx:  fixed mem leak
24 * in which fonts are not unloaded 5.  added pre/post line space in ccgfx
25 * and removed from 608 xcoder 6.  608 transcoder:  implemented
26 * BackSpace, ExtendedChar set, TAB 7.  improved user override logic 8.
27 * more selective mid-line re-render   Merge from
28 * SanJose_MSTV_Devel_erikg_week_oct_14_2002_10_14_1204_17  25-Oct-
29 * 02.08:21:19 \SetTop\applications\vbi\public_inc\bcmDcc.h 1.  finer
30 * grained pipe
31 * 2.  more selective mid-line re-render --- 18-Oct-02.16:02:11
32 * \SetTop\applications\vbi\Common\bcmDccPriv.h made a number of the
33 * config #defines actual globals
34 * to facilitate run-time configuration --- 17-Oct-02.08:58:37
35 * \SetTop\applications\vbi\Common\bcmDccCBuf.c fixed return vals on
36 * cbPostByte and cbPostPtr --- 25-Oct-02.08:20:18
37 * \SetTop\applications\vbi\Common\bcmDccCBuf.c fixed cbPostPtr Len logic
38 * error --- 18-Oct-02.16:02:17
39 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDccGfx.h made a number
40 * of the config #defines actual globals
41 * to facilitate run-time configuration --- 18-Oct-02.16:02:21
42 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDTVCC708.h made a
43 * number of the config #defines actual globals
44 * to facilitate run-time configuration --- 22-Oct-02.17:09:38
45 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccPacket.c moved printf -
46 * -- 17-Oct-02.09:01:01
47 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccInt.c improved user
48 * override handling
49 * DccEngine_Reset and ResetDownstream both preserve overrides --- 25-Oct-
50 * 02.08:21:22 \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c 1.
51 * finer grained pipe
52 * 2.  more selective mid-line re-render --- 25-Oct-02.08:42:49
53 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c misc changes -
54 * -- 25-Oct-02.08:21:26
55 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntPriv.h 1.  finer
56 * grained pipe
57 * 2.  more selective mid-line re-render --- 25-Oct-02.08:21:29
58 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c 1.  finer
59 * grained pipe
60 * 2.  more selective mid-line re-render --- 14-Oct-02.16:03:55
61 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c fixed MIPS
62 * exception -- FontLoad was not matched w/ FontUnload --- 17-Oct-
63 * 02.11:02:34 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c
64 * surface clipping --- 18-Oct-02.14:03:07
65 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c move leading
66 * and trailing space into ccgfx --- 18-Oct-02.16:02:24
67 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c made a number
68 * of the config #defines actual globals
69 * to facilitate run-time configuration --- 25-Oct-02.08:42:57
70 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c misc changes
71 * --- 25-Oct-02.10:16:25
72 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c prep for
73 * release --- 17-Oct-02.09:01:06
74 * \SetTop\applications\vbi\Common\bcmDccEngine.c improved user override
75 * handling
76 * DccEngine_Reset and ResetDownstream both preserve overrides --- 18-Oct-
77 * 02.16:02:29 \SetTop\applications\vbi\Common\bcmDccEngine.c made a
78 * number of the config #defines actual globals
79 * to facilitate run-time configuration --- 22-Oct-02.17:10:19
80 * \SetTop\applications\vbi\Common\bcmDccEngine.c added printf --- 25-
81 * Oct-02.08:21:33 \SetTop\applications\vbi\Common\bcmDccEngine.c 1.
82 * finer grained pipe
83 * 2.  more selective mid-line re-render --- 25-Oct-02.10:16:31
84 * \SetTop\applications\vbi\Common\bcmDccEngine.c prep for release ---
85 * 18-Oct-02.14:03:15
86 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c move
87 * leading and trailing space into ccgfx --- 21-Oct-02.14:51:16
88 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c support
89 * for backspace and tab
90 * support for extended char sets ---
91 *
92 * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_week_oct_14_2002_10_14_1204_17/1   10/25/02 8:21a erikg
93 * 1.  finer grained pipe
94 * 2.  more selective mid-line re-render
95 *
96 * SanJose_MSTV_Devel/3   10/11/02 12:13p erikg
97 * Various Changes:  1.  Fixed NTSC Caption Parsing from A53 2.  Supports
98 * pkt seq discontinuity reset 3.  Support shortened pkts 4.  Fixed
99 * underline during monospaced simulation 5.  Added parity checking to
100 * chars in 608 transcoder 6.  Correctly skips XDS and Text modes in
101 * transcoder 7.  Supports transparent space 8.  Fixed Flashing
102 * (FLASH_BY_2SURFACES) 9.  DLY and DLC imply ETX 10.Force all combos of
103 * PDir/SDir to L2R/B2T 11. Packet interface has changed      Merge from
104 * SanJose_MSTV_Devel_erikg_week_oct7_2002_10_07_0927_44  10-Oct-
105 * 02.11:30:39 \SetTop\applications\vbi\public_inc\bcmDcc.h various
106 * improvements:
107 * 1.  correctly skip over XDS and Text in transcoder
108 * 2.  force pdir/sdir to l2r and b2t
109 * 3.  fixed underline during monospace
110 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 08-
111 * Oct-02.16:00:59
112 * \SetTop\applications\vbi\MPEGCCTransportLib\source\bcmDccTransportPars
113 * e.c diff treatment for cc_type --- 11-Oct-02.11:49:16
114 * \SetTop\applications\vbi\MPEGCCTransportLib\source\bcmDccTransportPars
115 * e.c cleaned up in prep for release --- 10-Oct-02.11:26:59
116 * \SetTop\applications\vbi\Common\bcmDccCBuf.c added cbUnPeek --- 11-
117 * Oct-02.11:49:21 \SetTop\applications\vbi\Common\bcmDccCBuf.c cleaned
118 * up in prep for release --- 10-Oct-02.11:27:05
119 * \SetTop\applications\vbi\Common\bcmDccCBuf.h added cbUnPeek --- 11-
120 * Oct-02.11:49:24 \SetTop\applications\vbi\Common\bcmDccCBuf.h cleaned
121 * up in prep for release --- 10-Oct-02.11:30:44
122 * 1.  correctly skip over XDS and Text in transcoder
123 * 2.  force pdir/sdir to l2r and b2t
124 * 3.  fixed underline during monospace
125 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 10-
126 * Oct-02.11:30:47
127 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccPacket.c various
128 * improvements:
129 * 1.  correctly skip over XDS and Text in transcoder
130 * 2.  force pdir/sdir to l2r and b2t
131 * 3.  fixed underline during monospace
132 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 08-
133 * Oct-02.16:01:23
134 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c force l2r pdir
135 * --- 10-Oct-02.11:30:51
136 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c various
137 * improvements:
138 * 1.  correctly skip over XDS and Text in transcoder
139 * 2.  force pdir/sdir to l2r and b2t
140 * 3.  fixed underline during monospace
141 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 10-
142 * Oct-02.12:38:10
143 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c DLY and DLC
144 * imply ETX --- 10-Oct-02.14:09:02
145 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c support
146 * transparent space
147 * and fix RemapMultiByteTextToC1 --- 11-Oct-02.12:00:25
148 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030 Added file element
149 * "arial_20.c". Added file element "arial_20_italic.c". --- 08-Oct-
150 * 02.16:03:24 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c
151 * split ccgfxRenderChar into two DoRenderChar calls --- 10-Oct-
152 * 02.11:30:54 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c
153 * various improvements:
154 * 1.  correctly skip over XDS and Text in transcoder
155 * 2.  force pdir/sdir to l2r and b2t
156 * 3.  fixed underline during monospace
157 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 10-
158 * Oct-02.14:09:08
159 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c support
160 * transparent space
161 * and fix RemapMultiByteTextToC1 --- 10-Oct-02.17:04:05
162 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c fixed
163 * flashing by 2 surfaces
164 * this was broken when render incremental was added --- 11-Oct-
165 * 02.11:49:27 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c
166 * cleaned up in prep for release --- 11-Oct-02.12:01:00
167 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c added a
168 * comment for the font files --- 10-Oct-02.11:30:59
169 * \SetTop\applications\vbi\Common\bcmDccEngine.h various improvements:
170 * 1.  correctly skip over XDS and Text in transcoder
171 * 2.  force pdir/sdir to l2r and b2t
172 * 3.  fixed underline during monospace
173 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 10-
174 * Oct-02.11:31:03 \SetTop\applications\vbi\Common\bcmDccEngine.c various
175 * improvements:
176 * 1.  correctly skip over XDS and Text in transcoder
177 * 2.  force pdir/sdir to l2r and b2t
178 * 3.  fixed underline during monospace
179 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 08-
180 * Oct-02.16:02:32
181 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c add
182 * support for XDS and fix Text mode --- 10-Oct-02.11:31:07
183 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c various
184 * improvements:
185 * 1.  correctly skip over XDS and Text in transcoder
186 * 2.  force pdir/sdir to l2r and b2t
187 * 3.  fixed underline during monospace
188 * 4.  fixed packet processing:  short pkts and discontinuous pkts --- 10-
189 * Oct-02.15:25:03
190 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c fixed
191 * bug with XDS detection --- 11-Oct-02.11:49:31
192 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c cleaned
193 * up in prep for release --- 08-Oct-02.16:02:36
194 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDcc608Transcoder.h add
195 * support for XDS and fix Text mode --- 08-Oct-02.16:03:39
196 * \SetTop\applications\vbi\Docs\SarnoffTesting.xls added set 1
197 * placeholder --- 11-Oct-02.12:01:30
198 * \SetTop\applications\vbi\Docs\SarnoffTesting.xls updated for oct 11
199 * release --- 11-Oct-02.12:00:12
200 *
201 * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_week_oct7_2002_10_07_0927_44/1   10/10/02 11:30a erikg
202 * various improvements:
203 * 1.  correctly skip over XDS and Text in transcoder
204 * 2.  force pdir/sdir to l2r and b2t
205 * 3.  fixed underline during monospace
206 * 4.  fixed packet processing:  short pkts and discontinuous pkts
207 *
208 * SanJose_MSTV_Devel/2   9/20/02 3:42p erikg
209 * Major Changes: 1.  reworked Engine API 2.  removed need for include
210 * memory.h, changed memset to dcc_memset 3.  fixed cbWritePtr error
211 * handling 4.  cleanup of bcmDccPriv.h 5.  cleanup of ccgfxInit and
212 * ccgfxFini 6.  added support for reset cmd in bcmDccCoding.c 7.  added
213 * more error codes in bcmDcc.h    Merge from
214 * SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19  18-Sep-
215 * 02.10:26:19 \SetTop\applications\vbi\public_inc\bcmDcc.h totally
216 * reworked Engine Interface --- 18-Sep-02.14:44:46
217 * \SetTop\applications\vbi\public_inc\bcmDcc.h various fixes for build
218 * issues when adding new engine api --- 13-Sep-02.09:03:16
219 * \SetTop\applications\vbi\Common\bcmDccPriv.h added g_DumpStreamFlags -
220 * -- 18-Sep-02.14:44:52 \SetTop\applications\vbi\Common\bcmDccPriv.h
221 * ccgfxFini calls srpInit --- 13-Sep-02.09:02:04
222 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c scoot gfx ---
223 * 16-Sep-02.16:41:11
224 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c merged out --
225 * - 19-Sep-02.15:08:35
226 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c cleaned up
227 * bcmDccPriv.h --- 20-Sep-02.15:36:05
228 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c prep for
229 * release --- 17-Sep-02.15:13:40
230 * \SetTop\applications\vbi\Common\bcmDccEngine.h reworked engine in
231 * progress --- 18-Sep-02.10:26:16
232 * \SetTop\applications\vbi\Common\bcmDccEngine.h totally reworked Engine
233 * --- 18-Sep-02.10:26:13 \SetTop\applications\vbi\Common\bcmDccEngine.c
234 * totally reworked Engine Interface --- 18-Sep-02.14:45:08
235 * \SetTop\applications\vbi\Common\bcmDccEngine.c various fixes for build
236 * issues when adding new engine api --- 19-Sep-02.15:08:39
237 * \SetTop\applications\vbi\Common\bcmDccEngine.c cleaned up bcmDccPriv.h
238 * --- 19-Sep-02.15:33:11 \SetTop\applications\vbi\Common\bcmDccEngine.c
239 * took out #ifdef'ed out code --- 10-Sep-02.14:08:44
240 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c added
241 * g_DumpStreamFlags --- 13-Sep-02.09:02:43
242 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c test
243 * for 15 --- 18-Sep-02.14:45:12
244 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c various
245 *
246 * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19/2   9/18/02 2:44p erikg
247 * various fixes for build issues when adding new engine api
248 *
249 * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19/1   9/18/02 10:26a erikg
250 * totally reworked Engine Interface
251 *
252 * \main\SanJose_MSTV_Devel\1   3/12/02 4:45p erikg
253 * Merge from SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38
254 *
255 * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\3   3/12/02 4:0p erikg
256 * changed a comment relating to DCCERR
257 *
258 * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\2   3/6/02 2:20p erikg
259 * added more error enums
260 *
261 * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\1   3/6/02 11:29a erikg
262 * common include file for digital closed captioning
263 *
264 ***************************************************************************/
265
266#ifndef BCMDCC_H
267#define BCMDCC_H
268
269#ifdef __cplusplus
270extern "C" {
271#endif
272
273
274
275/********************************************
276 *
277 * Enum:                        DCCERR
278 *
279 * Description:
280 *
281 *   DCCERR enumerates the error codes returned
282 *   by the collection of DCC Libraries.
283 *
284 ********************************************/
285 typedef enum tagDCCERR
286 {
287        dccSuccess                                              = 0,
288        dccErrObjectNotInitialized              = 1,
289        dccErrOutputBufTooSmall                 = 2,
290        dccErrNullPointer                               = 3,
291        dccErrBadOutputType                             = 4,
292        dccErrBufferOverflow                    = 5,
293        dccErrArgOutOfRange                             = 6,
294        dccErrSequence                                  = 7,
295        dccWrnPause                                             = 8 
296 } DCCERR ;
297
298 
299/********************************************
300 *
301 * Structure:           DCC_OUTBUF_INFO
302 *
303 * Description:
304 *
305 *   The DCC_OUTBUT_INFO structure holds the
306 *   information related to an output buffer.
307 *
308 ********************************************/
309typedef struct tagDCC_OUTBUF_INFO
310{
311        /*
312         * pOutputBuf
313         *
314         * This points to a buffer into which
315         * DccXxx_Process() will copy output bytes.
316         */
317        unsigned char *                 pOutputBuf ;
318
319        /*
320         * OutputBufSize
321         *
322         * The size in bytes of the buffer pointed
323         * to by pOutputBuf.
324         */
325        unsigned int                    OutputBufSize ;
326
327        /*
328         * OutputBytesProduced
329         *
330         * the DccXxx_Process() function will update this
331         * field, indicating how many bytes were copied
332         * to the output buffer.
333         */
334        unsigned int                    OutputBytesProduced ;
335
336        /*
337         * DccError
338         *
339         * Recoverable errors related to processing for
340         * a particular output are reported here.
341         */
342        DCCERR                                  DccError ;
343       
344} DCC_OUTBUF_INFO ;
345
346
347
348#ifdef __cplusplus
349}
350#endif
351
352#endif /* BCMDCC_H */
353
354
355
Note: See TracBrowser for help on using the repository browser.