/*************************************************************************** * Copyright (c) 2002, Broadcom Corporation * All Rights Reserved * Confidential Property of Broadcom Corporation * * THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE * AGREEMENT BETWEEN THE USER AND BROADCOM. YOU HAVE NO RIGHT TO USE OR * EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT. * * $brcm_Workfile: bcmDcc.h $ * $brcm_Revision: SanJose_MSTV_Devel/4 $ * $brcm_Date: 10/25/02 10:30a $ * * Module Description: * * Revision History: * * $brcm_Log: /SetTop/applications/vbi/public_inc/bcmDcc.h $ * * SanJose_MSTV_Devel/4 10/25/02 10:30a erikg * Numerous Changes: 1. cbPostByte/Ptr fixed return val and Len logic 2. * DccEngine_Reset: save/restore user overrides 3. * DccEngine_Process708: finer grained pipe 4. ccgfx: fixed mem leak * in which fonts are not unloaded 5. added pre/post line space in ccgfx * and removed from 608 xcoder 6. 608 transcoder: implemented * BackSpace, ExtendedChar set, TAB 7. improved user override logic 8. * more selective mid-line re-render Merge from * SanJose_MSTV_Devel_erikg_week_oct_14_2002_10_14_1204_17 25-Oct- * 02.08:21:19 \SetTop\applications\vbi\public_inc\bcmDcc.h 1. finer * grained pipe * 2. more selective mid-line re-render --- 18-Oct-02.16:02:11 * \SetTop\applications\vbi\Common\bcmDccPriv.h made a number of the * config #defines actual globals * to facilitate run-time configuration --- 17-Oct-02.08:58:37 * \SetTop\applications\vbi\Common\bcmDccCBuf.c fixed return vals on * cbPostByte and cbPostPtr --- 25-Oct-02.08:20:18 * \SetTop\applications\vbi\Common\bcmDccCBuf.c fixed cbPostPtr Len logic * error --- 18-Oct-02.16:02:17 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDccGfx.h made a number * of the config #defines actual globals * to facilitate run-time configuration --- 18-Oct-02.16:02:21 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDTVCC708.h made a * number of the config #defines actual globals * to facilitate run-time configuration --- 22-Oct-02.17:09:38 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccPacket.c moved printf - * -- 17-Oct-02.09:01:01 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccInt.c improved user * override handling * DccEngine_Reset and ResetDownstream both preserve overrides --- 25-Oct- * 02.08:21:22 \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c 1. * finer grained pipe * 2. more selective mid-line re-render --- 25-Oct-02.08:42:49 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c misc changes - * -- 25-Oct-02.08:21:26 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntPriv.h 1. finer * grained pipe * 2. more selective mid-line re-render --- 25-Oct-02.08:21:29 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c 1. finer * grained pipe * 2. more selective mid-line re-render --- 14-Oct-02.16:03:55 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c fixed MIPS * exception -- FontLoad was not matched w/ FontUnload --- 17-Oct- * 02.11:02:34 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c * surface clipping --- 18-Oct-02.14:03:07 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c move leading * and trailing space into ccgfx --- 18-Oct-02.16:02:24 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c made a number * of the config #defines actual globals * to facilitate run-time configuration --- 25-Oct-02.08:42:57 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c misc changes * --- 25-Oct-02.10:16:25 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c prep for * release --- 17-Oct-02.09:01:06 * \SetTop\applications\vbi\Common\bcmDccEngine.c improved user override * handling * DccEngine_Reset and ResetDownstream both preserve overrides --- 18-Oct- * 02.16:02:29 \SetTop\applications\vbi\Common\bcmDccEngine.c made a * number of the config #defines actual globals * to facilitate run-time configuration --- 22-Oct-02.17:10:19 * \SetTop\applications\vbi\Common\bcmDccEngine.c added printf --- 25- * Oct-02.08:21:33 \SetTop\applications\vbi\Common\bcmDccEngine.c 1. * finer grained pipe * 2. more selective mid-line re-render --- 25-Oct-02.10:16:31 * \SetTop\applications\vbi\Common\bcmDccEngine.c prep for release --- * 18-Oct-02.14:03:15 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c move * leading and trailing space into ccgfx --- 21-Oct-02.14:51:16 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c support * for backspace and tab * support for extended char sets --- * * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_week_oct_14_2002_10_14_1204_17/1 10/25/02 8:21a erikg * 1. finer grained pipe * 2. more selective mid-line re-render * * SanJose_MSTV_Devel/3 10/11/02 12:13p erikg * Various Changes: 1. Fixed NTSC Caption Parsing from A53 2. Supports * pkt seq discontinuity reset 3. Support shortened pkts 4. Fixed * underline during monospaced simulation 5. Added parity checking to * chars in 608 transcoder 6. Correctly skips XDS and Text modes in * transcoder 7. Supports transparent space 8. Fixed Flashing * (FLASH_BY_2SURFACES) 9. DLY and DLC imply ETX 10.Force all combos of * PDir/SDir to L2R/B2T 11. Packet interface has changed Merge from * SanJose_MSTV_Devel_erikg_week_oct7_2002_10_07_0927_44 10-Oct- * 02.11:30:39 \SetTop\applications\vbi\public_inc\bcmDcc.h various * improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 08- * Oct-02.16:00:59 * \SetTop\applications\vbi\MPEGCCTransportLib\source\bcmDccTransportPars * e.c diff treatment for cc_type --- 11-Oct-02.11:49:16 * \SetTop\applications\vbi\MPEGCCTransportLib\source\bcmDccTransportPars * e.c cleaned up in prep for release --- 10-Oct-02.11:26:59 * \SetTop\applications\vbi\Common\bcmDccCBuf.c added cbUnPeek --- 11- * Oct-02.11:49:21 \SetTop\applications\vbi\Common\bcmDccCBuf.c cleaned * up in prep for release --- 10-Oct-02.11:27:05 * \SetTop\applications\vbi\Common\bcmDccCBuf.h added cbUnPeek --- 11- * Oct-02.11:49:24 \SetTop\applications\vbi\Common\bcmDccCBuf.h cleaned * up in prep for release --- 10-Oct-02.11:30:44 * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 10- * Oct-02.11:30:47 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccPacket.c various * improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 08- * Oct-02.16:01:23 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c force l2r pdir * --- 10-Oct-02.11:30:51 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccIntGfx.c various * improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 10- * Oct-02.12:38:10 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c DLY and DLC * imply ETX --- 10-Oct-02.14:09:02 * \SetTop\applications\vbi\DTVCCLib\source\bcmDccCoding.c support * transparent space * and fix RemapMultiByteTextToC1 --- 11-Oct-02.12:00:25 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030 Added file element * "arial_20.c". Added file element "arial_20_italic.c". --- 08-Oct- * 02.16:03:24 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c * split ccgfxRenderChar into two DoRenderChar calls --- 10-Oct- * 02.11:30:54 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c * various improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 10- * Oct-02.14:09:08 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c support * transparent space * and fix RemapMultiByteTextToC1 --- 10-Oct-02.17:04:05 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c fixed * flashing by 2 surfaces * this was broken when render incremental was added --- 11-Oct- * 02.11:49:27 \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c * cleaned up in prep for release --- 11-Oct-02.12:01:00 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c added a * comment for the font files --- 10-Oct-02.11:30:59 * \SetTop\applications\vbi\Common\bcmDccEngine.h various improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 10- * Oct-02.11:31:03 \SetTop\applications\vbi\Common\bcmDccEngine.c various * improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 08- * Oct-02.16:02:32 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c add * support for XDS and fix Text mode --- 10-Oct-02.11:31:07 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c various * improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts --- 10- * Oct-02.15:25:03 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c fixed * bug with XDS detection --- 11-Oct-02.11:49:31 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c cleaned * up in prep for release --- 08-Oct-02.16:02:36 * \SetTop\applications\vbi\DTVCCLib\public_inc\bcmDcc608Transcoder.h add * support for XDS and fix Text mode --- 08-Oct-02.16:03:39 * \SetTop\applications\vbi\Docs\SarnoffTesting.xls added set 1 * placeholder --- 11-Oct-02.12:01:30 * \SetTop\applications\vbi\Docs\SarnoffTesting.xls updated for oct 11 * release --- 11-Oct-02.12:00:12 * * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_week_oct7_2002_10_07_0927_44/1 10/10/02 11:30a erikg * various improvements: * 1. correctly skip over XDS and Text in transcoder * 2. force pdir/sdir to l2r and b2t * 3. fixed underline during monospace * 4. fixed packet processing: short pkts and discontinuous pkts * * SanJose_MSTV_Devel/2 9/20/02 3:42p erikg * Major Changes: 1. reworked Engine API 2. removed need for include * memory.h, changed memset to dcc_memset 3. fixed cbWritePtr error * handling 4. cleanup of bcmDccPriv.h 5. cleanup of ccgfxInit and * ccgfxFini 6. added support for reset cmd in bcmDccCoding.c 7. added * more error codes in bcmDcc.h Merge from * SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19 18-Sep- * 02.10:26:19 \SetTop\applications\vbi\public_inc\bcmDcc.h totally * reworked Engine Interface --- 18-Sep-02.14:44:46 * \SetTop\applications\vbi\public_inc\bcmDcc.h various fixes for build * issues when adding new engine api --- 13-Sep-02.09:03:16 * \SetTop\applications\vbi\Common\bcmDccPriv.h added g_DumpStreamFlags - * -- 18-Sep-02.14:44:52 \SetTop\applications\vbi\Common\bcmDccPriv.h * ccgfxFini calls srpInit --- 13-Sep-02.09:02:04 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c scoot gfx --- * 16-Sep-02.16:41:11 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c merged out -- * - 19-Sep-02.15:08:35 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c cleaned up * bcmDccPriv.h --- 20-Sep-02.15:36:05 * \SetTop\applications\vbi\DTVCCLib\CCGfx\7030\bcmDccGfx.c prep for * release --- 17-Sep-02.15:13:40 * \SetTop\applications\vbi\Common\bcmDccEngine.h reworked engine in * progress --- 18-Sep-02.10:26:16 * \SetTop\applications\vbi\Common\bcmDccEngine.h totally reworked Engine * --- 18-Sep-02.10:26:13 \SetTop\applications\vbi\Common\bcmDccEngine.c * totally reworked Engine Interface --- 18-Sep-02.14:45:08 * \SetTop\applications\vbi\Common\bcmDccEngine.c various fixes for build * issues when adding new engine api --- 19-Sep-02.15:08:39 * \SetTop\applications\vbi\Common\bcmDccEngine.c cleaned up bcmDccPriv.h * --- 19-Sep-02.15:33:11 \SetTop\applications\vbi\Common\bcmDccEngine.c * took out #ifdef'ed out code --- 10-Sep-02.14:08:44 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c added * g_DumpStreamFlags --- 13-Sep-02.09:02:43 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c test * for 15 --- 18-Sep-02.14:45:12 * \SetTop\applications\vbi\DTVCCLib\source\bcmDcc608Transcoder.c various * * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19/2 9/18/02 2:44p erikg * various fixes for build issues when adding new engine api * * SanJose_MSTV_Devel/SanJose_MSTV_Devel_erikg_SarnoffDebug_2002_09_10_1035_19/1 9/18/02 10:26a erikg * totally reworked Engine Interface * * \main\SanJose_MSTV_Devel\1 3/12/02 4:45p erikg * Merge from SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38 * * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\3 3/12/02 4:0p erikg * changed a comment relating to DCCERR * * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\2 3/6/02 2:20p erikg * added more error enums * * \main\SanJose_MSTV_Devel_erikg_mpegccxport2_2002_03_06_1118_38\1 3/6/02 11:29a erikg * common include file for digital closed captioning * ***************************************************************************/ #ifndef BCMDCC_H #define BCMDCC_H #ifdef __cplusplus extern "C" { #endif /******************************************** * * Enum: DCCERR * * Description: * * DCCERR enumerates the error codes returned * by the collection of DCC Libraries. * ********************************************/ typedef enum tagDCCERR { dccSuccess = 0, dccErrObjectNotInitialized = 1, dccErrOutputBufTooSmall = 2, dccErrNullPointer = 3, dccErrBadOutputType = 4, dccErrBufferOverflow = 5, dccErrArgOutOfRange = 6, dccErrSequence = 7, dccWrnPause = 8 } DCCERR ; /******************************************** * * Structure: DCC_OUTBUF_INFO * * Description: * * The DCC_OUTBUT_INFO structure holds the * information related to an output buffer. * ********************************************/ typedef struct tagDCC_OUTBUF_INFO { /* * pOutputBuf * * This points to a buffer into which * DccXxx_Process() will copy output bytes. */ unsigned char * pOutputBuf ; /* * OutputBufSize * * The size in bytes of the buffer pointed * to by pOutputBuf. */ unsigned int OutputBufSize ; /* * OutputBytesProduced * * the DccXxx_Process() function will update this * field, indicating how many bytes were copied * to the output buffer. */ unsigned int OutputBytesProduced ; /* * DccError * * Recoverable errors related to processing for * a particular output are reported here. */ DCCERR DccError ; } DCC_OUTBUF_INFO ; #ifdef __cplusplus } #endif #endif /* BCMDCC_H */