MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
vpa1_tgs.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2004 Ocean Blue Software Ltd
4  * Copyright © 2000 Koninklijke Philips Electronics N.V
5  *
6  * This file is part of a DTVKit Software Component
7  * You are permitted to copy, modify or distribute this file subject to the terms
8  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
9  *
10  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
11  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
12  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
13  *
14  * If you or your organisation is not a member of DTVKit then you have access
15  * to this source code outside of the terms of the licence agreement
16  * and you are expected to delete this and any associated files immediately.
17  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
18  *******************************************************************************/
26 #ifndef _VPA1_TGS_H
27 #define _VPA1_TGS_H
28 
29 /*---includes for this file--------------------------------------------------*/
30 #include "vpa1_sys.h"
31 
32 /*---Enumerations for public use---------------------------------------------*/
33 
34 /*---Global type defs for public use-----------------------------------------*/
35 
36 /*---Constant and macro definitions for public use---------------------------*/
37 
38 /* Universal Class tags */
39 #define MHEG_BOOL 1
40 #define INTEGER 2
41 #define OCTETSTRING 4
42 #define MHEG_NULL 5
43 #define ENUMERATED 10
44 #define SEQUENCE 16
45 #define SET 17
46 
47 /* Context Specific tags (+2000) */
48 #define CONT_SPEC_TAGS 2000
49 #define APPLICATION 2000
50 #define SCENE 2001
51 #define STDID 2002
52 #define STDVER 2003
53 #define OBJINFO 2004
54 #define STARTUP 2005
55 #define CLOSEDOWN 2006
56 #define GCPRIO 2007
57 #define ITEMS 2008
58 #define RESIDENT 2009
59 #define REMOTE 2010
60 #define INTERCHAN 2011
61 #define PALETTE 2012
62 #define FONT 2013
63 #define CSHAPE 2014
64 #define BOOLVAR 2015
65 #define INTVAR 2016
66 #define OCTVAR 2017
67 #define OBJVAR 2018
68 #define CONTVAR 2019
69 #define LINK 2020
70 #define STREAM 2021
71 #define BITMAP 2022
72 #define LINEART 2023
73 #define DYNAMICLINEART 2024
74 #define RECT 2025
75 #define HOTSPOT 2026
76 #define SWITCH 2027
77 #define PUSH 2028
78 #define TEXT 2029
79 #define ENTRY 2030
80 #define HYPER 2031
81 #define SLIDER 2032
82 #define TGROUP 2033
83 #define LGROUP 2034
84 #define SPAWNCLOSE 2035
85 #define RESTART 2036
86 #define DEFATTS 2037
87 #define CHARSET 2038
88 #define BACKCOL 2039
89 #define TCHOOK 2040
90 #define TCOL 2041
91 #define DEFFONT 2042
92 #define FONTATTS 2043
93 #define INTPRGCHOOK 2044
94 #define STREAMCHOOK 2045
95 #define BITMAPCHOOK 2046
96 #define LINEARTCHOOK 2047
97 #define BUTTONREFCOL 2048
98 #define HIGHREFCOL 2049
99 #define SLIDEREFCOL 2050
100 #define INEVENT 2051
101 #define SCENECOORDS 2052
102 #define ASPECT 2053
103 #define MOVING 2054
104 #define NEXTSCN 2055
105 #define INITACTIVE 2056
106 #define CHOOK 2057
107 #define OCONTENT 2058
108 #define SHARED 2059
109 #define CONTSIZE 2060
110 #define CONTPRIO 2061
111 #define LINKCOND 2062
112 #define EFFECT 2063
113 #define NAME 2064
114 #define INITAVAIL 2065
115 #define PRGCONTAG 2066
116 #define OVALUE 2067
117 #define OBJREF 2068
118 #define CONTREF 2069
119 #define MOVEMENTTABLE 2070
120 #define TGITEMS 2071
121 #define NOTOKEN 2072
122 #define POSITIONS 2073
123 #define WRAP 2074
124 #define MULTIPLE 2075
125 #define OBOXSIZE 2076
126 #define OPOSITION 2077
127 #define OPALREF 2078
128 #define TILING 2079
129 #define OTRANS 2080
130 #define BBBOX 2081
131 #define OLWIDTH 2082
132 #define OLSTYLE 2083
133 #define ORLCOLOUR 2084
134 #define ORFCOLOUR 2085
135 #define OFONT 2086
136 #define HJUST 2087
137 #define VJUST 2088
138 #define LINEOR 2089
139 #define STARTCORN 2090
140 #define TEXTWRAP 2091
141 #define MULTIPLEX 2092
142 #define STORAGE 2093
143 #define LOOPING 2094
144 #define AUDIO 2095
145 #define VIDEO 2096
146 #define RTGRAPHICS 2097
147 #define COMPTAG 2098
148 #define OVOLUME 2099
149 #define TERMIN 2100
150 #define ENGRESP 2101
151 #define ORIENTATION 2102
152 #define MAXVAL 2103
153 #define MINVAL 2104
154 #define INITVAL 2105
155 #define INITPOR 2106
156 #define STEPSIZE 2107
157 #define SLSTYLE 2108
158 #define INPUTTYPE 2109
159 #define CHARLIST 2110
160 #define OBSCURED 2111
161 #define MAXLEN 2112
162 #define OLABEL 2113
163 #define BSTYLE 2114
164 
165 /* START Elementary Action tags */
166 #define ACTIVATE 2115
167 #define ADD 2116
168 #define ADDITEM 2117
169 #define APPEND 2118
170 #define BRINGTOFRONT 2119
171 #define CALL 2120
172 #define CALLACTIONSLOT 2121
173 #define CLEAR 2122
174 #define CLONE 2123
175 #define CLOSECONNECTION 2124
176 #define DEACTIVATE 2125
177 #define DELITEM 2126
178 #define DESELECT 2127
179 #define DESELECTITEM 2128
180 #define DIVIDE 2129
181 #define DRAWARC 2130
182 #define DRAWLINE 2131
183 #define DRAWOVAL 2132
184 #define DRAWPOLYGON 2133
185 #define DRAWPOLYLINE 2134
186 #define DRAWRECTANGLE 2135
187 #define DRAWSECTOR 2136
188 #define FORK 2137
189 #define GETAVAILABILITYSTATUS 2138
190 #define GETBOXSIZE 2139
191 #define GETCELLITEM 2140
192 #define GETCURSORPOSITION 2141
193 #define GETENGINESUPPORT 2142
194 #define GETENTRYPOINT 2143
195 #define GETFILLCOLOUR 2144
196 #define GETFIRSTITEM 2145
197 #define GETHIGHLIGHTSTATUS 2146
198 #define GETINTERACTIONSTATUS 2147
199 #define GETITEMSTATUS 2148
200 #define GETLABEL 2149
201 #define GETLASTANCHORFIRED 2150
202 #define GETLINECOLOUR 2151
203 #define GETLINESTYLE 2152
204 #define GETLINEWIDTH 2153
205 #define GETLISTITEM 2154
206 #define GETLISTSIZE 2155
207 #define GETOVERWRITEMODE 2156
208 #define GETPORTION 2157
209 #define GETPOSITION 2158
210 #define GETRUNNINGSTATUS 2159
211 #define GETSELECTIONSTATUS 2160
212 #define GETSLIDERVALUE 2161
213 #define GETTEXTCONTENT 2162
214 #define GETTEXTDATA 2163
215 #define GETTOKENPOSITION 2164
216 #define GETVOLUME 2165
217 #define LAUNCH 2166
218 #define LOCKSCREEN 2167
219 #define MODULO 2168
220 #define MOVE 2169
221 #define MOVETO 2170
222 #define MULTIPLY 2171
223 #define OPENCONNECTION 2172
224 #define PRELOAD 2173
225 #define PUTBEFORE 2174
226 #define PUTBEHIND 2175
227 #define QUIT 2176
228 #define READPERSISTENT 2177
229 #define RUN 2178
230 #define SCALEBITMAP 2179
231 #define SCALEVIDEO 2180
232 #define SCROLLITEMS 2181
233 #define SELECT 2182
234 #define SELECTITEM 2183
235 #define SENDEVENT 2184
236 #define SENDTOBACK 2185
237 #define SETBOXSIZE 2186
238 #define SETCACHEPRIORITY 2187
239 #define SETCOUNTERENDPOSITION 2188
240 #define SETCOUNTERPOSITION 2189
241 #define SETCOUNTERTRIGGER 2190
242 #define SETCURSORPOSITION 2191
243 #define SETCURSORSHAPE 2192
244 #define SETDATA 2193
245 #define SETENTRYPOINT 2194
246 #define SETFILLCOLOUR 2195
247 #define SETFIRSTITEM 2196
248 #define SETFONTREF 2197
249 #define SETHIGHLIGHTSTATUS 2198
250 #define SETINTERACTIONSTATUS 2199
251 #define SETLABEL 2200
252 #define SETLINECOLOUR 2201
253 #define SETLINESTYLE 2202
254 #define SETLINEWIDTH 2203
255 #define SETOVERWRITEMODE 2204
256 #define SETPALETTEREF 2205
257 #define SETPORTION 2206
258 #define SETPOSITION 2207
259 #define SETSLIDERVALUE 2208
260 #define SETSPEED 2209
261 #define SETTIMER 2210
262 #define SETTRANSPARENCY 2211
263 #define SETVARIABLE 2212
264 #define SETVOLUME 2213
265 #define SPAWN 2214
266 #define STEP 2215
267 #define STOP 2216
268 #define STOREPERSISTENT 2217
269 #define SUBTRACT 2218
270 #define TESTVARIABLE 2219
271 #define TOGGLE 2220
272 #define TOGGLEITEM 2221
273 #define TRANSITIONTO 2222
274 #define UNLOAD 2223
275 #define UNLOCKSCREEN 2224
276 /* END Elementary Action tags */
277 
278 #define GBOOL 2225
279 #define GINT 2226
280 #define GOSTRING 2227
281 #define GOBJREF 2228
282 #define GCONTREF 2229
283 #define NEWCOLIND 2230
284 #define NEWABSCOL 2231
285 #define NEWFONTNAME 2232
286 #define NEWFONTREF 2233
287 #define NEWCSIZE 2234
288 #define NEWCPRIO 2235
289 #define INDIRECT 2236
290 
291 /* START Additional Action tags MHEG-5 v1.06 */
292 #define SETBACKGROUNDCOLOUR 2237
293 #define SETCELLPOSITION 2238
294 #define SETINPUTREGISTER 2239
295 #define SETTEXTCOLOUR 2240
296 #define SETFONTATTRIBUTES 2241
297 #define SETVIDEODECODEOFFSET 2242
298 #define GETVIDEODECODEOFFSET 2243
299 #define GETFOCUSPOSITION 2244
300 #define SETFOCUSPOSITION 2245
301 #define SETBITMAPDECODEOFFSET 2246
302 #define GETBITMAPDECODEOFFSET 2247
303 #define SETSLIDERPARAMETERS 2248
304 /* END Additional Action tags MHEG-5 v1.06 */
305 
306 /* START Additional Context Specific tags D-Book 6.1 */
307 #define ODESKTOPCOLOUR 2249
308 /* END Additional Context Specific tags D-Book 6.1 */
309 
310 /* START Additional Action tags D-Book 6.1 */
311 #define SETDESKTOPCOLOUR 2250
312 #define GETCOUNTERPOSITION 2251
313 #define GETCOUNTERMAXPOSITION 2252
314 /* END Additional Action tags D-Book 6.1 */
315 
316 /* START Additional Context Specific tags CI+ 1.3*/
317 #define OINPUTMASK 2253
318 /* END Additional Context Specific tags CI+ 1.3*/
319 
320 /* START Additional Action tags CI+ 1.3 */
321 #define SETINPUTMASK 2254
322 /* END Additional Action tags CI+ 1.3 */
323 
324 /* vvv Where do these come from ???? */
325 #define INVOKE 2238
326 #define STRING 2239
327 #define QPRINTABLE 2240
328 #define BASE64 2241
329 #define START 1
330 #define END 2243
331 #define CENTRE 2244
332 #define JUSTIFIED 2245
333 #define VERT 2246
334 #define HORIZ 2247
335 #define UL 2248
336 #define UR 2249
337 #define LL 2250
338 #define LR 2251
339 #define ACTIONSLOTS 2252
340 #define PUSHSTYLE 2253
341 #define RADIOSTYLE 2254
342 #define CHECKSTYLE 2255
343 #define TRANSITION 2256
344 #define CTAG 2260
345 #define SETHIGHSTAT 2261
346 #define CALLASLOT 2262
347 #define NEWREF 2271
348 #define SETLCOLOUR 2274
349 #define SETLWIDTH 2280
350 #define SETFILLCOL 2281
351 #define DRAWPLGN 2282
352 #define DRAWOVL 2283
353 #define DRAWPLYL 2284
354 #define ABSTIME 2286
355 #define SETINTSTAT 2287
356 #define GETTDATA 2288
357 #define SETOVERW 2289
358 #define GETSLIDERVAL 2290
359 #define SETSLIDER 2291
360 #define SETVAR 2293
361 #define SCROLLITEM 2294
362 #define GETLSIZE 2297
363 #define SETPOSN 2299
364 #define EVENTSOURCE 2300
365 #define EVENTTYPE 2301
366 #define ISAVAIL 2302
367 #define CONTAVAIL 2303
368 #define ISDEL 2304
369 #define ISRUN 2305
370 #define ISSTOP 2306
371 #define UI 2307
372 #define ANCHORF 2308
373 #define TIMERF 2309
374 #define ASYNCHS 2310
375 #define INTCOMP 2311
376 #define TOKENFROM 2312
377 #define TOKENTO 2313
378 #define STREAME 2314
379 #define STREAMP 2315
380 #define STREAMS 2316
381 #define COUNTERT 2317
382 #define HIGHON 2318
383 #define HIGHOFF 2319
384 #define CURSORIN 2320
385 #define CURSOROUT 2321
386 #define ISSEL 2322
387 #define ISDESEL 2323
388 #define TESTEV 2324
389 #define FIRSTPRES 2325
390 #define LASTPRES 2326
391 #define HEADITEM 2327
392 #define TAILITEM 2328
393 #define ITEMSEL 2329
394 #define ITEMDESEL 2330
395 #define ENTRYFULL 2331
396 #define ENGINE 2332
397 #define EVENTDATA 2333
398 #define ALPHA 2334
399 #define NUMERIC 2335
400 #define ANYCHAR 2336
401 #define LISTED 2337
402 #define LEFT 2338
403 #define RIGHT 2339
404 #define UP 2340
405 #define DOWN 2341
406 #define NORMAL 2342
407 #define THERMO 2343
408 #define PROPORT 2344
409 #define MH5FALSE 2345
410 #define MEMORY 2346
411 #define FREEZE 2347
412 #define DISAPPEAR 2348
413 #define STREAM2 2349
414 #define APPLET 2237
415 
416 /* create some non-tags */
417 typedef enum
418 {
419  MHEG5_TYPE = 3000,
420  /* SEQUENCE types - those with leading SEQUENCE tag */
421  SEQUENCE_TYPE = MHEG5_TYPE,
422  EXTERNAL_REFERENCE_TYPE,
423  NEW_REFERENCED_CONTENT,
424  NEW_TIMER,
425  NEXT_SCENE_TYPE,
426  POINT_TYPE,
427  RATIONAL_TYPE,
428  REFERENCED_CONTENT_TYPE,
429  TOKEN_GROUP_ITEM_TYPE,
430  XY_POSITION_TYPE,
431  SEQ_SIZE_OF_ACTION_SLOT,
432  SEQ_SIZE_OF_ELEMENTARY_ACTION,
433  ACTION_CLASS_TYPE = SEQ_SIZE_OF_ELEMENTARY_ACTION,
434  SEQ_SIZE_OF_INTEGER,
435  SEQ_SIZE_OF_PARAMETER,
436  SEQ_SIZE_OF_POINT,
437  SEQ_SIZE_OF_OBJECT_REFERENCE,
438  INVALID_SEQ_TYPE,
439 
440  /* non-SEQUENCE types .... */
441 
442  /* ENUMERATED types */
443  ENUMERATED_TYPE = INVALID_SEQ_TYPE,
444  EVENT_TYPE,
445  INVALID_ENU_TYPE,
446 
447  /* CHOICE types */
448  CHOICE_TYPE = INVALID_ENU_TYPE,
449  EVENT_DATA_TYPE,
450  EVENT_SOURCE_TYPE, /* EVENT_SOURCE aka OBJ REF - keep these together */
451  OBJECT_REFERENCE_TYPE,
452  ACTION_SLOT_TYPE,
453  COMPARISON_VALUE_TYPE,
454  CONN_TAG_OR_NULL_TYPE,
455  EMULATED_EVENT_DATA,
456  GENERIC_BOOLEAN,
457  GENERIC_CONTENT_REFERENCE,
458  GENERIC_INTEGER,
459  GENERIC_OBJECT_REFERENCE,
460  GENERIC_OCTET_STRING,
461  NEW_COLOUR,
462  NEW_CONTENT,
463  NEW_FONT,
464  NEW_VARIABLE_VALUE,
465  PARAMETER_TYPE = NEW_VARIABLE_VALUE,
466  INVALID_CHO_TYPE,
467 
468  STRING_TYPE = INVALID_CHO_TYPE,
469  CONTENT_REFERENCE_TYPE,
470  INVALID_STR_TYPE
471 } MHEG5_TYPES;
472 
473 /*---Global variable declarations for public use-----------------------------*/
474 
475 /*---Global Function prototypes for public use-------------------------------*/
476 
477 
478 #endif /*_VPA1_TGS_H*/
Typedefs, macros used by all of parser. These may be duplicated elsewhere.