Coverage Report

Created: 2025-10-10 06:44

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/gpac/src/laser/lsr_tables.c
Line
Count
Source
1
/*
2
 *      GPAC - Multimedia Framework C SDK
3
 *
4
 *      Authors: Cyril Concolato - Jean Le Feuvre
5
 *    Copyright (c)2004-200X Telecom ParisTech - All rights reserved
6
 *
7
 *  This file is part of GPAC / SVG Scene Graph sub-project
8
 *
9
 *  GPAC is free software; you can redistribute it and/or modify
10
 *  it under the terms of the GNU Lesser General Public License as published by
11
 *  the Free Software Foundation; either version 2, or (at your option)
12
 *  any later version.
13
 *
14
 *  GPAC is distributed in the hope that it will be useful,
15
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 *  GNU Lesser General Public License for more details.
18
 *
19
 *  You should have received a copy of the GNU Lesser General Public
20
 *  License along with this library; see the file COPYING.  If not, write to
21
 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
22
 *
23
 */
24
25
26
/*
27
  DO NOT MOFIFY - File generated on GMT Tue May 15 11:18:46 2007
28
29
  BY SVGGen for GPAC Version 0.5.0
30
*/
31
32
33
#include <gpac/internal/laser_dev.h>
34
35
#ifndef GPAC_DISABLE_LASER
36
37
0
s32 gf_lsr_anim_type_from_attribute(u32 tag) {
38
0
  switch(tag) {
39
0
  case TAG_SVG_ATT_target:
40
0
    return 0;
41
0
  case TAG_SVG_ATT_accumulate:
42
0
    return 1;
43
0
  case TAG_SVG_ATT_additive:
44
0
    return 2;
45
0
  case TAG_SVG_ATT_audio_level:
46
0
    return 3;
47
0
  case TAG_SVG_ATT_bandwidth:
48
0
    return 4;
49
0
  case TAG_SVG_ATT_begin:
50
0
    return 5;
51
0
  case TAG_SVG_ATT_calcMode:
52
0
    return 6;
53
0
  case TAG_LSR_ATT_children:
54
0
    return 7;
55
0
  case TAG_SVG_ATT_choice:
56
0
    return 8;
57
0
  case TAG_SVG_ATT_clipBegin:
58
0
    return 9;
59
0
  case TAG_SVG_ATT_clipEnd:
60
0
    return 10;
61
0
  case TAG_SVG_ATT_color:
62
0
    return 11;
63
0
  case TAG_SVG_ATT_color_rendering:
64
0
    return 12;
65
0
  case TAG_SVG_ATT_cx:
66
0
    return 13;
67
0
  case TAG_SVG_ATT_cy:
68
0
    return 14;
69
0
  case TAG_SVG_ATT_d:
70
0
    return 15;
71
0
  case TAG_SVG_ATT_delta:
72
0
    return 16;
73
0
  case TAG_SVG_ATT_display:
74
0
    return 17;
75
0
  case TAG_SVG_ATT_display_align:
76
0
    return 18;
77
0
  case TAG_SVG_ATT_dur:
78
0
    return 19;
79
0
  case TAG_SVG_ATT_editable:
80
0
    return 20;
81
0
  case TAG_LSR_ATT_enabled:
82
0
    return 21;
83
0
  case TAG_SVG_ATT_end:
84
0
    return 22;
85
0
  case TAG_XMLEV_ATT_event:
86
0
    return 23;
87
0
  case TAG_SVG_ATT_externalResourcesRequired:
88
0
    return 24;
89
0
  case TAG_SVG_ATT_fill:
90
0
    return 25;
91
0
  case TAG_SVG_ATT_fill_opacity:
92
0
    return 26;
93
0
  case TAG_SVG_ATT_fill_rule:
94
0
    return 27;
95
0
  case TAG_SVG_ATT_focusable:
96
0
    return 28;
97
0
  case TAG_SVG_ATT_font_family:
98
0
    return 29;
99
0
  case TAG_SVG_ATT_font_size:
100
0
    return 30;
101
0
  case TAG_SVG_ATT_font_style:
102
0
    return 31;
103
0
  case TAG_SVG_ATT_font_variant:
104
0
    return 32;
105
0
  case TAG_SVG_ATT_font_weight:
106
0
    return 33;
107
0
  case TAG_SVG_ATT_fullscreen:
108
0
    return 34;
109
0
  case TAG_SVG_ATT_gradientUnits:
110
0
    return 35;
111
0
  case TAG_XMLEV_ATT_handler:
112
0
    return 36;
113
0
  case TAG_SVG_ATT_height:
114
0
    return 37;
115
0
  case TAG_SVG_ATT_image_rendering:
116
0
    return 38;
117
0
  case TAG_SVG_ATT_keyPoints:
118
0
    return 39;
119
0
  case TAG_SVG_ATT_keySplines:
120
0
    return 40;
121
0
  case TAG_SVG_ATT_keyTimes:
122
0
    return 41;
123
0
  case TAG_SVG_ATT_line_increment:
124
0
    return 42;
125
0
  case TAG_XMLEV_ATT_target:
126
0
    return 43;
127
0
  case TAG_SVG_ATT_mediaCharacterEncoding:
128
0
    return 44;
129
0
  case TAG_SVG_ATT_mediaContentEncodings:
130
0
    return 45;
131
0
  case TAG_SVG_ATT_mediaSize:
132
0
    return 46;
133
0
  case TAG_SVG_ATT_mediaTime:
134
0
    return 47;
135
0
  case TAG_SVG_ATT_nav_down:
136
0
    return 48;
137
0
  case TAG_SVG_ATT_nav_down_left:
138
0
    return 49;
139
0
  case TAG_SVG_ATT_nav_down_right:
140
0
    return 50;
141
0
  case TAG_SVG_ATT_nav_left:
142
0
    return 51;
143
0
  case TAG_SVG_ATT_nav_next:
144
0
    return 52;
145
0
  case TAG_SVG_ATT_nav_prev:
146
0
    return 53;
147
0
  case TAG_SVG_ATT_nav_right:
148
0
    return 54;
149
0
  case TAG_SVG_ATT_nav_up:
150
0
    return 55;
151
0
  case TAG_SVG_ATT_nav_up_left:
152
0
    return 56;
153
0
  case TAG_SVG_ATT_nav_up_right:
154
0
    return 57;
155
0
  case TAG_XMLEV_ATT_observer:
156
0
    return 58;
157
0
  case TAG_SVG_ATT_offset:
158
0
    return 59;
159
0
  case TAG_SVG_ATT_opacity:
160
0
    return 60;
161
0
  case TAG_SVG_ATT_overflow:
162
0
    return 61;
163
0
  case TAG_SVG_ATT_overlay:
164
0
    return 62;
165
0
  case TAG_SVG_ATT_path:
166
0
    return 63;
167
0
  case TAG_SVG_ATT_pathLength:
168
0
    return 64;
169
0
  case TAG_SVG_ATT_pointer_events:
170
0
    return 65;
171
0
  case TAG_SVG_ATT_points:
172
0
    return 66;
173
0
  case TAG_SVG_ATT_preserveAspectRatio:
174
0
    return 67;
175
0
  case TAG_SVG_ATT_r:
176
0
    return 68;
177
0
  case TAG_SVG_ATT_repeatCount:
178
0
    return 69;
179
0
  case TAG_SVG_ATT_repeatDur:
180
0
    return 70;
181
0
  case TAG_SVG_ATT_requiredExtensions:
182
0
    return 71;
183
0
  case TAG_SVG_ATT_requiredFeatures:
184
0
    return 72;
185
0
  case TAG_SVG_ATT_requiredFormats:
186
0
    return 73;
187
0
  case TAG_SVG_ATT_restart:
188
0
    return 74;
189
0
  case TAG_SVG_ATT_rotate:
190
0
    return 75;
191
0
  case TAG_LSR_ATT_rotation:
192
0
    return 76;
193
0
  case TAG_SVG_ATT_rx:
194
0
    return 77;
195
0
  case TAG_SVG_ATT_ry:
196
0
    return 78;
197
0
  case TAG_LSR_ATT_scale:
198
0
    return 79;
199
0
  case TAG_SVG_ATT_shape_rendering:
200
0
    return 80;
201
0
  case TAG_SVG_ATT_size:
202
0
    return 81;
203
0
  case TAG_SVG_ATT_solid_color:
204
0
    return 82;
205
0
  case TAG_SVG_ATT_solid_opacity:
206
0
    return 83;
207
0
  case TAG_SVG_ATT_stop_color:
208
0
    return 84;
209
0
  case TAG_SVG_ATT_stop_opacity:
210
0
    return 85;
211
0
  case TAG_SVG_ATT_stroke:
212
0
    return 86;
213
0
  case TAG_SVG_ATT_stroke_dasharray:
214
0
    return 87;
215
0
  case TAG_SVG_ATT_stroke_dashoffset:
216
0
    return 88;
217
0
  case TAG_SVG_ATT_stroke_linecap:
218
0
    return 89;
219
0
  case TAG_SVG_ATT_stroke_linejoin:
220
0
    return 90;
221
0
  case TAG_SVG_ATT_stroke_miterlimit:
222
0
    return 91;
223
0
  case TAG_SVG_ATT_stroke_opacity:
224
0
    return 92;
225
0
  case TAG_SVG_ATT_stroke_width:
226
0
    return 93;
227
0
  case TAG_LSR_ATT_svg_height:
228
0
    return 94;
229
0
  case TAG_LSR_ATT_svg_width:
230
0
    return 95;
231
0
  case TAG_SVG_ATT_syncBehavior:
232
0
    return 96;
233
0
  case TAG_SVG_ATT_syncBehaviorDefault:
234
0
    return 97;
235
0
  case TAG_SVG_ATT_syncReference:
236
0
    return 98;
237
0
  case TAG_SVG_ATT_syncTolerance:
238
0
    return 99;
239
0
  case TAG_SVG_ATT_syncToleranceDefault:
240
0
    return 100;
241
0
  case TAG_SVG_ATT_systemLanguage:
242
0
    return 101;
243
0
  case TAG_SVG_ATT_text_align:
244
0
    return 102;
245
0
  case TAG_SVG_ATT_text_anchor:
246
0
    return 103;
247
0
  case TAG_SVG_ATT_text_decoration:
248
0
    return 104;
249
0
  case TAG_LSR_ATT_text_display:
250
0
    return 105;
251
0
  case TAG_SVG_ATT_text_rendering:
252
0
    return 106;
253
0
  case TAG_LSR_ATT_textContent:
254
0
    return 107;
255
0
  case TAG_SVG_ATT_transform:
256
0
    return 108;
257
0
  case TAG_SVG_ATT_transformBehavior:
258
0
    return 109;
259
0
  case TAG_LSR_ATT_translation:
260
0
    return 110;
261
0
  case TAG_SVG_ATT_vector_effect:
262
0
    return 111;
263
0
  case TAG_SVG_ATT_viewBox:
264
0
    return 112;
265
0
  case TAG_SVG_ATT_viewport_fill:
266
0
    return 113;
267
0
  case TAG_SVG_ATT_viewport_fill_opacity:
268
0
    return 114;
269
0
  case TAG_SVG_ATT_visibility:
270
0
    return 115;
271
0
  case TAG_SVG_ATT_width:
272
0
    return 116;
273
0
  case TAG_SVG_ATT_x:
274
0
    return 117;
275
0
  case TAG_SVG_ATT_x1:
276
0
    return 118;
277
0
  case TAG_SVG_ATT_x2:
278
0
    return 119;
279
0
  case TAG_XLINK_ATT_actuate:
280
0
    return 120;
281
0
  case TAG_XLINK_ATT_arcrole:
282
0
    return 121;
283
0
  case TAG_XLINK_ATT_href:
284
0
    return 122;
285
0
  case TAG_XLINK_ATT_role:
286
0
    return 123;
287
0
  case TAG_XLINK_ATT_show:
288
0
    return 124;
289
0
  case TAG_XLINK_ATT_title:
290
0
    return 125;
291
0
  case TAG_XLINK_ATT_type:
292
0
    return 126;
293
0
  case TAG_XML_ATT_base:
294
0
    return 127;
295
0
  case TAG_XML_ATT_lang:
296
0
    return 128;
297
0
  case TAG_SVG_ATT_y:
298
0
    return 129;
299
0
  case TAG_SVG_ATT_y1:
300
0
    return 130;
301
0
  case TAG_SVG_ATT_y2:
302
0
    return 131;
303
0
  case TAG_SVG_ATT_zoomAndPan:
304
0
    return 132;
305
0
  default:
306
0
    return -1;
307
0
  }
308
0
}
309
310
311
312
0
s32 gf_lsr_rare_type_from_attribute(u32 tag) {
313
0
  switch(tag) {
314
0
  case TAG_SVG_ATT__class:
315
0
    return 0;
316
0
  case TAG_SVG_ATT_audio_level:
317
0
    return 1;
318
0
  case TAG_SVG_ATT_color:
319
0
    return 2;
320
0
  case TAG_SVG_ATT_color_rendering:
321
0
    return 3;
322
0
  case TAG_SVG_ATT_display:
323
0
    return 4;
324
0
  case TAG_SVG_ATT_display_align:
325
0
    return 5;
326
0
  case TAG_SVG_ATT_fill_opacity:
327
0
    return 6;
328
0
  case TAG_SVG_ATT_fill_rule:
329
0
    return 7;
330
0
  case TAG_SVG_ATT_image_rendering:
331
0
    return 8;
332
0
  case TAG_SVG_ATT_line_increment:
333
0
    return 9;
334
0
  case TAG_SVG_ATT_pointer_events:
335
0
    return 10;
336
0
  case TAG_SVG_ATT_shape_rendering:
337
0
    return 11;
338
0
  case TAG_SVG_ATT_solid_color:
339
0
    return 12;
340
0
  case TAG_SVG_ATT_solid_opacity:
341
0
    return 13;
342
0
  case TAG_SVG_ATT_stop_color:
343
0
    return 14;
344
0
  case TAG_SVG_ATT_stop_opacity:
345
0
    return 15;
346
0
  case TAG_SVG_ATT_stroke_dasharray:
347
0
    return 16;
348
0
  case TAG_SVG_ATT_stroke_dashoffset:
349
0
    return 17;
350
0
  case TAG_SVG_ATT_stroke_linecap:
351
0
    return 18;
352
0
  case TAG_SVG_ATT_stroke_linejoin:
353
0
    return 19;
354
0
  case TAG_SVG_ATT_stroke_miterlimit:
355
0
    return 20;
356
0
  case TAG_SVG_ATT_stroke_opacity:
357
0
    return 21;
358
0
  case TAG_SVG_ATT_stroke_width:
359
0
    return 22;
360
0
  case TAG_SVG_ATT_text_anchor:
361
0
    return 23;
362
0
  case TAG_SVG_ATT_text_rendering:
363
0
    return 24;
364
0
  case TAG_SVG_ATT_viewport_fill:
365
0
    return 25;
366
0
  case TAG_SVG_ATT_viewport_fill_opacity:
367
0
    return 26;
368
0
  case TAG_SVG_ATT_vector_effect:
369
0
    return 27;
370
0
  case TAG_SVG_ATT_visibility:
371
0
    return 28;
372
0
  case TAG_SVG_ATT_requiredExtensions:
373
0
    return 29;
374
0
  case TAG_SVG_ATT_requiredFeatures:
375
0
    return 30;
376
0
  case TAG_SVG_ATT_requiredFormats:
377
0
    return 31;
378
0
  case TAG_SVG_ATT_systemLanguage:
379
0
    return 32;
380
0
  case TAG_XML_ATT_base:
381
0
    return 33;
382
0
  case TAG_XML_ATT_lang:
383
0
    return 34;
384
0
  case TAG_XML_ATT_space:
385
0
    return 35;
386
0
  case TAG_SVG_ATT_nav_next:
387
0
    return 36;
388
0
  case TAG_SVG_ATT_nav_up:
389
0
    return 37;
390
0
  case TAG_SVG_ATT_nav_up_left:
391
0
    return 38;
392
0
  case TAG_SVG_ATT_nav_up_right:
393
0
    return 39;
394
0
  case TAG_SVG_ATT_nav_prev:
395
0
    return 40;
396
0
  case TAG_SVG_ATT_nav_down:
397
0
    return 41;
398
0
  case TAG_SVG_ATT_nav_down_left:
399
0
    return 42;
400
0
  case TAG_SVG_ATT_nav_down_right:
401
0
    return 43;
402
0
  case TAG_SVG_ATT_nav_left:
403
0
    return 44;
404
0
  case TAG_SVG_ATT_focusable:
405
0
    return 45;
406
0
  case TAG_SVG_ATT_nav_right:
407
0
    return 46;
408
0
  case TAG_SVG_ATT_transform:
409
0
    return 47;
410
0
  case TAG_SVG_ATT_text_decoration:
411
0
    return 48;
412
0
  case TAG_SVG_ATT_syncMaster:
413
0
    return 49;
414
0
  case TAG_SVG_ATT_focusHighlight:
415
0
    return 49;
416
0
  case TAG_SVG_ATT_initialVisibility:
417
0
    return 49;
418
0
  case TAG_SVG_ATT_fullscreen:
419
0
    return 49;
420
0
  case TAG_SVG_ATT_requiredFonts:
421
0
    return 49;
422
0
  case TAG_SVG_ATT_font_variant:
423
0
    return 50;
424
0
  case TAG_SVG_ATT_font_family:
425
0
    return 51;
426
0
  case TAG_SVG_ATT_font_size:
427
0
    return 52;
428
0
  case TAG_SVG_ATT_font_style:
429
0
    return 53;
430
0
  case TAG_SVG_ATT_font_weight:
431
0
    return 54;
432
0
  case TAG_XLINK_ATT_title:
433
0
    return 55;
434
0
  case TAG_XLINK_ATT_type:
435
0
    return 56;
436
0
  case TAG_XLINK_ATT_role:
437
0
    return 57;
438
0
  case TAG_XLINK_ATT_arcrole:
439
0
    return 58;
440
0
  case TAG_XLINK_ATT_actuate:
441
0
    return 59;
442
0
  case TAG_XLINK_ATT_show:
443
0
    return 60;
444
0
  case TAG_SVG_ATT_end:
445
0
    return 61;
446
0
  case TAG_SVG_ATT_max:
447
0
    return 62;
448
0
  case TAG_SVG_ATT_min:
449
0
    return 63;
450
0
  default:
451
0
    return -1;
452
0
  }
453
0
}
454
455
456
457
0
s32 gf_lsr_anim_type_to_attribute(u32 tag) {
458
0
  switch(tag) {
459
0
  case 0:
460
0
    return TAG_SVG_ATT_target;
461
0
  case 1:
462
0
    return TAG_SVG_ATT_accumulate;
463
0
  case 2:
464
0
    return TAG_SVG_ATT_additive;
465
0
  case 3:
466
0
    return TAG_SVG_ATT_audio_level;
467
0
  case 4:
468
0
    return TAG_SVG_ATT_bandwidth;
469
0
  case 5:
470
0
    return TAG_SVG_ATT_begin;
471
0
  case 6:
472
0
    return TAG_SVG_ATT_calcMode;
473
0
  case 7:
474
0
    return TAG_LSR_ATT_children;
475
0
  case 8:
476
0
    return TAG_SVG_ATT_choice;
477
0
  case 9:
478
0
    return TAG_SVG_ATT_clipBegin;
479
0
  case 10:
480
0
    return TAG_SVG_ATT_clipEnd;
481
0
  case 11:
482
0
    return TAG_SVG_ATT_color;
483
0
  case 12:
484
0
    return TAG_SVG_ATT_color_rendering;
485
0
  case 13:
486
0
    return TAG_SVG_ATT_cx;
487
0
  case 14:
488
0
    return TAG_SVG_ATT_cy;
489
0
  case 15:
490
0
    return TAG_SVG_ATT_d;
491
0
  case 16:
492
0
    return TAG_SVG_ATT_delta;
493
0
  case 17:
494
0
    return TAG_SVG_ATT_display;
495
0
  case 18:
496
0
    return TAG_SVG_ATT_display_align;
497
0
  case 19:
498
0
    return TAG_SVG_ATT_dur;
499
0
  case 20:
500
0
    return TAG_SVG_ATT_editable;
501
0
  case 21:
502
0
    return TAG_LSR_ATT_enabled;
503
0
  case 22:
504
0
    return TAG_SVG_ATT_end;
505
0
  case 23:
506
0
    return TAG_XMLEV_ATT_event;
507
0
  case 24:
508
0
    return TAG_SVG_ATT_externalResourcesRequired;
509
0
  case 25:
510
0
    return TAG_SVG_ATT_fill;
511
0
  case 26:
512
0
    return TAG_SVG_ATT_fill_opacity;
513
0
  case 27:
514
0
    return TAG_SVG_ATT_fill_rule;
515
0
  case 28:
516
0
    return TAG_SVG_ATT_focusable;
517
0
  case 29:
518
0
    return TAG_SVG_ATT_font_family;
519
0
  case 30:
520
0
    return TAG_SVG_ATT_font_size;
521
0
  case 31:
522
0
    return TAG_SVG_ATT_font_style;
523
0
  case 32:
524
0
    return TAG_SVG_ATT_font_variant;
525
0
  case 33:
526
0
    return TAG_SVG_ATT_font_weight;
527
0
  case 34:
528
0
    return TAG_SVG_ATT_fullscreen;
529
0
  case 35:
530
0
    return TAG_SVG_ATT_gradientUnits;
531
0
  case 36:
532
0
    return TAG_XMLEV_ATT_handler;
533
0
  case 37:
534
0
    return TAG_SVG_ATT_height;
535
0
  case 38:
536
0
    return TAG_SVG_ATT_image_rendering;
537
0
  case 39:
538
0
    return TAG_SVG_ATT_keyPoints;
539
0
  case 40:
540
0
    return TAG_SVG_ATT_keySplines;
541
0
  case 41:
542
0
    return TAG_SVG_ATT_keyTimes;
543
0
  case 42:
544
0
    return TAG_SVG_ATT_line_increment;
545
0
  case 43:
546
0
    return TAG_XMLEV_ATT_target;
547
0
  case 44:
548
0
    return TAG_SVG_ATT_mediaCharacterEncoding;
549
0
  case 45:
550
0
    return TAG_SVG_ATT_mediaContentEncodings;
551
0
  case 46:
552
0
    return TAG_SVG_ATT_mediaSize;
553
0
  case 47:
554
0
    return TAG_SVG_ATT_mediaTime;
555
0
  case 48:
556
0
    return TAG_SVG_ATT_nav_down;
557
0
  case 49:
558
0
    return TAG_SVG_ATT_nav_down_left;
559
0
  case 50:
560
0
    return TAG_SVG_ATT_nav_down_right;
561
0
  case 51:
562
0
    return TAG_SVG_ATT_nav_left;
563
0
  case 52:
564
0
    return TAG_SVG_ATT_nav_next;
565
0
  case 53:
566
0
    return TAG_SVG_ATT_nav_prev;
567
0
  case 54:
568
0
    return TAG_SVG_ATT_nav_right;
569
0
  case 55:
570
0
    return TAG_SVG_ATT_nav_up;
571
0
  case 56:
572
0
    return TAG_SVG_ATT_nav_up_left;
573
0
  case 57:
574
0
    return TAG_SVG_ATT_nav_up_right;
575
0
  case 58:
576
0
    return TAG_XMLEV_ATT_observer;
577
0
  case 59:
578
0
    return TAG_SVG_ATT_offset;
579
0
  case 60:
580
0
    return TAG_SVG_ATT_opacity;
581
0
  case 61:
582
0
    return TAG_SVG_ATT_overflow;
583
0
  case 62:
584
0
    return TAG_SVG_ATT_overlay;
585
0
  case 63:
586
0
    return TAG_SVG_ATT_path;
587
0
  case 64:
588
0
    return TAG_SVG_ATT_pathLength;
589
0
  case 65:
590
0
    return TAG_SVG_ATT_pointer_events;
591
0
  case 66:
592
0
    return TAG_SVG_ATT_points;
593
0
  case 67:
594
0
    return TAG_SVG_ATT_preserveAspectRatio;
595
0
  case 68:
596
0
    return TAG_SVG_ATT_r;
597
0
  case 69:
598
0
    return TAG_SVG_ATT_repeatCount;
599
0
  case 70:
600
0
    return TAG_SVG_ATT_repeatDur;
601
0
  case 71:
602
0
    return TAG_SVG_ATT_requiredExtensions;
603
0
  case 72:
604
0
    return TAG_SVG_ATT_requiredFeatures;
605
0
  case 73:
606
0
    return TAG_SVG_ATT_requiredFormats;
607
0
  case 74:
608
0
    return TAG_SVG_ATT_restart;
609
0
  case 75:
610
0
    return TAG_SVG_ATT_rotate;
611
0
  case 76:
612
0
    return TAG_LSR_ATT_rotation;
613
0
  case 77:
614
0
    return TAG_SVG_ATT_rx;
615
0
  case 78:
616
0
    return TAG_SVG_ATT_ry;
617
0
  case 79:
618
0
    return TAG_LSR_ATT_scale;
619
0
  case 80:
620
0
    return TAG_SVG_ATT_shape_rendering;
621
0
  case 81:
622
0
    return TAG_SVG_ATT_size;
623
0
  case 82:
624
0
    return TAG_SVG_ATT_solid_color;
625
0
  case 83:
626
0
    return TAG_SVG_ATT_solid_opacity;
627
0
  case 84:
628
0
    return TAG_SVG_ATT_stop_color;
629
0
  case 85:
630
0
    return TAG_SVG_ATT_stop_opacity;
631
0
  case 86:
632
0
    return TAG_SVG_ATT_stroke;
633
0
  case 87:
634
0
    return TAG_SVG_ATT_stroke_dasharray;
635
0
  case 88:
636
0
    return TAG_SVG_ATT_stroke_dashoffset;
637
0
  case 89:
638
0
    return TAG_SVG_ATT_stroke_linecap;
639
0
  case 90:
640
0
    return TAG_SVG_ATT_stroke_linejoin;
641
0
  case 91:
642
0
    return TAG_SVG_ATT_stroke_miterlimit;
643
0
  case 92:
644
0
    return TAG_SVG_ATT_stroke_opacity;
645
0
  case 93:
646
0
    return TAG_SVG_ATT_stroke_width;
647
0
  case 94:
648
0
    return TAG_LSR_ATT_svg_height;
649
0
  case 95:
650
0
    return TAG_LSR_ATT_svg_width;
651
0
  case 96:
652
0
    return TAG_SVG_ATT_syncBehavior;
653
0
  case 97:
654
0
    return TAG_SVG_ATT_syncBehaviorDefault;
655
0
  case 98:
656
0
    return TAG_SVG_ATT_syncReference;
657
0
  case 99:
658
0
    return TAG_SVG_ATT_syncTolerance;
659
0
  case 100:
660
0
    return TAG_SVG_ATT_syncToleranceDefault;
661
0
  case 101:
662
0
    return TAG_SVG_ATT_systemLanguage;
663
0
  case 102:
664
0
    return TAG_SVG_ATT_text_align;
665
0
  case 103:
666
0
    return TAG_SVG_ATT_text_anchor;
667
0
  case 104:
668
0
    return TAG_SVG_ATT_text_decoration;
669
0
  case 105:
670
0
    return TAG_LSR_ATT_text_display;
671
0
  case 106:
672
0
    return TAG_SVG_ATT_text_rendering;
673
0
  case 107:
674
0
    return TAG_LSR_ATT_textContent;
675
0
  case 108:
676
0
    return TAG_SVG_ATT_transform;
677
0
  case 109:
678
0
    return TAG_SVG_ATT_transformBehavior;
679
0
  case 110:
680
0
    return TAG_LSR_ATT_translation;
681
0
  case 111:
682
0
    return TAG_SVG_ATT_vector_effect;
683
0
  case 112:
684
0
    return TAG_SVG_ATT_viewBox;
685
0
  case 113:
686
0
    return TAG_SVG_ATT_viewport_fill;
687
0
  case 114:
688
0
    return TAG_SVG_ATT_viewport_fill_opacity;
689
0
  case 115:
690
0
    return TAG_SVG_ATT_visibility;
691
0
  case 116:
692
0
    return TAG_SVG_ATT_width;
693
0
  case 117:
694
0
    return TAG_SVG_ATT_x;
695
0
  case 118:
696
0
    return TAG_SVG_ATT_x1;
697
0
  case 119:
698
0
    return TAG_SVG_ATT_x2;
699
0
  case 120:
700
0
    return TAG_XLINK_ATT_actuate;
701
0
  case 121:
702
0
    return TAG_XLINK_ATT_arcrole;
703
0
  case 122:
704
0
    return TAG_XLINK_ATT_href;
705
0
  case 123:
706
0
    return TAG_XLINK_ATT_role;
707
0
  case 124:
708
0
    return TAG_XLINK_ATT_show;
709
0
  case 125:
710
0
    return TAG_XLINK_ATT_title;
711
0
  case 126:
712
0
    return TAG_XLINK_ATT_type;
713
0
  case 127:
714
0
    return TAG_XML_ATT_base;
715
0
  case 128:
716
0
    return TAG_XML_ATT_lang;
717
0
  case 129:
718
0
    return TAG_SVG_ATT_y;
719
0
  case 130:
720
0
    return TAG_SVG_ATT_y1;
721
0
  case 131:
722
0
    return TAG_SVG_ATT_y2;
723
0
  case 132:
724
0
    return TAG_SVG_ATT_zoomAndPan;
725
0
  default:
726
0
    return -1;
727
0
  }
728
0
}
729
730
731
732
0
s32 gf_lsr_rare_type_to_attribute(u32 tag) {
733
0
  switch(tag) {
734
0
  case 0:
735
0
    return TAG_SVG_ATT__class;
736
0
  case 1:
737
0
    return TAG_SVG_ATT_audio_level;
738
0
  case 2:
739
0
    return TAG_SVG_ATT_color;
740
0
  case 3:
741
0
    return TAG_SVG_ATT_color_rendering;
742
0
  case 4:
743
0
    return TAG_SVG_ATT_display;
744
0
  case 5:
745
0
    return TAG_SVG_ATT_display_align;
746
0
  case 6:
747
0
    return TAG_SVG_ATT_fill_opacity;
748
0
  case 7:
749
0
    return TAG_SVG_ATT_fill_rule;
750
0
  case 8:
751
0
    return TAG_SVG_ATT_image_rendering;
752
0
  case 9:
753
0
    return TAG_SVG_ATT_line_increment;
754
0
  case 10:
755
0
    return TAG_SVG_ATT_pointer_events;
756
0
  case 11:
757
0
    return TAG_SVG_ATT_shape_rendering;
758
0
  case 12:
759
0
    return TAG_SVG_ATT_solid_color;
760
0
  case 13:
761
0
    return TAG_SVG_ATT_solid_opacity;
762
0
  case 14:
763
0
    return TAG_SVG_ATT_stop_color;
764
0
  case 15:
765
0
    return TAG_SVG_ATT_stop_opacity;
766
0
  case 16:
767
0
    return TAG_SVG_ATT_stroke_dasharray;
768
0
  case 17:
769
0
    return TAG_SVG_ATT_stroke_dashoffset;
770
0
  case 18:
771
0
    return TAG_SVG_ATT_stroke_linecap;
772
0
  case 19:
773
0
    return TAG_SVG_ATT_stroke_linejoin;
774
0
  case 20:
775
0
    return TAG_SVG_ATT_stroke_miterlimit;
776
0
  case 21:
777
0
    return TAG_SVG_ATT_stroke_opacity;
778
0
  case 22:
779
0
    return TAG_SVG_ATT_stroke_width;
780
0
  case 23:
781
0
    return TAG_SVG_ATT_text_anchor;
782
0
  case 24:
783
0
    return TAG_SVG_ATT_text_rendering;
784
0
  case 25:
785
0
    return TAG_SVG_ATT_viewport_fill;
786
0
  case 26:
787
0
    return TAG_SVG_ATT_viewport_fill_opacity;
788
0
  case 27:
789
0
    return TAG_SVG_ATT_vector_effect;
790
0
  case 28:
791
0
    return TAG_SVG_ATT_visibility;
792
0
  case 29:
793
0
    return TAG_SVG_ATT_requiredExtensions;
794
0
  case 30:
795
0
    return TAG_SVG_ATT_requiredFeatures;
796
0
  case 31:
797
0
    return TAG_SVG_ATT_requiredFormats;
798
0
  case 32:
799
0
    return TAG_SVG_ATT_systemLanguage;
800
0
  case 33:
801
0
    return TAG_XML_ATT_base;
802
0
  case 34:
803
0
    return TAG_XML_ATT_lang;
804
0
  case 35:
805
0
    return TAG_XML_ATT_space;
806
0
  case 36:
807
0
    return TAG_SVG_ATT_nav_next;
808
0
  case 37:
809
0
    return TAG_SVG_ATT_nav_up;
810
0
  case 38:
811
0
    return TAG_SVG_ATT_nav_up_left;
812
0
  case 39:
813
0
    return TAG_SVG_ATT_nav_up_right;
814
0
  case 40:
815
0
    return TAG_SVG_ATT_nav_prev;
816
0
  case 41:
817
0
    return TAG_SVG_ATT_nav_down;
818
0
  case 42:
819
0
    return TAG_SVG_ATT_nav_down_left;
820
0
  case 43:
821
0
    return TAG_SVG_ATT_nav_down_right;
822
0
  case 44:
823
0
    return TAG_SVG_ATT_nav_left;
824
0
  case 45:
825
0
    return TAG_SVG_ATT_focusable;
826
0
  case 46:
827
0
    return TAG_SVG_ATT_nav_right;
828
0
  case 47:
829
0
    return TAG_SVG_ATT_transform;
830
0
  case 48:
831
0
    return TAG_SVG_ATT_text_decoration;
832
0
  case 50:
833
0
    return TAG_SVG_ATT_font_variant;
834
0
  case 51:
835
0
    return TAG_SVG_ATT_font_family;
836
0
  case 52:
837
0
    return TAG_SVG_ATT_font_size;
838
0
  case 53:
839
0
    return TAG_SVG_ATT_font_style;
840
0
  case 54:
841
0
    return TAG_SVG_ATT_font_weight;
842
0
  case 55:
843
0
    return TAG_XLINK_ATT_title;
844
0
  case 56:
845
0
    return TAG_XLINK_ATT_type;
846
0
  case 57:
847
0
    return TAG_XLINK_ATT_role;
848
0
  case 58:
849
0
    return TAG_XLINK_ATT_arcrole;
850
0
  case 59:
851
0
    return TAG_XLINK_ATT_actuate;
852
0
  case 60:
853
0
    return TAG_XLINK_ATT_show;
854
0
  case 61:
855
0
    return TAG_SVG_ATT_end;
856
0
  case 62:
857
0
    return TAG_SVG_ATT_max;
858
0
  case 63:
859
0
    return TAG_SVG_ATT_min;
860
0
  default:
861
0
    return -1;
862
0
  }
863
0
}
864
865
866
867
u32 gf_lsr_same_rare(SVGAllAttributes *elt_atts, SVGAllAttributes *base_atts)
868
0
{
869
0
  GF_FieldInfo f_elt, f_base;
870
  
871
0
  memset(&f_elt, 0, sizeof(GF_FieldInfo));
872
0
  memset(&f_base, 0, sizeof(GF_FieldInfo));
873
  
874
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
875
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT__class;
876
0
  f_elt.far_ptr = elt_atts->_class;
877
0
  f_base.far_ptr = base_atts->_class;
878
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
879
880
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
881
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_audio_level;
882
0
  f_elt.far_ptr = elt_atts->audio_level;
883
0
  f_base.far_ptr = base_atts->audio_level;
884
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
885
886
0
  f_elt.fieldType = f_base.fieldType = SVG_Paint_datatype;
887
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_color;
888
0
  f_elt.far_ptr = elt_atts->color;
889
0
  f_base.far_ptr = base_atts->color;
890
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
891
892
0
  f_elt.fieldType = f_base.fieldType = SVG_RenderingHint_datatype;
893
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_color_rendering;
894
0
  f_elt.far_ptr = elt_atts->color_rendering;
895
0
  f_base.far_ptr = base_atts->color_rendering;
896
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
897
898
0
  f_elt.fieldType = f_base.fieldType = SVG_Display_datatype;
899
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_display;
900
0
  f_elt.far_ptr = elt_atts->display;
901
0
  f_base.far_ptr = base_atts->display;
902
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
903
904
0
  f_elt.fieldType = f_base.fieldType = SVG_DisplayAlign_datatype;
905
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_display_align;
906
0
  f_elt.far_ptr = elt_atts->display_align;
907
0
  f_base.far_ptr = base_atts->display_align;
908
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
909
910
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
911
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_fill_opacity;
912
0
  f_elt.far_ptr = elt_atts->fill_opacity;
913
0
  f_base.far_ptr = base_atts->fill_opacity;
914
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
915
916
0
  f_elt.fieldType = f_base.fieldType = SVG_FillRule_datatype;
917
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_fill_rule;
918
0
  f_elt.far_ptr = elt_atts->fill_rule;
919
0
  f_base.far_ptr = base_atts->fill_rule;
920
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
921
922
0
  f_elt.fieldType = f_base.fieldType = SVG_RenderingHint_datatype;
923
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_image_rendering;
924
0
  f_elt.far_ptr = elt_atts->image_rendering;
925
0
  f_base.far_ptr = base_atts->image_rendering;
926
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
927
928
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
929
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_line_increment;
930
0
  f_elt.far_ptr = elt_atts->line_increment;
931
0
  f_base.far_ptr = base_atts->line_increment;
932
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
933
934
0
  f_elt.fieldType = f_base.fieldType = SVG_PointerEvents_datatype;
935
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_pointer_events;
936
0
  f_elt.far_ptr = elt_atts->pointer_events;
937
0
  f_base.far_ptr = base_atts->pointer_events;
938
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
939
940
0
  f_elt.fieldType = f_base.fieldType = SVG_RenderingHint_datatype;
941
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_shape_rendering;
942
0
  f_elt.far_ptr = elt_atts->shape_rendering;
943
0
  f_base.far_ptr = base_atts->shape_rendering;
944
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
945
946
0
  f_elt.fieldType = f_base.fieldType = SVG_Paint_datatype;
947
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_solid_color;
948
0
  f_elt.far_ptr = elt_atts->solid_color;
949
0
  f_base.far_ptr = base_atts->solid_color;
950
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
951
952
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
953
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_solid_opacity;
954
0
  f_elt.far_ptr = elt_atts->solid_opacity;
955
0
  f_base.far_ptr = base_atts->solid_opacity;
956
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
957
958
0
  f_elt.fieldType = f_base.fieldType = SVG_Paint_datatype;
959
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stop_color;
960
0
  f_elt.far_ptr = elt_atts->stop_color;
961
0
  f_base.far_ptr = base_atts->stop_color;
962
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
963
964
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
965
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stop_opacity;
966
0
  f_elt.far_ptr = elt_atts->stop_opacity;
967
0
  f_base.far_ptr = base_atts->stop_opacity;
968
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
969
970
0
  f_elt.fieldType = f_base.fieldType = SVG_StrokeDashArray_datatype;
971
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_dasharray;
972
0
  f_elt.far_ptr = elt_atts->stroke_dasharray;
973
0
  f_base.far_ptr = base_atts->stroke_dasharray;
974
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
975
976
0
  f_elt.fieldType = f_base.fieldType = SVG_Length_datatype;
977
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_dashoffset;
978
0
  f_elt.far_ptr = elt_atts->stroke_dashoffset;
979
0
  f_base.far_ptr = base_atts->stroke_dashoffset;
980
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
981
982
0
  f_elt.fieldType = f_base.fieldType = SVG_StrokeLineCap_datatype;
983
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_linecap;
984
0
  f_elt.far_ptr = elt_atts->stroke_linecap;
985
0
  f_base.far_ptr = base_atts->stroke_linecap;
986
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
987
988
0
  f_elt.fieldType = f_base.fieldType = SVG_StrokeLineJoin_datatype;
989
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_linejoin;
990
0
  f_elt.far_ptr = elt_atts->stroke_linejoin;
991
0
  f_base.far_ptr = base_atts->stroke_linejoin;
992
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
993
994
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
995
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_miterlimit;
996
0
  f_elt.far_ptr = elt_atts->stroke_miterlimit;
997
0
  f_base.far_ptr = base_atts->stroke_miterlimit;
998
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
999
1000
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
1001
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_opacity;
1002
0
  f_elt.far_ptr = elt_atts->stroke_opacity;
1003
0
  f_base.far_ptr = base_atts->stroke_opacity;
1004
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1005
1006
0
  f_elt.fieldType = f_base.fieldType = SVG_Length_datatype;
1007
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_stroke_width;
1008
0
  f_elt.far_ptr = elt_atts->stroke_width;
1009
0
  f_base.far_ptr = base_atts->stroke_width;
1010
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1011
1012
0
  f_elt.fieldType = f_base.fieldType = SVG_TextAnchor_datatype;
1013
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_text_anchor;
1014
0
  f_elt.far_ptr = elt_atts->text_anchor;
1015
0
  f_base.far_ptr = base_atts->text_anchor;
1016
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1017
1018
0
  f_elt.fieldType = f_base.fieldType = SVG_RenderingHint_datatype;
1019
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_text_rendering;
1020
0
  f_elt.far_ptr = elt_atts->text_rendering;
1021
0
  f_base.far_ptr = base_atts->text_rendering;
1022
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1023
1024
0
  f_elt.fieldType = f_base.fieldType = SVG_Paint_datatype;
1025
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_viewport_fill;
1026
0
  f_elt.far_ptr = elt_atts->viewport_fill;
1027
0
  f_base.far_ptr = base_atts->viewport_fill;
1028
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1029
1030
0
  f_elt.fieldType = f_base.fieldType = SVG_Number_datatype;
1031
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_viewport_fill_opacity;
1032
0
  f_elt.far_ptr = elt_atts->viewport_fill_opacity;
1033
0
  f_base.far_ptr = base_atts->viewport_fill_opacity;
1034
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1035
1036
0
  f_elt.fieldType = f_base.fieldType = SVG_VectorEffect_datatype;
1037
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_vector_effect;
1038
0
  f_elt.far_ptr = elt_atts->vector_effect;
1039
0
  f_base.far_ptr = base_atts->vector_effect;
1040
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1041
1042
0
  f_elt.fieldType = f_base.fieldType = SVG_Visibility_datatype;
1043
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_visibility;
1044
0
  f_elt.far_ptr = elt_atts->visibility;
1045
0
  f_base.far_ptr = base_atts->visibility;
1046
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1047
1048
0
  f_elt.fieldType = f_base.fieldType = XMLRI_List_datatype;
1049
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_requiredExtensions;
1050
0
  f_elt.far_ptr = elt_atts->requiredExtensions;
1051
0
  f_base.far_ptr = base_atts->requiredExtensions;
1052
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1053
1054
0
  f_elt.fieldType = f_base.fieldType = XMLRI_List_datatype;
1055
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_requiredFeatures;
1056
0
  f_elt.far_ptr = elt_atts->requiredFeatures;
1057
0
  f_base.far_ptr = base_atts->requiredFeatures;
1058
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1059
1060
0
  f_elt.fieldType = f_base.fieldType = DOM_StringList_datatype;
1061
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_requiredFormats;
1062
0
  f_elt.far_ptr = elt_atts->requiredFormats;
1063
0
  f_base.far_ptr = base_atts->requiredFormats;
1064
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1065
1066
0
  f_elt.fieldType = f_base.fieldType = DOM_StringList_datatype;
1067
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_systemLanguage;
1068
0
  f_elt.far_ptr = elt_atts->systemLanguage;
1069
0
  f_base.far_ptr = base_atts->systemLanguage;
1070
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1071
1072
0
  f_elt.fieldType = f_base.fieldType = XMLRI_datatype;
1073
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XML_ATT_base;
1074
0
  f_elt.far_ptr = elt_atts->xml_base;
1075
0
  f_base.far_ptr = base_atts->xml_base;
1076
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1077
1078
0
  f_elt.fieldType = f_base.fieldType = SVG_LanguageID_datatype;
1079
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XML_ATT_lang;
1080
0
  f_elt.far_ptr = elt_atts->xml_lang;
1081
0
  f_base.far_ptr = base_atts->xml_lang;
1082
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1083
1084
0
  f_elt.fieldType = f_base.fieldType = XML_Space_datatype;
1085
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XML_ATT_space;
1086
0
  f_elt.far_ptr = elt_atts->xml_space;
1087
0
  f_base.far_ptr = base_atts->xml_space;
1088
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1089
1090
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1091
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_next;
1092
0
  f_elt.far_ptr = elt_atts->nav_next;
1093
0
  f_base.far_ptr = base_atts->nav_next;
1094
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1095
1096
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1097
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_up;
1098
0
  f_elt.far_ptr = elt_atts->nav_up;
1099
0
  f_base.far_ptr = base_atts->nav_up;
1100
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1101
1102
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1103
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_up_left;
1104
0
  f_elt.far_ptr = elt_atts->nav_up_left;
1105
0
  f_base.far_ptr = base_atts->nav_up_left;
1106
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1107
1108
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1109
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_up_right;
1110
0
  f_elt.far_ptr = elt_atts->nav_up_right;
1111
0
  f_base.far_ptr = base_atts->nav_up_right;
1112
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1113
1114
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1115
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_prev;
1116
0
  f_elt.far_ptr = elt_atts->nav_prev;
1117
0
  f_base.far_ptr = base_atts->nav_prev;
1118
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1119
1120
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1121
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_down;
1122
0
  f_elt.far_ptr = elt_atts->nav_down;
1123
0
  f_base.far_ptr = base_atts->nav_down;
1124
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1125
1126
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1127
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_down_left;
1128
0
  f_elt.far_ptr = elt_atts->nav_down_left;
1129
0
  f_base.far_ptr = base_atts->nav_down_left;
1130
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1131
1132
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1133
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_down_right;
1134
0
  f_elt.far_ptr = elt_atts->nav_down_right;
1135
0
  f_base.far_ptr = base_atts->nav_down_right;
1136
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1137
1138
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1139
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_left;
1140
0
  f_elt.far_ptr = elt_atts->nav_left;
1141
0
  f_base.far_ptr = base_atts->nav_left;
1142
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1143
1144
0
  f_elt.fieldType = f_base.fieldType = SVG_Focusable_datatype;
1145
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_focusable;
1146
0
  f_elt.far_ptr = elt_atts->focusable;
1147
0
  f_base.far_ptr = base_atts->focusable;
1148
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1149
1150
0
  f_elt.fieldType = f_base.fieldType = SVG_Focus_datatype;
1151
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_nav_right;
1152
0
  f_elt.far_ptr = elt_atts->nav_right;
1153
0
  f_base.far_ptr = base_atts->nav_right;
1154
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1155
1156
0
  f_elt.fieldType = f_base.fieldType = SVG_Transform_datatype;
1157
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_transform;
1158
0
  f_elt.far_ptr = elt_atts->transform;
1159
0
  f_base.far_ptr = base_atts->transform;
1160
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1161
1162
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
1163
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_text_decoration;
1164
0
  f_elt.far_ptr = elt_atts->text_decoration;
1165
0
  f_base.far_ptr = base_atts->text_decoration;
1166
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1167
1168
0
  f_elt.fieldType = f_base.fieldType = SVG_FontVariant_datatype;
1169
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_font_variant;
1170
0
  f_elt.far_ptr = elt_atts->font_variant;
1171
0
  f_base.far_ptr = base_atts->font_variant;
1172
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1173
1174
0
  f_elt.fieldType = f_base.fieldType = SVG_FontFamily_datatype;
1175
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_font_family;
1176
0
  f_elt.far_ptr = elt_atts->font_family;
1177
0
  f_base.far_ptr = base_atts->font_family;
1178
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1179
1180
0
  f_elt.fieldType = f_base.fieldType = SVG_FontSize_datatype;
1181
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_font_size;
1182
0
  f_elt.far_ptr = elt_atts->font_size;
1183
0
  f_base.far_ptr = base_atts->font_size;
1184
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1185
1186
0
  f_elt.fieldType = f_base.fieldType = SVG_FontStyle_datatype;
1187
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_font_style;
1188
0
  f_elt.far_ptr = elt_atts->font_style;
1189
0
  f_base.far_ptr = base_atts->font_style;
1190
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1191
1192
0
  f_elt.fieldType = f_base.fieldType = SVG_FontWeight_datatype;
1193
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_font_weight;
1194
0
  f_elt.far_ptr = elt_atts->font_weight;
1195
0
  f_base.far_ptr = base_atts->font_weight;
1196
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1197
1198
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
1199
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_title;
1200
0
  f_elt.far_ptr = elt_atts->xlink_title;
1201
0
  f_base.far_ptr = base_atts->xlink_title;
1202
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1203
1204
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
1205
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_type;
1206
0
  f_elt.far_ptr = elt_atts->xlink_type;
1207
0
  f_base.far_ptr = base_atts->xlink_type;
1208
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1209
1210
0
  f_elt.fieldType = f_base.fieldType = XMLRI_datatype;
1211
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_role;
1212
0
  f_elt.far_ptr = elt_atts->xlink_role;
1213
0
  f_base.far_ptr = base_atts->xlink_role;
1214
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1215
1216
0
  f_elt.fieldType = f_base.fieldType = XMLRI_datatype;
1217
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_arcrole;
1218
0
  f_elt.far_ptr = elt_atts->xlink_arcrole;
1219
0
  f_base.far_ptr = base_atts->xlink_arcrole;
1220
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1221
1222
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
1223
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_actuate;
1224
0
  f_elt.far_ptr = elt_atts->xlink_actuate;
1225
0
  f_base.far_ptr = base_atts->xlink_actuate;
1226
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1227
1228
0
  f_elt.fieldType = f_base.fieldType = DOM_String_datatype;
1229
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_XLINK_ATT_show;
1230
0
  f_elt.far_ptr = elt_atts->xlink_show;
1231
0
  f_base.far_ptr = base_atts->xlink_show;
1232
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1233
1234
0
  f_elt.fieldType = f_base.fieldType = SMIL_Times_datatype;
1235
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_end;
1236
0
  f_elt.far_ptr = elt_atts->end;
1237
0
  f_base.far_ptr = base_atts->end;
1238
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1239
1240
0
  f_elt.fieldType = f_base.fieldType = SMIL_Duration_datatype;
1241
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_max;
1242
0
  f_elt.far_ptr = elt_atts->max;
1243
0
  f_base.far_ptr = base_atts->max;
1244
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1245
1246
0
  f_elt.fieldType = f_base.fieldType = SMIL_Duration_datatype;
1247
0
  f_elt.fieldIndex = f_base.fieldIndex = TAG_SVG_ATT_min;
1248
0
  f_elt.far_ptr = elt_atts->min;
1249
0
  f_base.far_ptr = base_atts->min;
1250
0
  if (!gf_svg_attributes_equal(&f_elt, &f_base)) return 0;
1251
1252
0
  return 1;
1253
0
}
1254
1255
#endif /*GPAC_DISABLE_LASER*/
1256