MythTV  master
ASN1Codes.h
Go to the documentation of this file.
1 /* ASN1Codes.h
2 
3  Copyright (C) David C. J. Matthews 2004 dm at prolingua.co.uk
4 
5  This program is free software; you can redistribute it and/or
6  modify it under the terms of the GNU General Public License
7  as published by the Free Software Foundation; either version 2
8  of the License, or (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
18  Or, point your browser to http://www.gnu.org/copyleft/gpl.html
19 
20 */
21 #ifndef ASN1CODES_H
22 #define ASN1CODES_H
23 
24 // Universal codes _ standard across all ASN1 definitions
25 #define U_BOOL 1
26 #define U_INT 2
27 #define U_STRING 4
28 #define U_NULL 5
29 #define U_ENUM 10
30 #define U_SEQUENCE 16
31 
32 // Context_specific codes _ defined for MHEG 5
33 #define C_APPLICATION 0
34 #define C_SCENE 1
35 #define C_STANDARD_IDENTIFIER 2
36 #define C_STANDARD_VERSION 3
37 #define C_OBJECT_INFORMATION 4
38 #define C_ON_START_UP 5
39 #define C_ON_CLOSE_DOWN 6
40 #define C_ORIGINAL_GC_PRIORITY 7
41 #define C_ITEMS 8
42 #define C_RESIDENT_PROGRAM 9
43 #define C_REMOTE_PROGRAM 10
44 #define C_INTERCHANGED_PROGRAM 11
45 #define C_PALETTE 12
46 #define C_FONT 13
47 #define C_CURSOR_SHAPE 14
48 #define C_BOOLEAN_VARIABLE 15
49 #define C_INTEGER_VARIABLE 16
50 #define C_OCTET_STRING_VARIABLE 17
51 #define C_OBJECT_REF_VARIABLE 18
52 #define C_CONTENT_REF_VARIABLE 19
53 #define C_LINK 20
54 #define C_STREAM 21
55 #define C_BITMAP 22
56 #define C_LINE_ART 23
57 #define C_DYNAMIC_LINE_ART 24
58 #define C_RECTANGLE 25
59 #define C_HOTSPOT 26
60 #define C_SWITCH_BUTTON 27
61 #define C_PUSH_BUTTON 28
62 #define C_TEXT 29
63 #define C_ENTRY_FIELD 30
64 #define C_HYPER_TEXT 31
65 #define C_SLIDER 32
66 #define C_TOKEN_GROUP 33
67 #define C_LIST_GROUP 34
68 #define C_ON_SPAWN_CLOSE_DOWN 35
69 #define C_ON_RESTART 36
70 #define C_DEFAULT_ATTRIBUTES 37
71 #define C_CHARACTER_SET 38
72 #define C_BACKGROUND_COLOUR 39
73 #define C_TEXT_CONTENT_HOOK 40
74 #define C_TEXT_COLOUR 41
75 #define C_FONT2 42
76 #define C_FONT_ATTRIBUTES 43
77 #define C_IP_CONTENT_HOOK 44
78 #define C_STREAM_CONTENT_HOOK 45
79 #define C_BITMAP_CONTENT_HOOK 46
80 #define C_LINE_ART_CONTENT_HOOK 47
81 #define C_BUTTON_REF_COLOUR 48
82 #define C_HIGHLIGHT_REF_COLOUR 49
83 #define C_SLIDER_REF_COLOUR 50
84 #define C_INPUT_EVENT_REGISTER 51
85 #define C_SCENE_COORDINATE_SYSTEM 52
86 #define C_ASPECT_RATIO 53
87 #define C_MOVING_CURSOR 54
88 #define C_NEXT_SCENES 55
89 #define C_INITIALLY_ACTIVE 56
90 #define C_CONTENT_HOOK 57
91 #define C_ORIGINAL_CONTENT 58
92 #define C_SHARED 59
93 #define C_CONTENT_SIZE 60
94 #define C_CONTENT_CACHE_PRIORITY 61
95 #define C_LINK_CONDITION 62
96 #define C_LINK_EFFECT 63
97 #define C_NAME 64
98 #define C_INITIALLY_AVAILABLE 65
99 #define C_PROGRAM_CONNECTION_TAG 66
100 #define C_ORIGINAL_VALUE 67
101 #define C_OBJECT_REFERENCE 68
102 #define C_CONTENT_REFERENCE 69
103 #define C_MOVEMENT_TABLE 70
104 #define C_TOKEN_GROUP_ITEMS 71
105 #define C_NO_TOKEN_ACTION_SLOTS 72
106 #define C_POSITIONS 73
107 #define C_WRAP_AROUND 74
108 #define C_MULTIPLE_SELECTION 75
109 #define C_ORIGINAL_BOX_SIZE 76
110 #define C_ORIGINAL_POSITION 77
111 #define C_ORIGINAL_PALETTE_REF 78
112 #define C_TILING 79
113 #define C_ORIGINAL_TRANSPARENCY 80
114 #define C_BORDERED_BOUNDING_BOX 81
115 #define C_ORIGINAL_LINE_WIDTH 82
116 #define C_ORIGINAL_LINE_STYLE 83
117 #define C_ORIGINAL_REF_LINE_COLOUR 84
118 #define C_ORIGINAL_REF_FILL_COLOUR 85
119 #define C_ORIGINAL_FONT 86
120 #define C_HORIZONTAL_JUSTIFICATION 87
121 #define C_VERTICAL_JUSTIFICATION 88
122 #define C_LINE_ORIENTATION 89
123 #define C_START_CORNER 90
124 #define C_TEXT_WRAPPING 91
125 #define C_MULTIPLEX 92
126 #define C_STORAGE 93
127 #define C_LOOPING 94
128 #define C_AUDIO 95
129 #define C_VIDEO 96
130 #define C_RTGRAPHICS 97
131 #define C_COMPONENT_TAG 98
132 #define C_ORIGINAL_VOLUME 99
133 #define C_TERMINATION 100
134 #define C_ENGINE_RESP 101
135 #define C_ORIENTATION 102
136 #define C_MAX_VALUE 103
137 #define C_MIN_VALUE 104
138 #define C_INITIAL_VALUE 105
139 #define C_INITIAL_PORTION 106
140 #define C_STEP_SIZE 107
141 #define C_SLIDER_STYLE 108
142 #define C_INPUT_TYPE 109
143 #define C_CHAR_LIST 110
144 #define C_OBSCURED_INPUT 111
145 #define C_MAX_LENGTH 112
146 #define C_ORIGINAL_LABEL 113
147 #define C_BUTTON_STYLE 114
148 #define C_ACTIVATE 115
149 #define C_ADD 116
150 #define C_ADD_ITEM 117
151 #define C_APPEND 118
152 #define C_BRING_TO_FRONT 119
153 #define C_CALL 120
154 #define C_CALL_ACTION_SLOT 121
155 #define C_CLEAR 122
156 #define C_CLONE 123
157 #define C_CLOSE_CONNECTION 124
158 #define C_DEACTIVATE 125
159 #define C_DEL_ITEM 126
160 #define C_DESELECT 127
161 #define C_DESELECT_ITEM 128
162 #define C_DIVIDE 129
163 #define C_DRAW_ARC 130
164 #define C_DRAW_LINE 131
165 #define C_DRAW_OVAL 132
166 #define C_DRAW_POLYGON 133
167 #define C_DRAW_POLYLINE 134
168 #define C_DRAW_RECTANGLE 135
169 #define C_DRAW_SECTOR 136
170 #define C_FORK 137
171 #define C_GET_AVAILABILITY_STATUS 138
172 #define C_GET_BOX_SIZE 139
173 #define C_GET_CELL_ITEM 140
174 #define C_GET_CURSOR_POSITION 141
175 #define C_GET_ENGINE_SUPPORT 142
176 #define C_GET_ENTRY_POINT 143
177 #define C_GET_FILL_COLOUR 144
178 #define C_GET_FIRST_ITEM 145
179 #define C_GET_HIGHLIGHT_STATUS 146
180 #define C_GET_INTERACTION_STATUS 147
181 #define C_GET_ITEM_STATUS 148
182 #define C_GET_LABEL 149
183 #define C_GET_LAST_ANCHOR_FIRED 150
184 #define C_GET_LINE_COLOUR 151
185 #define C_GET_LINE_STYLE 152
186 #define C_GET_LINE_WIDTH 153
187 #define C_GET_LIST_ITEM 154
188 #define C_GET_LIST_SIZE 155
189 #define C_GET_OVERWRITE_MODE 156
190 #define C_GET_PORTION 157
191 #define C_GET_POSITION 158
192 #define C_GET_RUNNING_STATUS 159
193 #define C_GET_SELECTION_STATUS 160
194 #define C_GET_SLIDER_VALUE 161
195 #define C_GET_TEXT_CONTENT 162
196 #define C_GET_TEXT_DATA 163
197 #define C_GET_TOKEN_POSITION 164
198 #define C_GET_VOLUME 165
199 #define C_LAUNCH 166
200 #define C_LOCK_SCREEN 167
201 #define C_MODULO 168
202 #define C_MOVE 169
203 #define C_MOVE_TO 170
204 #define C_MULTIPLY 171
205 #define C_OPEN_CONNECTION 172
206 #define C_PRELOAD 173
207 #define C_PUT_BEFORE 174
208 #define C_PUT_BEHIND 175
209 #define C_QUIT 176
210 #define C_READ_PERSISTENT 177
211 #define C_RUN 178
212 #define C_SCALE_BITMAP 179
213 #define C_SCALE_VIDEO 180
214 #define C_SCROLL_ITEMS 181
215 #define C_SELECT 182
216 #define C_SELECT_ITEM 183
217 #define C_SEND_EVENT 184
218 #define C_SEND_TO_BACK 185
219 #define C_SET_BOX_SIZE 186
220 #define C_SET_CACHE_PRIORITY 187
221 #define C_SET_COUNTER_END_POSITION 188
222 #define C_SET_COUNTER_POSITION 189
223 #define C_SET_COUNTER_TRIGGER 190
224 #define C_SET_CURSOR_POSITION 191
225 #define C_SET_CURSOR_SHAPE 192
226 #define C_SET_DATA 193
227 #define C_SET_ENTRY_POINT 194
228 #define C_SET_FILL_COLOUR 195
229 #define C_SET_FIRST_ITEM 196
230 #define C_SET_FONT_REF 197
231 #define C_SET_HIGHLIGHT_STATUS 198
232 #define C_SET_INTERACTION_STATUS 199
233 #define C_SET_LABEL 200
234 #define C_SET_LINE_COLOUR 201
235 #define C_SET_LINE_STYLE 202
236 #define C_SET_LINE_WIDTH 203
237 #define C_SET_OVERWRITE_MODE 204
238 #define C_SET_PALETTE_REF 205
239 #define C_SET_PORTION 206
240 #define C_SET_POSITION 207
241 #define C_SET_SLIDER_VALUE 208
242 #define C_SET_SPEED 209
243 #define C_SET_TIMER 210
244 #define C_SET_TRANSPARENCY 211
245 #define C_SET_VARIABLE 212
246 #define C_SET_VOLUME 213
247 #define C_SPAWN 214
248 #define C_STEP 215
249 #define C_STOP 216
250 #define C_STORE_PERSISTENT 217
251 #define C_SUBTRACT 218
252 #define C_TEST_VARIABLE 219
253 #define C_TOGGLE 220
254 #define C_TOGGLE_ITEM 221
255 #define C_TRANSITION_TO 222
256 #define C_UNLOAD 223
257 #define C_UNLOCK_SCREEN 224
258 #define C_NEW_GENERIC_BOOLEAN 225
259 #define C_NEW_GENERIC_INTEGER 226
260 #define C_NEW_GENERIC_OCTETSTRING 227
261 #define C_NEW_GENERIC_OBJECT_REF 228
262 #define C_NEW_GENERIC_CONTENT_REF 229
263 #define C_NEW_COLOUR_INDEX 230
264 #define C_NEW_ABSOLUTE_COLOUR 231
265 #define C_NEW_FONT_NAME 232
266 #define C_NEW_FONT_REFERENCE 233
267 #define C_NEW_CONTENT_SIZE 234
268 #define C_NEW_CONTENT_CACHE_PRIO 235
269 #define C_INDIRECTREFERENCE 236
270 /* UK MHEG */
271 #define C_SET_BACKGROUND_COLOUR 237
272 #define C_SET_CELL_POSITION 238
273 #define C_SET_INPUT_REGISTER 239
274 #define C_SET_TEXT_COLOUR 240
275 #define C_SET_FONT_ATTRIBUTES 241
276 #define C_SET_VIDEO_DECODE_OFFSET 242
277 #define C_GET_VIDEO_DECODE_OFFSET 243
278 #define C_GET_FOCUS_POSITION 244
279 #define C_SET_FOCUS_POSITION 245
280 #define C_SET_BITMAP_DECODE_OFFSET 246
281 #define C_GET_BITMAP_DECODE_OFFSET 247
282 #define C_SET_SLIDER_PARAMETERS 248
283 // Added in ETSI ES 202 184 V2.1.1 (2010-01)
284 #define C_GET_DESKTOP_COLOUR 249
285 #define C_SET_DESKTOP_COLOUR 250
286 #define C_GET_COUNTER_POSITION 251
287 #define C_GET_COUNTER_MAX_POSITION 252
288 
289 // Pseudo-codes. These are encoded into the link condition in binary but it's convenient
290 // to give them codes here since that way we can include them in the same lookup table.
291 #define P_EVENT_SOURCE 249
292 #define P_EVENT_TYPE 250
293 #define P_EVENT_DATA 251
294 // The :ActionSlots tag appears in the textual form but not in binary.
295 #define P_ACTION_SLOTS 252
296 
297 
298 #endif