source: svn/newcon3bcm2_21bu/BSEAV/lib/scte65/mgt/si_mgt.h @ 47

Last change on this file since 47 was 47, checked in by megakiss, 11 years ago

459Mhz로 OTC 주파수 변경

  • Property svn:executable set to *
File size: 3.9 KB
Line 
1/***************************************************************
2**
3** Broadcom Corp. Confidential
4** Copyright 2003-2008 Broadcom Corp. All Rights Reserved.
5**
6** THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED
7** SOFTWARE LICENSE AGREEMENT BETWEEN THE USER AND BROADCOM.
8** YOU HAVE NO RIGHT TO USE OR EXPLOIT THIS MATERIAL EXCEPT
9** SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
10**
11** File:                si_mgt.h
12** Description: defines for the MGT table parse function.
13**
14** Created: 03/08/2001
15**
16** REVISION:
17**
18** $Log: $
19**
20**
21****************************************************************/
22#ifndef SI_MGT_H
23#define SI_MGT_H
24
25SI_LST_D_HEAD(aeit_slot_list, _SI_AEIT_SLOT);
26SI_LST_D_HEAD(aett_slot_list, _SI_AETT_SLOT);
27
28
29/* For the following, refer to table 5.24 of ANSI/SCTE65 2002 (DVS234) */
30/* for table header. */
31#define MGT_TABLE_ID_BYTE_INDX          0
32#define MGT_TABLE_ID_BYTE_NUM                   1
33#define MGT_TABLE_ID_SHIFT                      0
34#define MGT_TABLE_ID_MASK                               0xff
35
36#define MGT_SECTION_LENGTH_BYTE_INDX    1
37#define MGT_SECTION_LENGTH_BYTE_NUM    2
38#define MGT_SECTION_LENGTH_SHIFT    0
39#define MGT_SECTION_LENGTH_MASK    0x0fff
40
41#define MGT_VERSION_NUMBER_BYTE_INDX    5
42#define MGT_VERSION_NUMBER_BYTE_NUM    1
43#define MGT_VERSION_NUMBER_SHIFT    1
44#define MGT_VERSION_NUMBER_MASK    0x1f
45
46#define MGT_CURRENT_NEXT_INDICATOR_BYTE_INDX    5
47#define MGT_CURRENT_NEXT_INDICATOR_BYTE_NUM    1
48#define MGT_CURRENT_NEXT_INDICATOR_SHIFT    0
49#define MGT_CURRENT_NEXT_INDICATOR_MASK    0x01
50
51#define MGT_SECTION_NUMBER_BYTE_INDX    6
52#define MGT_SECTION_NUMBER_BYTE_NUM    1
53#define MGT_SECTION_NUMBER_SHIFT    0
54#define MGT_SECTION_NUMBER_MASK    0xff
55
56#define MGT_LAST_SECTION_NUMBER_BYTE_INDX    7
57#define MGT_LAST_SECTION_NUMBER_BYTE_NUM    1
58#define MGT_LAST_SECTION_NUMBER_SHIFT    0
59#define MGT_LAST_SECTION_NUMBER_MASK    0xff
60
61#define MGT_PROTOCOL_VERSION_BYTE_INDX    8
62#define MGT_PROTOCOL_VERSION_BYTE_NUM    1
63#define MGT_PROTOCOL_VERSION_SHIFT    0
64#define MGT_PROTOCOL_VERSION_MASK    0xff
65
66#define MGT_TABLES_DEFINED_BYTE_INDX    9
67#define MGT_TABLES_DEFINED_BYTE_NUM    2
68#define MGT_TABLES_DEFINED_SHIFT    0
69#define MGT_TABLES_DEFINED_MASK    0xffff
70
71/* for table type defines. */
72#define MGT_TABLE_TYPE_BYTE_INDX    0
73#define MGT_TABLE_TYPE_BYTE_NUM    2
74#define MGT_TABLE_TYPE_SHIFT    0
75#define MGT_TABLE_TYPE_MASK    0xffff
76
77#define MGT_TABLE_TYPE_PID_BYTE_INDX    2
78#define MGT_TABLE_TYPE_PID_BYTE_NUM    2
79#define MGT_TABLE_TYPE_PID_SHIFT    0
80#define MGT_TABLE_TYPE_PID_MASK    0x1fff
81
82#define MGT_TABLE_TYPE_VERSION_NUMBER_BYTE_INDX    4
83#define MGT_TABLE_TYPE_VERSION_NUMBER_BYTE_NUM    1
84#define MGT_TABLE_TYPE_VERSION_NUMBER_SHIFT    0
85#define MGT_TABLE_TYPE_VERSION_NUMBER_MASK    0x1f
86
87#define MGT_NUMBER_BYTES_BYTE_INDX    5
88#define MGT_NUMBER_BYTES_BYTE_NUM    4
89#define MGT_NUMBER_BYTES_SHIFT    0
90#define MGT_NUMBER_BYTES_MASK    0xffffffff
91
92#define MGT_TABLE_TYPE_DESC_LENGTH_BYTE_INDX    9
93#define MGT_TABLE_TYPE_DESC_LENGTH_BYTE_NUM    2
94#define MGT_TABLE_TYPE_DESC_LENGTH_SHIFT    0
95#define MGT_TABLE_TYPE_DESC_LENGTH_MASK    0x0fff
96
97/* the MGT table descriptor start from the end of table types. */
98#define MGT_DESC_LENGTH_BYTE_INDX    0
99#define MGT_DESC_LENGTH_BYTE_NUM    2
100#define MGT_DESC_LENGTH_SHIFT    0
101#define MGT_DESC_LENGTH_MASK    0x0fff
102
103
104/* MGT table type defines. refer to table 5.25 of ANSI/SCTE65 2002 (DVS234) */
105#define MGT_TABLE_TYPE_LVCT_1           0x02
106#define MGT_TABLE_TYPE_LVCT_0           0x03
107#define MGT_TABLE_TYPE_SVCT_VCM         0x10
108#define MGT_TABLE_TYPE_SVCT_DCM         0x11
109#define MGT_TABLE_TYPE_SVCT_ICM         0x12
110#define MGT_TABLE_TYPE_NIT_CDS          0x20
111#define MGT_TABLE_TYPE_NIT_MMS          0x21
112#define MGT_TABLE_TYPE_NTT_SNS          0x30
113#define MGT_TABLE_TYPE_RRT_1                    0x301
114#define MGT_TABLE_TYPE_AEIT_START               0x1000
115#define MGT_TABLE_TYPE_AEIT_END         0x10ff
116#define MGT_TABLE_TYPE_AETT_START               0x1100
117#define MGT_TABLE_TYPE_AETT_END         0x11ff
118
119
120
121#ifdef __cplusplus
122extern "C" {
123#endif
124
125void SI_MGT_Init (void);
126SI_RET_CODE SI_MGT_parse (unsigned char * mgt_table);
127
128#ifdef __cplusplus
129}
130#endif
131
132
133
134#endif
135
Note: See TracBrowser for help on using the repository browser.