1 /*
2     Copyright (c) 2008-2013 NetAllied Systems GmbH
3 
4     This file is part of COLLADASaxFrameworkLoader.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 
11 
12 
13 #ifndef __COLLADASAXFWL14_COLLADAPARSERAUTOGEN14VALIDATIONDATA_H__
14 #define __COLLADASAXFWL14_COLLADAPARSERAUTOGEN14VALIDATIONDATA_H__
15 
16 
17 namespace COLLADASaxFWL14
18 {
19 
20 
21 ParserError::ErrorType validate__VersionType( ParserString value );
22 ParserError::ErrorType validate__VersionType( const ParserChar* value, size_t length );
23 ParserError::ErrorType validate__VersionType__stream( const ParserChar* value, size_t length );
24 ParserError::ErrorType validate__VersionType__streamEnd( const ParserChar* value, size_t length );
25 
26 struct COLLADA__ValidationData
27 {
28     size_t validation_current_state;
29     size_t asset;
30     size_t library_animations;
31     size_t library_animation_clips;
32     size_t library_cameras;
33     size_t library_controllers;
34     size_t library_geometries;
35     size_t library_effects;
36     size_t library_force_fields;
37     size_t library_images;
38     size_t library_lights;
39     size_t library_materials;
40     size_t library_nodes;
41     size_t library_physics_materials;
42     size_t library_physics_models;
43     size_t library_physics_scenes;
44     size_t library_visual_scenes;
45     size_t scene;
46     size_t extra;
47 };
48 
49 struct asset__ValidationData
50 {
51     size_t contributor;
52     size_t created;
53     size_t keywords;
54     size_t modified;
55     size_t revision;
56     size_t subject;
57     size_t title;
58     size_t unit;
59     size_t up_axis;
60 };
61 
62 struct contributor__ValidationData
63 {
64     size_t author;
65     size_t authoring_tool;
66     size_t comments;
67     size_t copyright;
68     size_t source_data;
69 };
70 
71 ParserError::ErrorType validate__NMTOKEN( ParserString value );
72 ParserError::ErrorType validate__NMTOKEN( const ParserChar* value, size_t length );
73 ParserError::ErrorType validate__NMTOKEN__stream( const ParserChar* value, size_t length );
74 ParserError::ErrorType validate__NMTOKEN__streamEnd( const ParserChar* value, size_t length );
75 
76 ParserError::ErrorType validate__UpAxisType( ParserString value );
77 ParserError::ErrorType validate__UpAxisType( const ParserChar* value, size_t length );
78 ParserError::ErrorType validate__UpAxisType__stream( const ParserChar* value, size_t length );
79 ParserError::ErrorType validate__UpAxisType__streamEnd( const ParserChar* value, size_t length );
80 
81 ParserError::ErrorType validate__NCName( ParserString value );
82 ParserError::ErrorType validate__NCName( const ParserChar* value, size_t length );
83 ParserError::ErrorType validate__NCName__stream( const ParserChar* value, size_t length );
84 ParserError::ErrorType validate__NCName__streamEnd( const ParserChar* value, size_t length );
85 
86 struct library_animations__ValidationData
87 {
88     size_t asset;
89     size_t animation;
90     size_t extra;
91 };
92 
93 struct animation__ValidationData
94 {
95     size_t validation_current_state;
96     size_t asset;
97     size_t source;
98     size_t sampler;
99     size_t channel;
100     size_t animation;
101     size_t extra;
102 };
103 
104 struct source__ValidationData
105 {
106     size_t validation_current_state;
107     size_t asset;
108     size_t IDREF_array;
109     size_t Name_array;
110     size_t bool_array;
111     size_t float_array;
112     size_t int_array;
113     size_t technique_common;
114     size_t technique;
115 };
116 
117 struct IDREF_array__ValidationData
118 {
119     size_t validationWholeSize;
120 };
121 
122 ParserError::ErrorType validate__IDREFS( const ParserString*value, size_t length );
123 ParserError::ErrorType validate__IDREFS__stream( const ParserString*value, size_t length );
124 ParserError::ErrorType validate__IDREFS__streamEnd( const ParserString*value, size_t length );
125 
126 ParserError::ErrorType validate__Name( ParserString value );
127 ParserError::ErrorType validate__Name( const ParserChar* value, size_t length );
128 ParserError::ErrorType validate__Name__stream( const ParserChar* value, size_t length );
129 ParserError::ErrorType validate__Name__streamEnd( const ParserChar* value, size_t length );
130 
131 struct animation__source__technique_common__ValidationData
132 {
133     size_t accessor;
134 };
135 
136 struct accessor__ValidationData
137 {
138     size_t param;
139 };
140 
141 struct technique__ValidationData
142 {
143     size_t _wildcard;
144 };
145 
146 struct sampler__ValidationData
147 {
148     size_t input;
149 };
150 
151 ParserError::ErrorType validate__URIFragmentType( ParserString value );
152 ParserError::ErrorType validate__URIFragmentType( const ParserChar* value, size_t length );
153 ParserError::ErrorType validate__URIFragmentType__stream( const ParserChar* value, size_t length );
154 ParserError::ErrorType validate__URIFragmentType__streamEnd( const ParserChar* value, size_t length );
155 
156 struct extra__ValidationData
157 {
158     size_t asset;
159     size_t technique;
160 };
161 
162 struct library_animation_clips__ValidationData
163 {
164     size_t asset;
165     size_t animation_clip;
166     size_t extra;
167 };
168 
169 struct animation_clip__ValidationData
170 {
171     size_t asset;
172     size_t instance_animation;
173     size_t extra;
174 };
175 
176 struct instance_animation__ValidationData
177 {
178     size_t extra;
179 };
180 
181 struct library_cameras__ValidationData
182 {
183     size_t asset;
184     size_t camera;
185     size_t extra;
186 };
187 
188 struct camera__ValidationData
189 {
190     size_t asset;
191     size_t optics;
192     size_t imager;
193     size_t extra;
194 };
195 
196 struct optics__ValidationData
197 {
198     size_t technique_common;
199     size_t technique;
200     size_t extra;
201 };
202 
203 struct optics__technique_common__ValidationData
204 {
205     size_t orthographic;
206     size_t perspective;
207 };
208 
209 struct orthographic__ValidationData
210 {
211     size_t validation_current_state;
212     size_t xmag;
213     size_t ymag;
214     size_t aspect_ratio;
215     size_t znear;
216     size_t zfar;
217 };
218 
219 struct perspective__ValidationData
220 {
221     size_t validation_current_state;
222     size_t xfov;
223     size_t yfov;
224     size_t aspect_ratio;
225     size_t znear;
226     size_t zfar;
227 };
228 
229 struct imager__ValidationData
230 {
231     size_t technique;
232     size_t extra;
233 };
234 
235 struct library_controllers__ValidationData
236 {
237     size_t asset;
238     size_t controller;
239     size_t extra;
240 };
241 
242 struct controller__ValidationData
243 {
244     size_t validation_current_state;
245     size_t asset;
246     size_t skin;
247     size_t morph;
248     size_t extra;
249 };
250 
251 struct skin__ValidationData
252 {
253     size_t bind_shape_matrix;
254     size_t source;
255     size_t joints;
256     size_t vertex_weights;
257     size_t extra;
258 };
259 
260 struct bind_shape_matrix__ValidationData
261 {
262     size_t validationWholeSize;
263 };
264 
265 ParserError::ErrorType validate__float4x4( const float* value, size_t length );
266 ParserError::ErrorType validate__float4x4__stream( const float* value, size_t length );
267 ParserError::ErrorType validate__float4x4__streamEnd( const float* value, size_t length );
268 
269 struct joints__ValidationData
270 {
271     size_t input;
272     size_t extra;
273 };
274 
275 struct vertex_weights__ValidationData
276 {
277     size_t input;
278     size_t vcount;
279     size_t v;
280     size_t extra;
281 };
282 
283 ParserError::ErrorType validate__MorphMethodType( ParserString value );
284 ParserError::ErrorType validate__MorphMethodType( const ParserChar* value, size_t length );
285 ParserError::ErrorType validate__MorphMethodType__stream( const ParserChar* value, size_t length );
286 ParserError::ErrorType validate__MorphMethodType__streamEnd( const ParserChar* value, size_t length );
287 
288 struct morph__ValidationData
289 {
290     size_t source;
291     size_t targets;
292     size_t extra;
293 };
294 
295 struct targets__ValidationData
296 {
297     size_t input;
298     size_t extra;
299 };
300 
301 struct library_geometries__ValidationData
302 {
303     size_t asset;
304     size_t geometry;
305     size_t extra;
306 };
307 
308 struct geometry__ValidationData
309 {
310     size_t validation_current_state;
311     size_t asset;
312     size_t convex_mesh;
313     size_t mesh;
314     size_t spline;
315     size_t extra;
316 };
317 
318 struct convex_mesh__ValidationData
319 {
320     size_t validation_current_state;
321     size_t source;
322     size_t vertices;
323     size_t lines;
324     size_t linestrips;
325     size_t polygons;
326     size_t polylist;
327     size_t triangles;
328     size_t trifans;
329     size_t tristrips;
330     size_t extra;
331 };
332 
333 struct vertices__ValidationData
334 {
335     size_t input;
336     size_t extra;
337 };
338 
339 struct lines__ValidationData
340 {
341     size_t input;
342     size_t p;
343     size_t extra;
344 };
345 
346 struct linestrips__ValidationData
347 {
348     size_t input;
349     size_t p;
350     size_t extra;
351 };
352 
353 struct polygons__ValidationData
354 {
355     size_t validation_current_state;
356     size_t input;
357     size_t p;
358     size_t ph;
359     size_t extra;
360 };
361 
362 struct ph__ValidationData
363 {
364     size_t p;
365     size_t h;
366 };
367 
368 struct polylist__ValidationData
369 {
370     size_t input;
371     size_t vcount;
372     size_t p;
373     size_t extra;
374 };
375 
376 struct triangles__ValidationData
377 {
378     size_t input;
379     size_t p;
380     size_t extra;
381 };
382 
383 struct trifans__ValidationData
384 {
385     size_t input;
386     size_t p;
387     size_t extra;
388 };
389 
390 struct tristrips__ValidationData
391 {
392     size_t input;
393     size_t p;
394     size_t extra;
395 };
396 
397 struct mesh__ValidationData
398 {
399     size_t validation_current_state;
400     size_t source;
401     size_t vertices;
402     size_t lines;
403     size_t linestrips;
404     size_t polygons;
405     size_t polylist;
406     size_t triangles;
407     size_t trifans;
408     size_t tristrips;
409     size_t extra;
410 };
411 
412 struct spline__ValidationData
413 {
414     size_t source;
415     size_t control_vertices;
416     size_t extra;
417 };
418 
419 struct control_vertices__ValidationData
420 {
421     size_t input;
422     size_t extra;
423 };
424 
425 struct library_effects__ValidationData
426 {
427     size_t asset;
428     size_t effect;
429     size_t extra;
430 };
431 
432 struct effect__ValidationData
433 {
434     size_t asset;
435     size_t annotate;
436     size_t image;
437     size_t newparam;
438     size_t fx_profile_abstract;
439     size_t extra;
440 };
441 
442 struct annotate__ValidationData
443 {
444     size_t validation_current_state;
445     size_t _bool;
446     size_t bool2;
447     size_t bool3;
448     size_t bool4;
449     size_t _int;
450     size_t int2;
451     size_t int3;
452     size_t int4;
453     size_t _float;
454     size_t float2;
455     size_t float3;
456     size_t float4;
457     size_t float2x2;
458     size_t float3x3;
459     size_t float4x4;
460     size_t string;
461 };
462 
463 struct bool2____bool2__ValidationData
464 {
465     size_t validationWholeSize;
466 };
467 
468 ParserError::ErrorType validate__bool2( const bool* value, size_t length );
469 ParserError::ErrorType validate__bool2__stream( const bool* value, size_t length );
470 ParserError::ErrorType validate__bool2__streamEnd( const bool* value, size_t length );
471 
472 struct bool3____bool3__ValidationData
473 {
474     size_t validationWholeSize;
475 };
476 
477 ParserError::ErrorType validate__bool3( const bool* value, size_t length );
478 ParserError::ErrorType validate__bool3__stream( const bool* value, size_t length );
479 ParserError::ErrorType validate__bool3__streamEnd( const bool* value, size_t length );
480 
481 struct bool4____bool4__ValidationData
482 {
483     size_t validationWholeSize;
484 };
485 
486 ParserError::ErrorType validate__bool4( const bool* value, size_t length );
487 ParserError::ErrorType validate__bool4__stream( const bool* value, size_t length );
488 ParserError::ErrorType validate__bool4__streamEnd( const bool* value, size_t length );
489 
490 struct int2____int2__ValidationData
491 {
492     size_t validationWholeSize;
493 };
494 
495 ParserError::ErrorType validate__int2( const sint64* value, size_t length );
496 ParserError::ErrorType validate__int2__stream( const sint64* value, size_t length );
497 ParserError::ErrorType validate__int2__streamEnd( const sint64* value, size_t length );
498 
499 struct int3____int3__ValidationData
500 {
501     size_t validationWholeSize;
502 };
503 
504 ParserError::ErrorType validate__int3( const sint64* value, size_t length );
505 ParserError::ErrorType validate__int3__stream( const sint64* value, size_t length );
506 ParserError::ErrorType validate__int3__streamEnd( const sint64* value, size_t length );
507 
508 struct int4____int4__ValidationData
509 {
510     size_t validationWholeSize;
511 };
512 
513 ParserError::ErrorType validate__int4( const sint64* value, size_t length );
514 ParserError::ErrorType validate__int4__stream( const sint64* value, size_t length );
515 ParserError::ErrorType validate__int4__streamEnd( const sint64* value, size_t length );
516 
517 struct float2____float2__ValidationData
518 {
519     size_t validationWholeSize;
520 };
521 
522 ParserError::ErrorType validate__float2( const float* value, size_t length );
523 ParserError::ErrorType validate__float2__stream( const float* value, size_t length );
524 ParserError::ErrorType validate__float2__streamEnd( const float* value, size_t length );
525 
526 struct float3____float3__ValidationData
527 {
528     size_t validationWholeSize;
529 };
530 
531 ParserError::ErrorType validate__float3( const float* value, size_t length );
532 ParserError::ErrorType validate__float3__stream( const float* value, size_t length );
533 ParserError::ErrorType validate__float3__streamEnd( const float* value, size_t length );
534 
535 struct float4____float4__ValidationData
536 {
537     size_t validationWholeSize;
538 };
539 
540 ParserError::ErrorType validate__float4( const float* value, size_t length );
541 ParserError::ErrorType validate__float4__stream( const float* value, size_t length );
542 ParserError::ErrorType validate__float4__streamEnd( const float* value, size_t length );
543 
544 struct float2x2____float2x2__ValidationData
545 {
546     size_t validationWholeSize;
547 };
548 
549 ParserError::ErrorType validate__float2x2( const float* value, size_t length );
550 ParserError::ErrorType validate__float2x2__stream( const float* value, size_t length );
551 ParserError::ErrorType validate__float2x2__streamEnd( const float* value, size_t length );
552 
553 struct float3x3____float3x3__ValidationData
554 {
555     size_t validationWholeSize;
556 };
557 
558 ParserError::ErrorType validate__float3x3( const float* value, size_t length );
559 ParserError::ErrorType validate__float3x3__stream( const float* value, size_t length );
560 ParserError::ErrorType validate__float3x3__streamEnd( const float* value, size_t length );
561 
562 struct image__ValidationData
563 {
564     size_t validation_current_state;
565     size_t asset;
566     size_t data;
567     size_t init_from;
568     size_t extra;
569 };
570 
571 struct newparam____fx_newparam_common__ValidationData
572 {
573     size_t validation_current_state;
574     size_t annotate;
575     size_t semantic;
576     size_t modifier;
577     size_t _bool;
578     size_t bool2;
579     size_t bool3;
580     size_t bool4;
581     size_t _int;
582     size_t int2;
583     size_t int3;
584     size_t int4;
585     size_t _float;
586     size_t float2;
587     size_t float3;
588     size_t float4;
589     size_t float1x1;
590     size_t float1x2;
591     size_t float1x3;
592     size_t float1x4;
593     size_t float2x1;
594     size_t float2x2;
595     size_t float2x3;
596     size_t float2x4;
597     size_t float3x1;
598     size_t float3x2;
599     size_t float3x3;
600     size_t float3x4;
601     size_t float4x1;
602     size_t float4x2;
603     size_t float4x3;
604     size_t float4x4;
605     size_t surface;
606     size_t sampler1D;
607     size_t sampler2D;
608     size_t sampler3D;
609     size_t samplerCUBE;
610     size_t samplerRECT;
611     size_t samplerDEPTH;
612     size_t _enum;
613 };
614 
615 ParserError::ErrorType validate__fx_modifier_enum_common( ParserString value );
616 ParserError::ErrorType validate__fx_modifier_enum_common( const ParserChar* value, size_t length );
617 ParserError::ErrorType validate__fx_modifier_enum_common__stream( const ParserChar* value, size_t length );
618 ParserError::ErrorType validate__fx_modifier_enum_common__streamEnd( const ParserChar* value, size_t length );
619 
620 struct float2x3____float2x3__ValidationData
621 {
622     size_t validationWholeSize;
623 };
624 
625 ParserError::ErrorType validate__float2x3( const float* value, size_t length );
626 ParserError::ErrorType validate__float2x3__stream( const float* value, size_t length );
627 ParserError::ErrorType validate__float2x3__streamEnd( const float* value, size_t length );
628 
629 struct float2x4____float2x4__ValidationData
630 {
631     size_t validationWholeSize;
632 };
633 
634 ParserError::ErrorType validate__float2x4( const float* value, size_t length );
635 ParserError::ErrorType validate__float2x4__stream( const float* value, size_t length );
636 ParserError::ErrorType validate__float2x4__streamEnd( const float* value, size_t length );
637 
638 struct float3x2____float3x2__ValidationData
639 {
640     size_t validationWholeSize;
641 };
642 
643 ParserError::ErrorType validate__float3x2( const float* value, size_t length );
644 ParserError::ErrorType validate__float3x2__stream( const float* value, size_t length );
645 ParserError::ErrorType validate__float3x2__streamEnd( const float* value, size_t length );
646 
647 struct float3x4____float3x4__ValidationData
648 {
649     size_t validationWholeSize;
650 };
651 
652 ParserError::ErrorType validate__float3x4( const float* value, size_t length );
653 ParserError::ErrorType validate__float3x4__stream( const float* value, size_t length );
654 ParserError::ErrorType validate__float3x4__streamEnd( const float* value, size_t length );
655 
656 struct float4x2____float4x2__ValidationData
657 {
658     size_t validationWholeSize;
659 };
660 
661 ParserError::ErrorType validate__float4x2( const float* value, size_t length );
662 ParserError::ErrorType validate__float4x2__stream( const float* value, size_t length );
663 ParserError::ErrorType validate__float4x2__streamEnd( const float* value, size_t length );
664 
665 struct float4x3____float4x3__ValidationData
666 {
667     size_t validationWholeSize;
668 };
669 
670 ParserError::ErrorType validate__float4x3( const float* value, size_t length );
671 ParserError::ErrorType validate__float4x3__stream( const float* value, size_t length );
672 ParserError::ErrorType validate__float4x3__streamEnd( const float* value, size_t length );
673 
674 ParserError::ErrorType validate__fx_surface_type_enum( ParserString value );
675 ParserError::ErrorType validate__fx_surface_type_enum( const ParserChar* value, size_t length );
676 ParserError::ErrorType validate__fx_surface_type_enum__stream( const ParserChar* value, size_t length );
677 ParserError::ErrorType validate__fx_surface_type_enum__streamEnd( const ParserChar* value, size_t length );
678 
679 struct surface____fx_surface_common__ValidationData
680 {
681     size_t validation_current_state;
682     size_t init_as_null;
683     size_t init_as_target;
684     size_t init_cube;
685     size_t init_volume;
686     size_t init_planar;
687     size_t init_from;
688     size_t format;
689     size_t format_hint;
690     size_t size;
691     size_t viewport_ratio;
692     size_t mip_levels;
693     size_t mipmap_generate;
694     size_t extra;
695 };
696 
697 struct init_as_null__ValidationData
698 {
699     size_t _wildcard;
700     size_t validationWholeSize;
701 };
702 
703 struct init_cube__ValidationData
704 {
705     size_t all;
706     size_t primary;
707     size_t face;
708 };
709 
710 struct fx_surface_init_cube_common____primary__ValidationData
711 {
712     size_t order;
713 };
714 
715 ParserError::ErrorType validate__fx_surface_face_enum( ParserString value );
716 ParserError::ErrorType validate__fx_surface_face_enum( const ParserChar* value, size_t length );
717 ParserError::ErrorType validate__fx_surface_face_enum__stream( const ParserChar* value, size_t length );
718 ParserError::ErrorType validate__fx_surface_face_enum__streamEnd( const ParserChar* value, size_t length );
719 
720 struct init_volume__ValidationData
721 {
722     size_t all;
723     size_t primary;
724 };
725 
726 struct init_planar__ValidationData
727 {
728     size_t all;
729 };
730 
731 ParserError::ErrorType validate__unsignedInt( const uint32 value );
732 
733 struct format_hint__ValidationData
734 {
735     size_t channels;
736     size_t range;
737     size_t precision;
738     size_t option;
739     size_t extra;
740 };
741 
742 ParserError::ErrorType validate__fx_surface_format_hint_channels_enum( ParserString value );
743 ParserError::ErrorType validate__fx_surface_format_hint_channels_enum( const ParserChar* value, size_t length );
744 ParserError::ErrorType validate__fx_surface_format_hint_channels_enum__stream( const ParserChar* value, size_t length );
745 ParserError::ErrorType validate__fx_surface_format_hint_channels_enum__streamEnd( const ParserChar* value, size_t length );
746 
747 ParserError::ErrorType validate__fx_surface_format_hint_range_enum( ParserString value );
748 ParserError::ErrorType validate__fx_surface_format_hint_range_enum( const ParserChar* value, size_t length );
749 ParserError::ErrorType validate__fx_surface_format_hint_range_enum__stream( const ParserChar* value, size_t length );
750 ParserError::ErrorType validate__fx_surface_format_hint_range_enum__streamEnd( const ParserChar* value, size_t length );
751 
752 ParserError::ErrorType validate__fx_surface_format_hint_precision_enum( ParserString value );
753 ParserError::ErrorType validate__fx_surface_format_hint_precision_enum( const ParserChar* value, size_t length );
754 ParserError::ErrorType validate__fx_surface_format_hint_precision_enum__stream( const ParserChar* value, size_t length );
755 ParserError::ErrorType validate__fx_surface_format_hint_precision_enum__streamEnd( const ParserChar* value, size_t length );
756 
757 ParserError::ErrorType validate__fx_surface_format_hint_option_enum( ParserString value );
758 ParserError::ErrorType validate__fx_surface_format_hint_option_enum( const ParserChar* value, size_t length );
759 ParserError::ErrorType validate__fx_surface_format_hint_option_enum__stream( const ParserChar* value, size_t length );
760 ParserError::ErrorType validate__fx_surface_format_hint_option_enum__streamEnd( const ParserChar* value, size_t length );
761 
762 struct sampler1D____fx_sampler1D_common__ValidationData
763 {
764     size_t source;
765     size_t wrap_s;
766     size_t minfilter;
767     size_t magfilter;
768     size_t mipfilter;
769     size_t border_color;
770     size_t mipmap_maxlevel;
771     size_t mipmap_bias;
772     size_t extra;
773 };
774 
775 ParserError::ErrorType validate__fx_sampler_wrap_common( ParserString value );
776 ParserError::ErrorType validate__fx_sampler_wrap_common( const ParserChar* value, size_t length );
777 ParserError::ErrorType validate__fx_sampler_wrap_common__stream( const ParserChar* value, size_t length );
778 ParserError::ErrorType validate__fx_sampler_wrap_common__streamEnd( const ParserChar* value, size_t length );
779 
780 ParserError::ErrorType validate__fx_sampler_filter_common( ParserString value );
781 ParserError::ErrorType validate__fx_sampler_filter_common( const ParserChar* value, size_t length );
782 ParserError::ErrorType validate__fx_sampler_filter_common__stream( const ParserChar* value, size_t length );
783 ParserError::ErrorType validate__fx_sampler_filter_common__streamEnd( const ParserChar* value, size_t length );
784 
785 struct border_color__ValidationData
786 {
787     size_t validationWholeSize;
788 };
789 
790 ParserError::ErrorType validate__fx_color_common( const float* value, size_t length );
791 ParserError::ErrorType validate__fx_color_common__stream( const float* value, size_t length );
792 ParserError::ErrorType validate__fx_color_common__streamEnd( const float* value, size_t length );
793 
794 struct sampler2D____fx_sampler2D_common__ValidationData
795 {
796     size_t source;
797     size_t wrap_s;
798     size_t wrap_t;
799     size_t minfilter;
800     size_t magfilter;
801     size_t mipfilter;
802     size_t border_color;
803     size_t mipmap_maxlevel;
804     size_t mipmap_bias;
805     size_t extra;
806 };
807 
808 struct sampler3D____fx_sampler3D_common__ValidationData
809 {
810     size_t source;
811     size_t wrap_s;
812     size_t wrap_t;
813     size_t wrap_p;
814     size_t minfilter;
815     size_t magfilter;
816     size_t mipfilter;
817     size_t border_color;
818     size_t mipmap_maxlevel;
819     size_t mipmap_bias;
820     size_t extra;
821 };
822 
823 struct samplerCUBE____fx_samplerCUBE_common__ValidationData
824 {
825     size_t source;
826     size_t wrap_s;
827     size_t wrap_t;
828     size_t wrap_p;
829     size_t minfilter;
830     size_t magfilter;
831     size_t mipfilter;
832     size_t border_color;
833     size_t mipmap_maxlevel;
834     size_t mipmap_bias;
835     size_t extra;
836 };
837 
838 struct samplerRECT____fx_samplerRECT_common__ValidationData
839 {
840     size_t source;
841     size_t wrap_s;
842     size_t wrap_t;
843     size_t minfilter;
844     size_t magfilter;
845     size_t mipfilter;
846     size_t border_color;
847     size_t mipmap_maxlevel;
848     size_t mipmap_bias;
849     size_t extra;
850 };
851 
852 struct samplerDEPTH____fx_samplerDEPTH_common__ValidationData
853 {
854     size_t source;
855     size_t wrap_s;
856     size_t wrap_t;
857     size_t minfilter;
858     size_t magfilter;
859     size_t extra;
860 };
861 
862 struct library_force_fields__ValidationData
863 {
864     size_t asset;
865     size_t force_field;
866     size_t extra;
867 };
868 
869 struct force_field__ValidationData
870 {
871     size_t asset;
872     size_t technique;
873     size_t extra;
874 };
875 
876 struct library_images__ValidationData
877 {
878     size_t asset;
879     size_t image;
880     size_t extra;
881 };
882 
883 struct library_lights__ValidationData
884 {
885     size_t asset;
886     size_t light;
887     size_t extra;
888 };
889 
890 struct light__ValidationData
891 {
892     size_t asset;
893     size_t technique_common;
894     size_t technique;
895     size_t extra;
896 };
897 
898 struct light__technique_common__ValidationData
899 {
900     size_t ambient;
901     size_t directional;
902     size_t point;
903     size_t spot;
904 };
905 
906 struct light__technique_common__ambient__ValidationData
907 {
908     size_t color;
909 };
910 
911 struct color____TargetableFloat3__ValidationData
912 {
913     size_t validationWholeSize;
914 };
915 
916 struct directional__ValidationData
917 {
918     size_t color;
919 };
920 
921 struct point__ValidationData
922 {
923     size_t color;
924     size_t constant_attenuation;
925     size_t linear_attenuation;
926     size_t quadratic_attenuation;
927 };
928 
929 struct spot__ValidationData
930 {
931     size_t color;
932     size_t constant_attenuation;
933     size_t linear_attenuation;
934     size_t quadratic_attenuation;
935     size_t falloff_angle;
936     size_t falloff_exponent;
937 };
938 
939 struct library_materials__ValidationData
940 {
941     size_t asset;
942     size_t material;
943     size_t extra;
944 };
945 
946 struct material__ValidationData
947 {
948     size_t asset;
949     size_t instance_effect;
950     size_t extra;
951 };
952 
953 struct instance_effect__ValidationData
954 {
955     size_t technique_hint;
956     size_t setparam;
957     size_t extra;
958 };
959 
960 struct instance_effect__setparam__ValidationData
961 {
962     size_t validation_current_state;
963     size_t _bool;
964     size_t bool2;
965     size_t bool3;
966     size_t bool4;
967     size_t _int;
968     size_t int2;
969     size_t int3;
970     size_t int4;
971     size_t _float;
972     size_t float2;
973     size_t float3;
974     size_t float4;
975     size_t float1x1;
976     size_t float1x2;
977     size_t float1x3;
978     size_t float1x4;
979     size_t float2x1;
980     size_t float2x2;
981     size_t float2x3;
982     size_t float2x4;
983     size_t float3x1;
984     size_t float3x2;
985     size_t float3x3;
986     size_t float3x4;
987     size_t float4x1;
988     size_t float4x2;
989     size_t float4x3;
990     size_t float4x4;
991     size_t surface;
992     size_t sampler1D;
993     size_t sampler2D;
994     size_t sampler3D;
995     size_t samplerCUBE;
996     size_t samplerRECT;
997     size_t samplerDEPTH;
998     size_t _enum;
999 };
1000 
1001 struct library_nodes__ValidationData
1002 {
1003     size_t asset;
1004     size_t node;
1005     size_t extra;
1006 };
1007 
1008 ParserError::ErrorType validate__NodeType( ParserString value );
1009 ParserError::ErrorType validate__NodeType( const ParserChar* value, size_t length );
1010 ParserError::ErrorType validate__NodeType__stream( const ParserChar* value, size_t length );
1011 ParserError::ErrorType validate__NodeType__streamEnd( const ParserChar* value, size_t length );
1012 
1013 struct node__ValidationData
1014 {
1015     size_t validation_current_state;
1016     size_t asset;
1017     size_t lookat;
1018     size_t matrix;
1019     size_t rotate;
1020     size_t scale;
1021     size_t skew;
1022     size_t translate;
1023     size_t instance_camera;
1024     size_t instance_controller;
1025     size_t instance_geometry;
1026     size_t instance_light;
1027     size_t instance_node;
1028     size_t node;
1029     size_t extra;
1030 };
1031 
1032 struct lookat__ValidationData
1033 {
1034     size_t validationWholeSize;
1035 };
1036 
1037 struct matrix__ValidationData
1038 {
1039     size_t validationWholeSize;
1040 };
1041 
1042 struct rotate__ValidationData
1043 {
1044     size_t validationWholeSize;
1045 };
1046 
1047 struct skew__ValidationData
1048 {
1049     size_t validationWholeSize;
1050 };
1051 
1052 ParserError::ErrorType validate__float7( const float* value, size_t length );
1053 ParserError::ErrorType validate__float7__stream( const float* value, size_t length );
1054 ParserError::ErrorType validate__float7__streamEnd( const float* value, size_t length );
1055 
1056 struct instance_controller__ValidationData
1057 {
1058     size_t skeleton;
1059     size_t bind_material;
1060     size_t extra;
1061 };
1062 
1063 struct bind_material__ValidationData
1064 {
1065     size_t param;
1066     size_t technique_common;
1067     size_t technique;
1068     size_t extra;
1069 };
1070 
1071 struct bind_material__technique_common__ValidationData
1072 {
1073     size_t instance_material;
1074 };
1075 
1076 struct instance_material__ValidationData
1077 {
1078     size_t bind;
1079     size_t bind_vertex_input;
1080     size_t extra;
1081 };
1082 
1083 struct instance_geometry__ValidationData
1084 {
1085     size_t bind_material;
1086     size_t extra;
1087 };
1088 
1089 struct library_physics_materials__ValidationData
1090 {
1091     size_t asset;
1092     size_t physics_material;
1093     size_t extra;
1094 };
1095 
1096 struct physics_material__ValidationData
1097 {
1098     size_t asset;
1099     size_t technique_common;
1100     size_t technique;
1101     size_t extra;
1102 };
1103 
1104 struct physics_material__technique_common__ValidationData
1105 {
1106     size_t dynamic_friction;
1107     size_t restitution;
1108     size_t static_friction;
1109 };
1110 
1111 struct library_physics_models__ValidationData
1112 {
1113     size_t asset;
1114     size_t physics_model;
1115     size_t extra;
1116 };
1117 
1118 struct physics_model__ValidationData
1119 {
1120     size_t asset;
1121     size_t rigid_body;
1122     size_t rigid_constraint;
1123     size_t instance_physics_model;
1124     size_t extra;
1125 };
1126 
1127 struct rigid_body__ValidationData
1128 {
1129     size_t technique_common;
1130     size_t technique;
1131     size_t extra;
1132 };
1133 
1134 struct rigid_body__technique_common__ValidationData
1135 {
1136     size_t validation_current_state;
1137     size_t dynamic;
1138     size_t mass;
1139     size_t mass_frame;
1140     size_t inertia;
1141     size_t instance_physics_material;
1142     size_t physics_material;
1143     size_t shape;
1144 };
1145 
1146 struct rigid_body__technique_common__mass_frame__ValidationData
1147 {
1148     size_t translate;
1149     size_t rotate;
1150 };
1151 
1152 struct rigid_body__technique_common__shape__ValidationData
1153 {
1154     size_t validation_current_state;
1155     size_t hollow;
1156     size_t mass;
1157     size_t density;
1158     size_t instance_physics_material;
1159     size_t physics_material;
1160     size_t instance_geometry;
1161     size_t plane;
1162     size_t box;
1163     size_t sphere;
1164     size_t cylinder;
1165     size_t tapered_cylinder;
1166     size_t capsule;
1167     size_t tapered_capsule;
1168     size_t translate;
1169     size_t rotate;
1170     size_t extra;
1171 };
1172 
1173 struct plane__ValidationData
1174 {
1175     size_t equation;
1176     size_t extra;
1177 };
1178 
1179 struct box__ValidationData
1180 {
1181     size_t half_extents;
1182     size_t extra;
1183 };
1184 
1185 struct sphere__ValidationData
1186 {
1187     size_t radius;
1188     size_t extra;
1189 };
1190 
1191 struct cylinder__ValidationData
1192 {
1193     size_t height;
1194     size_t radius;
1195     size_t extra;
1196 };
1197 
1198 struct tapered_cylinder__ValidationData
1199 {
1200     size_t height;
1201     size_t radius1;
1202     size_t radius2;
1203     size_t extra;
1204 };
1205 
1206 struct capsule__ValidationData
1207 {
1208     size_t height;
1209     size_t radius;
1210     size_t extra;
1211 };
1212 
1213 struct tapered_capsule__ValidationData
1214 {
1215     size_t height;
1216     size_t radius1;
1217     size_t radius2;
1218     size_t extra;
1219 };
1220 
1221 struct rigid_constraint__ValidationData
1222 {
1223     size_t ref_attachment;
1224     size_t attachment;
1225     size_t technique_common;
1226     size_t technique;
1227     size_t extra;
1228 };
1229 
1230 struct ref_attachment__ValidationData
1231 {
1232     size_t translate;
1233     size_t rotate;
1234     size_t extra;
1235 };
1236 
1237 struct attachment__ValidationData
1238 {
1239     size_t translate;
1240     size_t rotate;
1241     size_t extra;
1242 };
1243 
1244 struct rigid_constraint__technique_common__ValidationData
1245 {
1246     size_t enabled;
1247     size_t interpenetrate;
1248     size_t limits;
1249     size_t spring;
1250 };
1251 
1252 struct limits__ValidationData
1253 {
1254     size_t swing_cone_and_twist;
1255     size_t linear;
1256 };
1257 
1258 struct swing_cone_and_twist__ValidationData
1259 {
1260     size_t min;
1261     size_t max;
1262 };
1263 
1264 struct limits__linear__ValidationData
1265 {
1266     size_t min;
1267     size_t max;
1268 };
1269 
1270 struct spring__ValidationData
1271 {
1272     size_t angular;
1273     size_t linear;
1274 };
1275 
1276 struct angular__ValidationData
1277 {
1278     size_t stiffness;
1279     size_t damping;
1280     size_t target_value;
1281 };
1282 
1283 struct spring__linear__ValidationData
1284 {
1285     size_t stiffness;
1286     size_t damping;
1287     size_t target_value;
1288 };
1289 
1290 struct instance_physics_model__ValidationData
1291 {
1292     size_t instance_force_field;
1293     size_t instance_rigid_body;
1294     size_t instance_rigid_constraint;
1295     size_t extra;
1296 };
1297 
1298 struct instance_rigid_body__ValidationData
1299 {
1300     size_t technique_common;
1301     size_t technique;
1302     size_t extra;
1303 };
1304 
1305 struct instance_rigid_body__technique_common__ValidationData
1306 {
1307     size_t validation_current_state;
1308     size_t angular_velocity;
1309     size_t velocity;
1310     size_t dynamic;
1311     size_t mass;
1312     size_t mass_frame;
1313     size_t inertia;
1314     size_t instance_physics_material;
1315     size_t physics_material;
1316     size_t shape;
1317 };
1318 
1319 struct instance_rigid_body__technique_common__mass_frame__ValidationData
1320 {
1321     size_t translate;
1322     size_t rotate;
1323 };
1324 
1325 struct instance_rigid_body__technique_common__shape__ValidationData
1326 {
1327     size_t validation_current_state;
1328     size_t hollow;
1329     size_t mass;
1330     size_t density;
1331     size_t instance_physics_material;
1332     size_t physics_material;
1333     size_t instance_geometry;
1334     size_t plane;
1335     size_t box;
1336     size_t sphere;
1337     size_t cylinder;
1338     size_t tapered_cylinder;
1339     size_t capsule;
1340     size_t tapered_capsule;
1341     size_t translate;
1342     size_t rotate;
1343     size_t extra;
1344 };
1345 
1346 struct instance_rigid_constraint__ValidationData
1347 {
1348     size_t extra;
1349 };
1350 
1351 struct library_physics_scenes__ValidationData
1352 {
1353     size_t asset;
1354     size_t physics_scene;
1355     size_t extra;
1356 };
1357 
1358 struct physics_scene__ValidationData
1359 {
1360     size_t asset;
1361     size_t instance_force_field;
1362     size_t instance_physics_model;
1363     size_t technique_common;
1364     size_t technique;
1365     size_t extra;
1366 };
1367 
1368 struct physics_scene__technique_common__ValidationData
1369 {
1370     size_t gravity;
1371     size_t time_step;
1372 };
1373 
1374 struct library_visual_scenes__ValidationData
1375 {
1376     size_t asset;
1377     size_t visual_scene;
1378     size_t extra;
1379 };
1380 
1381 struct visual_scene__ValidationData
1382 {
1383     size_t asset;
1384     size_t node;
1385     size_t evaluate_scene;
1386     size_t extra;
1387 };
1388 
1389 struct evaluate_scene__ValidationData
1390 {
1391     size_t render;
1392 };
1393 
1394 struct render__ValidationData
1395 {
1396     size_t layer;
1397     size_t instance_effect;
1398 };
1399 
1400 struct scene__ValidationData
1401 {
1402     size_t instance_physics_scene;
1403     size_t instance_visual_scene;
1404     size_t extra;
1405 };
1406 
1407 struct profile_GLES__ValidationData
1408 {
1409     size_t validation_current_state;
1410     size_t asset;
1411     size_t image;
1412     size_t newparam;
1413     size_t technique;
1414     size_t extra;
1415 };
1416 
1417 struct newparam____gles_newparam__ValidationData
1418 {
1419     size_t validation_current_state;
1420     size_t annotate;
1421     size_t semantic;
1422     size_t modifier;
1423     size_t _bool;
1424     size_t bool2;
1425     size_t bool3;
1426     size_t bool4;
1427     size_t _int;
1428     size_t int2;
1429     size_t int3;
1430     size_t int4;
1431     size_t _float;
1432     size_t float2;
1433     size_t float3;
1434     size_t float4;
1435     size_t float1x1;
1436     size_t float1x2;
1437     size_t float1x3;
1438     size_t float1x4;
1439     size_t float2x1;
1440     size_t float2x2;
1441     size_t float2x3;
1442     size_t float2x4;
1443     size_t float3x1;
1444     size_t float3x2;
1445     size_t float3x3;
1446     size_t float3x4;
1447     size_t float4x1;
1448     size_t float4x2;
1449     size_t float4x3;
1450     size_t float4x4;
1451     size_t surface;
1452     size_t texture_pipeline;
1453     size_t sampler_state;
1454     size_t texture_unit;
1455     size_t _enum;
1456 };
1457 
1458 struct texture_pipeline____gles_texture_pipeline__ValidationData
1459 {
1460     size_t texcombiner;
1461     size_t texenv;
1462     size_t extra;
1463 };
1464 
1465 struct texcombiner__ValidationData
1466 {
1467     size_t constant;
1468     size_t RGB;
1469     size_t alpha;
1470 };
1471 
1472 ParserError::ErrorType validate__gles_texcombiner_operatorRGB_enums( ParserString value );
1473 ParserError::ErrorType validate__gles_texcombiner_operatorRGB_enums( const ParserChar* value, size_t length );
1474 ParserError::ErrorType validate__gles_texcombiner_operatorRGB_enums__stream( const ParserChar* value, size_t length );
1475 ParserError::ErrorType validate__gles_texcombiner_operatorRGB_enums__streamEnd( const ParserChar* value, size_t length );
1476 
1477 struct RGB__ValidationData
1478 {
1479     size_t argument;
1480 };
1481 
1482 ParserError::ErrorType validate__gles_texcombiner_source_enums( ParserString value );
1483 ParserError::ErrorType validate__gles_texcombiner_source_enums( const ParserChar* value, size_t length );
1484 ParserError::ErrorType validate__gles_texcombiner_source_enums__stream( const ParserChar* value, size_t length );
1485 ParserError::ErrorType validate__gles_texcombiner_source_enums__streamEnd( const ParserChar* value, size_t length );
1486 
1487 ParserError::ErrorType validate__gles_texcombiner_operandRGB_enums( ParserString value );
1488 ParserError::ErrorType validate__gles_texcombiner_operandRGB_enums( const ParserChar* value, size_t length );
1489 ParserError::ErrorType validate__gles_texcombiner_operandRGB_enums__stream( const ParserChar* value, size_t length );
1490 ParserError::ErrorType validate__gles_texcombiner_operandRGB_enums__streamEnd( const ParserChar* value, size_t length );
1491 
1492 ParserError::ErrorType validate__gles_texcombiner_operatorAlpha_enums( ParserString value );
1493 ParserError::ErrorType validate__gles_texcombiner_operatorAlpha_enums( const ParserChar* value, size_t length );
1494 ParserError::ErrorType validate__gles_texcombiner_operatorAlpha_enums__stream( const ParserChar* value, size_t length );
1495 ParserError::ErrorType validate__gles_texcombiner_operatorAlpha_enums__streamEnd( const ParserChar* value, size_t length );
1496 
1497 struct alpha____gles_texcombiner_commandAlpha_type__ValidationData
1498 {
1499     size_t argument;
1500 };
1501 
1502 ParserError::ErrorType validate__gles_texcombiner_operandAlpha_enums( ParserString value );
1503 ParserError::ErrorType validate__gles_texcombiner_operandAlpha_enums( const ParserChar* value, size_t length );
1504 ParserError::ErrorType validate__gles_texcombiner_operandAlpha_enums__stream( const ParserChar* value, size_t length );
1505 ParserError::ErrorType validate__gles_texcombiner_operandAlpha_enums__streamEnd( const ParserChar* value, size_t length );
1506 
1507 ParserError::ErrorType validate__gles_texenv_mode_enums( ParserString value );
1508 ParserError::ErrorType validate__gles_texenv_mode_enums( const ParserChar* value, size_t length );
1509 ParserError::ErrorType validate__gles_texenv_mode_enums__stream( const ParserChar* value, size_t length );
1510 ParserError::ErrorType validate__gles_texenv_mode_enums__streamEnd( const ParserChar* value, size_t length );
1511 
1512 struct texenv__ValidationData
1513 {
1514     size_t constant;
1515 };
1516 
1517 struct sampler_state____gles_sampler_state__ValidationData
1518 {
1519     size_t wrap_s;
1520     size_t wrap_t;
1521     size_t minfilter;
1522     size_t magfilter;
1523     size_t mipfilter;
1524     size_t mipmap_maxlevel;
1525     size_t mipmap_bias;
1526     size_t extra;
1527 };
1528 
1529 ParserError::ErrorType validate__gles_sampler_wrap( ParserString value );
1530 ParserError::ErrorType validate__gles_sampler_wrap( const ParserChar* value, size_t length );
1531 ParserError::ErrorType validate__gles_sampler_wrap__stream( const ParserChar* value, size_t length );
1532 ParserError::ErrorType validate__gles_sampler_wrap__streamEnd( const ParserChar* value, size_t length );
1533 
1534 struct texture_unit__ValidationData
1535 {
1536     size_t surface;
1537     size_t sampler_state;
1538     size_t texcoord;
1539     size_t extra;
1540 };
1541 
1542 struct profile_GLES__technique__ValidationData
1543 {
1544     size_t validation_current_state;
1545     size_t asset;
1546     size_t annotate;
1547     size_t image;
1548     size_t newparam;
1549     size_t setparam;
1550     size_t pass;
1551     size_t extra;
1552 };
1553 
1554 struct profile_GLES__technique__setparam__ValidationData
1555 {
1556     size_t validation_current_state;
1557     size_t annotate;
1558     size_t _bool;
1559     size_t bool2;
1560     size_t bool3;
1561     size_t bool4;
1562     size_t _int;
1563     size_t int2;
1564     size_t int3;
1565     size_t int4;
1566     size_t _float;
1567     size_t float2;
1568     size_t float3;
1569     size_t float4;
1570     size_t float1x1;
1571     size_t float1x2;
1572     size_t float1x3;
1573     size_t float1x4;
1574     size_t float2x1;
1575     size_t float2x2;
1576     size_t float2x3;
1577     size_t float2x4;
1578     size_t float3x1;
1579     size_t float3x2;
1580     size_t float3x3;
1581     size_t float3x4;
1582     size_t float4x1;
1583     size_t float4x2;
1584     size_t float4x3;
1585     size_t float4x4;
1586     size_t surface;
1587     size_t texture_pipeline;
1588     size_t sampler_state;
1589     size_t texture_unit;
1590     size_t _enum;
1591 };
1592 
1593 struct profile_GLES__technique__pass__ValidationData
1594 {
1595     size_t validation_current_state;
1596     size_t annotate;
1597     size_t color_target;
1598     size_t depth_target;
1599     size_t stencil_target;
1600     size_t color_clear;
1601     size_t depth_clear;
1602     size_t stencil_clear;
1603     size_t draw;
1604     size_t alpha_func;
1605     size_t blend_func;
1606     size_t clear_color;
1607     size_t clear_stencil;
1608     size_t clear_depth;
1609     size_t clip_plane;
1610     size_t color_mask;
1611     size_t cull_face;
1612     size_t depth_func;
1613     size_t depth_mask;
1614     size_t depth_range;
1615     size_t fog_color;
1616     size_t fog_density;
1617     size_t fog_mode;
1618     size_t fog_start;
1619     size_t fog_end;
1620     size_t front_face;
1621     size_t texture_pipeline;
1622     size_t logic_op;
1623     size_t light_ambient;
1624     size_t light_diffuse;
1625     size_t light_specular;
1626     size_t light_position;
1627     size_t light_constant_attenuation;
1628     size_t light_linear_attenutation;
1629     size_t light_quadratic_attenuation;
1630     size_t light_spot_cutoff;
1631     size_t light_spot_direction;
1632     size_t light_spot_exponent;
1633     size_t light_model_ambient;
1634     size_t line_width;
1635     size_t material_ambient;
1636     size_t material_diffuse;
1637     size_t material_emission;
1638     size_t material_shininess;
1639     size_t material_specular;
1640     size_t model_view_matrix;
1641     size_t point_distance_attenuation;
1642     size_t point_fade_threshold_size;
1643     size_t point_size;
1644     size_t point_size_min;
1645     size_t point_size_max;
1646     size_t polygon_offset;
1647     size_t projection_matrix;
1648     size_t scissor;
1649     size_t shade_model;
1650     size_t stencil_func;
1651     size_t stencil_mask;
1652     size_t stencil_op;
1653     size_t alpha_test_enable;
1654     size_t blend_enable;
1655     size_t clip_plane_enable;
1656     size_t color_logic_op_enable;
1657     size_t color_material_enable;
1658     size_t cull_face_enable;
1659     size_t depth_test_enable;
1660     size_t dither_enable;
1661     size_t fog_enable;
1662     size_t texture_pipeline_enable;
1663     size_t light_enable;
1664     size_t lighting_enable;
1665     size_t light_model_two_side_enable;
1666     size_t line_smooth_enable;
1667     size_t multisample_enable;
1668     size_t normalize_enable;
1669     size_t point_smooth_enable;
1670     size_t polygon_offset_fill_enable;
1671     size_t rescale_normal_enable;
1672     size_t sample_alpha_to_coverage_enable;
1673     size_t sample_alpha_to_one_enable;
1674     size_t sample_coverage_enable;
1675     size_t scissor_test_enable;
1676     size_t stencil_test_enable;
1677     size_t extra;
1678 };
1679 
1680 ParserError::ErrorType validate__gles_rendertarget_common( ParserString value );
1681 ParserError::ErrorType validate__gles_rendertarget_common( const ParserChar* value, size_t length );
1682 ParserError::ErrorType validate__gles_rendertarget_common__stream( const ParserChar* value, size_t length );
1683 ParserError::ErrorType validate__gles_rendertarget_common__streamEnd( const ParserChar* value, size_t length );
1684 
1685 struct profile_GLES__technique__pass__alpha_func__ValidationData
1686 {
1687     size_t func;
1688     size_t value;
1689 };
1690 
1691 ParserError::ErrorType validate__gl_func_type( ParserString value );
1692 ParserError::ErrorType validate__gl_func_type( const ParserChar* value, size_t length );
1693 ParserError::ErrorType validate__gl_func_type__stream( const ParserChar* value, size_t length );
1694 ParserError::ErrorType validate__gl_func_type__streamEnd( const ParserChar* value, size_t length );
1695 
1696 ParserError::ErrorType validate__gl_alpha_value_type( const float value );
1697 
1698 struct profile_GLES__technique__pass__blend_func__ValidationData
1699 {
1700     size_t src;
1701     size_t dest;
1702 };
1703 
1704 ParserError::ErrorType validate__gl_blend_type( ParserString value );
1705 ParserError::ErrorType validate__gl_blend_type( const ParserChar* value, size_t length );
1706 ParserError::ErrorType validate__gl_blend_type__stream( const ParserChar* value, size_t length );
1707 ParserError::ErrorType validate__gl_blend_type__streamEnd( const ParserChar* value, size_t length );
1708 
1709 ParserError::ErrorType validate__GLES_MAX_CLIP_PLANES_index( const uint64 value );
1710 
1711 ParserError::ErrorType validate__gl_face_type( ParserString value );
1712 ParserError::ErrorType validate__gl_face_type( const ParserChar* value, size_t length );
1713 ParserError::ErrorType validate__gl_face_type__stream( const ParserChar* value, size_t length );
1714 ParserError::ErrorType validate__gl_face_type__streamEnd( const ParserChar* value, size_t length );
1715 
1716 ParserError::ErrorType validate__gl_fog_type( ParserString value );
1717 ParserError::ErrorType validate__gl_fog_type( const ParserChar* value, size_t length );
1718 ParserError::ErrorType validate__gl_fog_type__stream( const ParserChar* value, size_t length );
1719 ParserError::ErrorType validate__gl_fog_type__streamEnd( const ParserChar* value, size_t length );
1720 
1721 ParserError::ErrorType validate__gl_front_face_type( ParserString value );
1722 ParserError::ErrorType validate__gl_front_face_type( const ParserChar* value, size_t length );
1723 ParserError::ErrorType validate__gl_front_face_type__stream( const ParserChar* value, size_t length );
1724 ParserError::ErrorType validate__gl_front_face_type__streamEnd( const ParserChar* value, size_t length );
1725 
1726 struct profile_GLES__technique__pass__texture_pipeline__ValidationData
1727 {
1728     size_t value;
1729 };
1730 
1731 ParserError::ErrorType validate__gl_logic_op_type( ParserString value );
1732 ParserError::ErrorType validate__gl_logic_op_type( const ParserChar* value, size_t length );
1733 ParserError::ErrorType validate__gl_logic_op_type__stream( const ParserChar* value, size_t length );
1734 ParserError::ErrorType validate__gl_logic_op_type__streamEnd( const ParserChar* value, size_t length );
1735 
1736 ParserError::ErrorType validate__GLES_MAX_LIGHTS_index( const uint64 value );
1737 
1738 ParserError::ErrorType validate__gl_shade_model_type( ParserString value );
1739 ParserError::ErrorType validate__gl_shade_model_type( const ParserChar* value, size_t length );
1740 ParserError::ErrorType validate__gl_shade_model_type__stream( const ParserChar* value, size_t length );
1741 ParserError::ErrorType validate__gl_shade_model_type__streamEnd( const ParserChar* value, size_t length );
1742 
1743 struct profile_GLES__technique__pass__stencil_func__ValidationData
1744 {
1745     size_t func;
1746     size_t ref;
1747     size_t mask;
1748 };
1749 
1750 struct profile_GLES__technique__pass__stencil_op__ValidationData
1751 {
1752     size_t fail;
1753     size_t zfail;
1754     size_t zpass;
1755 };
1756 
1757 ParserError::ErrorType validate__gles_stencil_op_type( ParserString value );
1758 ParserError::ErrorType validate__gles_stencil_op_type( const ParserChar* value, size_t length );
1759 ParserError::ErrorType validate__gles_stencil_op_type__stream( const ParserChar* value, size_t length );
1760 ParserError::ErrorType validate__gles_stencil_op_type__streamEnd( const ParserChar* value, size_t length );
1761 
1762 struct profile_GLSL__ValidationData
1763 {
1764     size_t validation_current_state;
1765     size_t asset;
1766     size_t code;
1767     size_t include;
1768     size_t image;
1769     size_t newparam;
1770     size_t technique;
1771     size_t extra;
1772 };
1773 
1774 struct newparam____glsl_newparam__ValidationData
1775 {
1776     size_t validation_current_state;
1777     size_t annotate;
1778     size_t semantic;
1779     size_t modifier;
1780     size_t _bool;
1781     size_t bool2;
1782     size_t bool3;
1783     size_t bool4;
1784     size_t _float;
1785     size_t float2;
1786     size_t float3;
1787     size_t float4;
1788     size_t float2x2;
1789     size_t float3x3;
1790     size_t float4x4;
1791     size_t _int;
1792     size_t int2;
1793     size_t int3;
1794     size_t int4;
1795     size_t surface;
1796     size_t sampler1D;
1797     size_t sampler2D;
1798     size_t sampler3D;
1799     size_t samplerCUBE;
1800     size_t samplerRECT;
1801     size_t samplerDEPTH;
1802     size_t _enum;
1803     size_t array;
1804 };
1805 
1806 struct bool2____glsl_bool2__ValidationData
1807 {
1808     size_t validationWholeSize;
1809 };
1810 
1811 ParserError::ErrorType validate__glsl_bool2( const bool* value, size_t length );
1812 ParserError::ErrorType validate__glsl_bool2__stream( const bool* value, size_t length );
1813 ParserError::ErrorType validate__glsl_bool2__streamEnd( const bool* value, size_t length );
1814 
1815 struct bool3____glsl_bool3__ValidationData
1816 {
1817     size_t validationWholeSize;
1818 };
1819 
1820 ParserError::ErrorType validate__glsl_bool3( const bool* value, size_t length );
1821 ParserError::ErrorType validate__glsl_bool3__stream( const bool* value, size_t length );
1822 ParserError::ErrorType validate__glsl_bool3__streamEnd( const bool* value, size_t length );
1823 
1824 struct bool4____glsl_bool4__ValidationData
1825 {
1826     size_t validationWholeSize;
1827 };
1828 
1829 ParserError::ErrorType validate__glsl_bool4( const bool* value, size_t length );
1830 ParserError::ErrorType validate__glsl_bool4__stream( const bool* value, size_t length );
1831 ParserError::ErrorType validate__glsl_bool4__streamEnd( const bool* value, size_t length );
1832 
1833 struct float2____glsl_float2__ValidationData
1834 {
1835     size_t validationWholeSize;
1836 };
1837 
1838 ParserError::ErrorType validate__glsl_float2( const float* value, size_t length );
1839 ParserError::ErrorType validate__glsl_float2__stream( const float* value, size_t length );
1840 ParserError::ErrorType validate__glsl_float2__streamEnd( const float* value, size_t length );
1841 
1842 struct float3____glsl_float3__ValidationData
1843 {
1844     size_t validationWholeSize;
1845 };
1846 
1847 ParserError::ErrorType validate__glsl_float3( const float* value, size_t length );
1848 ParserError::ErrorType validate__glsl_float3__stream( const float* value, size_t length );
1849 ParserError::ErrorType validate__glsl_float3__streamEnd( const float* value, size_t length );
1850 
1851 struct float4____glsl_float4__ValidationData
1852 {
1853     size_t validationWholeSize;
1854 };
1855 
1856 ParserError::ErrorType validate__glsl_float4( const float* value, size_t length );
1857 ParserError::ErrorType validate__glsl_float4__stream( const float* value, size_t length );
1858 ParserError::ErrorType validate__glsl_float4__streamEnd( const float* value, size_t length );
1859 
1860 struct float2x2____glsl_float2x2__ValidationData
1861 {
1862     size_t validationWholeSize;
1863 };
1864 
1865 ParserError::ErrorType validate__glsl_float2x2( const float* value, size_t length );
1866 ParserError::ErrorType validate__glsl_float2x2__stream( const float* value, size_t length );
1867 ParserError::ErrorType validate__glsl_float2x2__streamEnd( const float* value, size_t length );
1868 
1869 struct float3x3____glsl_float3x3__ValidationData
1870 {
1871     size_t validationWholeSize;
1872 };
1873 
1874 ParserError::ErrorType validate__glsl_float3x3( const float* value, size_t length );
1875 ParserError::ErrorType validate__glsl_float3x3__stream( const float* value, size_t length );
1876 ParserError::ErrorType validate__glsl_float3x3__streamEnd( const float* value, size_t length );
1877 
1878 struct float4x4____glsl_float4x4__ValidationData
1879 {
1880     size_t validationWholeSize;
1881 };
1882 
1883 ParserError::ErrorType validate__glsl_float4x4( const float* value, size_t length );
1884 ParserError::ErrorType validate__glsl_float4x4__stream( const float* value, size_t length );
1885 ParserError::ErrorType validate__glsl_float4x4__streamEnd( const float* value, size_t length );
1886 
1887 ParserError::ErrorType validate__glsl_int( const sint32 value );
1888 
1889 struct int2____glsl_int2__ValidationData
1890 {
1891     size_t validationWholeSize;
1892 };
1893 
1894 ParserError::ErrorType validate__glsl_int2( const sint32* value, size_t length );
1895 ParserError::ErrorType validate__glsl_int2__stream( const sint32* value, size_t length );
1896 ParserError::ErrorType validate__glsl_int2__streamEnd( const sint32* value, size_t length );
1897 
1898 struct int3____glsl_int3__ValidationData
1899 {
1900     size_t validationWholeSize;
1901 };
1902 
1903 ParserError::ErrorType validate__glsl_int3( const sint32* value, size_t length );
1904 ParserError::ErrorType validate__glsl_int3__stream( const sint32* value, size_t length );
1905 ParserError::ErrorType validate__glsl_int3__streamEnd( const sint32* value, size_t length );
1906 
1907 struct int4____glsl_int4__ValidationData
1908 {
1909     size_t validationWholeSize;
1910 };
1911 
1912 ParserError::ErrorType validate__glsl_int4( const sint32* value, size_t length );
1913 ParserError::ErrorType validate__glsl_int4__stream( const sint32* value, size_t length );
1914 ParserError::ErrorType validate__glsl_int4__streamEnd( const sint32* value, size_t length );
1915 
1916 struct surface____glsl_surface_type__ValidationData
1917 {
1918     size_t validation_current_state;
1919     size_t init_as_null;
1920     size_t init_as_target;
1921     size_t init_cube;
1922     size_t init_volume;
1923     size_t init_planar;
1924     size_t init_from;
1925     size_t format;
1926     size_t format_hint;
1927     size_t size;
1928     size_t viewport_ratio;
1929     size_t mip_levels;
1930     size_t mipmap_generate;
1931     size_t extra;
1932     size_t generator;
1933 };
1934 
1935 struct glsl_surface_type____generator__ValidationData
1936 {
1937     size_t validation_current_state;
1938     size_t annotate;
1939     size_t code;
1940     size_t include;
1941     size_t name;
1942     size_t setparam;
1943 };
1944 
1945 struct setparam____glsl_setparam_simple__ValidationData
1946 {
1947     size_t validation_current_state;
1948     size_t annotate;
1949     size_t _bool;
1950     size_t bool2;
1951     size_t bool3;
1952     size_t bool4;
1953     size_t _float;
1954     size_t float2;
1955     size_t float3;
1956     size_t float4;
1957     size_t float2x2;
1958     size_t float3x3;
1959     size_t float4x4;
1960     size_t _int;
1961     size_t int2;
1962     size_t int3;
1963     size_t int4;
1964     size_t surface;
1965     size_t sampler1D;
1966     size_t sampler2D;
1967     size_t sampler3D;
1968     size_t samplerCUBE;
1969     size_t samplerRECT;
1970     size_t samplerDEPTH;
1971     size_t _enum;
1972 };
1973 
1974 struct sampler1D____gl_sampler1D__ValidationData
1975 {
1976     size_t source;
1977     size_t wrap_s;
1978     size_t minfilter;
1979     size_t magfilter;
1980     size_t mipfilter;
1981     size_t border_color;
1982     size_t mipmap_maxlevel;
1983     size_t mipmap_bias;
1984     size_t extra;
1985 };
1986 
1987 struct sampler2D____gl_sampler2D__ValidationData
1988 {
1989     size_t source;
1990     size_t wrap_s;
1991     size_t wrap_t;
1992     size_t minfilter;
1993     size_t magfilter;
1994     size_t mipfilter;
1995     size_t border_color;
1996     size_t mipmap_maxlevel;
1997     size_t mipmap_bias;
1998     size_t extra;
1999 };
2000 
2001 struct sampler3D____gl_sampler3D__ValidationData
2002 {
2003     size_t source;
2004     size_t wrap_s;
2005     size_t wrap_t;
2006     size_t wrap_p;
2007     size_t minfilter;
2008     size_t magfilter;
2009     size_t mipfilter;
2010     size_t border_color;
2011     size_t mipmap_maxlevel;
2012     size_t mipmap_bias;
2013     size_t extra;
2014 };
2015 
2016 struct samplerCUBE____gl_samplerCUBE__ValidationData
2017 {
2018     size_t source;
2019     size_t wrap_s;
2020     size_t wrap_t;
2021     size_t wrap_p;
2022     size_t minfilter;
2023     size_t magfilter;
2024     size_t mipfilter;
2025     size_t border_color;
2026     size_t mipmap_maxlevel;
2027     size_t mipmap_bias;
2028     size_t extra;
2029 };
2030 
2031 struct samplerRECT____gl_samplerRECT__ValidationData
2032 {
2033     size_t source;
2034     size_t wrap_s;
2035     size_t wrap_t;
2036     size_t minfilter;
2037     size_t magfilter;
2038     size_t mipfilter;
2039     size_t border_color;
2040     size_t mipmap_maxlevel;
2041     size_t mipmap_bias;
2042     size_t extra;
2043 };
2044 
2045 struct samplerDEPTH____gl_samplerDEPTH__ValidationData
2046 {
2047     size_t source;
2048     size_t wrap_s;
2049     size_t wrap_t;
2050     size_t minfilter;
2051     size_t magfilter;
2052     size_t extra;
2053 };
2054 
2055 ParserError::ErrorType validate__positiveInteger( const uint64 value );
2056 
2057 struct array____glsl_newarray_type__ValidationData
2058 {
2059     size_t validation_current_state;
2060     size_t _bool;
2061     size_t bool2;
2062     size_t bool3;
2063     size_t bool4;
2064     size_t _float;
2065     size_t float2;
2066     size_t float3;
2067     size_t float4;
2068     size_t float2x2;
2069     size_t float3x3;
2070     size_t float4x4;
2071     size_t _int;
2072     size_t int2;
2073     size_t int3;
2074     size_t int4;
2075     size_t surface;
2076     size_t sampler1D;
2077     size_t sampler2D;
2078     size_t sampler3D;
2079     size_t samplerCUBE;
2080     size_t samplerRECT;
2081     size_t samplerDEPTH;
2082     size_t _enum;
2083     size_t array;
2084 };
2085 
2086 struct profile_GLSL__technique__ValidationData
2087 {
2088     size_t validation_current_state;
2089     size_t annotate;
2090     size_t code;
2091     size_t include;
2092     size_t image;
2093     size_t newparam;
2094     size_t setparam;
2095     size_t pass;
2096     size_t extra;
2097 };
2098 
2099 struct setparam____glsl_setparam__ValidationData
2100 {
2101     size_t validation_current_state;
2102     size_t annotate;
2103     size_t _bool;
2104     size_t bool2;
2105     size_t bool3;
2106     size_t bool4;
2107     size_t _float;
2108     size_t float2;
2109     size_t float3;
2110     size_t float4;
2111     size_t float2x2;
2112     size_t float3x3;
2113     size_t float4x4;
2114     size_t _int;
2115     size_t int2;
2116     size_t int3;
2117     size_t int4;
2118     size_t surface;
2119     size_t sampler1D;
2120     size_t sampler2D;
2121     size_t sampler3D;
2122     size_t samplerCUBE;
2123     size_t samplerRECT;
2124     size_t samplerDEPTH;
2125     size_t _enum;
2126     size_t array;
2127 };
2128 
2129 struct array____glsl_setarray_type__ValidationData
2130 {
2131     size_t validation_current_state;
2132     size_t _bool;
2133     size_t bool2;
2134     size_t bool3;
2135     size_t bool4;
2136     size_t _float;
2137     size_t float2;
2138     size_t float3;
2139     size_t float4;
2140     size_t float2x2;
2141     size_t float3x3;
2142     size_t float4x4;
2143     size_t _int;
2144     size_t int2;
2145     size_t int3;
2146     size_t int4;
2147     size_t surface;
2148     size_t sampler1D;
2149     size_t sampler2D;
2150     size_t sampler3D;
2151     size_t samplerCUBE;
2152     size_t samplerRECT;
2153     size_t samplerDEPTH;
2154     size_t _enum;
2155     size_t array;
2156 };
2157 
2158 struct profile_GLSL__technique__pass__ValidationData
2159 {
2160     size_t validation_current_state;
2161     size_t annotate;
2162     size_t color_target;
2163     size_t depth_target;
2164     size_t stencil_target;
2165     size_t color_clear;
2166     size_t depth_clear;
2167     size_t stencil_clear;
2168     size_t draw;
2169     size_t alpha_func;
2170     size_t blend_func;
2171     size_t blend_func_separate;
2172     size_t blend_equation;
2173     size_t blend_equation_separate;
2174     size_t color_material;
2175     size_t cull_face;
2176     size_t depth_func;
2177     size_t fog_mode;
2178     size_t fog_coord_src;
2179     size_t front_face;
2180     size_t light_model_color_control;
2181     size_t logic_op;
2182     size_t polygon_mode;
2183     size_t shade_model;
2184     size_t stencil_func;
2185     size_t stencil_op;
2186     size_t stencil_func_separate;
2187     size_t stencil_op_separate;
2188     size_t stencil_mask_separate;
2189     size_t light_enable;
2190     size_t light_ambient;
2191     size_t light_diffuse;
2192     size_t light_specular;
2193     size_t light_position;
2194     size_t light_constant_attenuation;
2195     size_t light_linear_attenuation;
2196     size_t light_quadratic_attenuation;
2197     size_t light_spot_cutoff;
2198     size_t light_spot_direction;
2199     size_t light_spot_exponent;
2200     size_t texture1D;
2201     size_t texture2D;
2202     size_t texture3D;
2203     size_t textureCUBE;
2204     size_t textureRECT;
2205     size_t textureDEPTH;
2206     size_t texture1D_enable;
2207     size_t texture2D_enable;
2208     size_t texture3D_enable;
2209     size_t textureCUBE_enable;
2210     size_t textureRECT_enable;
2211     size_t textureDEPTH_enable;
2212     size_t texture_env_color;
2213     size_t texture_env_mode;
2214     size_t clip_plane;
2215     size_t clip_plane_enable;
2216     size_t blend_color;
2217     size_t clear_color;
2218     size_t clear_stencil;
2219     size_t clear_depth;
2220     size_t color_mask;
2221     size_t depth_bounds;
2222     size_t depth_mask;
2223     size_t depth_range;
2224     size_t fog_density;
2225     size_t fog_start;
2226     size_t fog_end;
2227     size_t fog_color;
2228     size_t light_model_ambient;
2229     size_t lighting_enable;
2230     size_t line_stipple;
2231     size_t line_width;
2232     size_t material_ambient;
2233     size_t material_diffuse;
2234     size_t material_emission;
2235     size_t material_shininess;
2236     size_t material_specular;
2237     size_t model_view_matrix;
2238     size_t point_distance_attenuation;
2239     size_t point_fade_threshold_size;
2240     size_t point_size;
2241     size_t point_size_min;
2242     size_t point_size_max;
2243     size_t polygon_offset;
2244     size_t projection_matrix;
2245     size_t scissor;
2246     size_t stencil_mask;
2247     size_t alpha_test_enable;
2248     size_t auto_normal_enable;
2249     size_t blend_enable;
2250     size_t color_logic_op_enable;
2251     size_t color_material_enable;
2252     size_t cull_face_enable;
2253     size_t depth_bounds_enable;
2254     size_t depth_clamp_enable;
2255     size_t depth_test_enable;
2256     size_t dither_enable;
2257     size_t fog_enable;
2258     size_t light_model_local_viewer_enable;
2259     size_t light_model_two_side_enable;
2260     size_t line_smooth_enable;
2261     size_t line_stipple_enable;
2262     size_t logic_op_enable;
2263     size_t multisample_enable;
2264     size_t normalize_enable;
2265     size_t point_smooth_enable;
2266     size_t polygon_offset_fill_enable;
2267     size_t polygon_offset_line_enable;
2268     size_t polygon_offset_point_enable;
2269     size_t polygon_smooth_enable;
2270     size_t polygon_stipple_enable;
2271     size_t rescale_normal_enable;
2272     size_t sample_alpha_to_coverage_enable;
2273     size_t sample_alpha_to_one_enable;
2274     size_t sample_coverage_enable;
2275     size_t scissor_test_enable;
2276     size_t stencil_test_enable;
2277     size_t gl_hook_abstract;
2278     size_t shader;
2279     size_t extra;
2280 };
2281 
2282 struct color_clear____fx_clearcolor_common__ValidationData
2283 {
2284     size_t validationWholeSize;
2285 };
2286 
2287 struct profile_GLSL__technique__pass__alpha_func__ValidationData
2288 {
2289     size_t func;
2290     size_t value;
2291 };
2292 
2293 struct profile_GLSL__technique__pass__blend_func__ValidationData
2294 {
2295     size_t src;
2296     size_t dest;
2297 };
2298 
2299 struct blend_func_separate__ValidationData
2300 {
2301     size_t src_rgb;
2302     size_t dest_rgb;
2303     size_t src_alpha;
2304     size_t dest_alpha;
2305 };
2306 
2307 ParserError::ErrorType validate__gl_blend_equation_type( ParserString value );
2308 ParserError::ErrorType validate__gl_blend_equation_type( const ParserChar* value, size_t length );
2309 ParserError::ErrorType validate__gl_blend_equation_type__stream( const ParserChar* value, size_t length );
2310 ParserError::ErrorType validate__gl_blend_equation_type__streamEnd( const ParserChar* value, size_t length );
2311 
2312 struct blend_equation_separate__ValidationData
2313 {
2314     size_t rgb;
2315     size_t alpha;
2316 };
2317 
2318 struct color_material__ValidationData
2319 {
2320     size_t face;
2321     size_t mode;
2322 };
2323 
2324 ParserError::ErrorType validate__gl_material_type( ParserString value );
2325 ParserError::ErrorType validate__gl_material_type( const ParserChar* value, size_t length );
2326 ParserError::ErrorType validate__gl_material_type__stream( const ParserChar* value, size_t length );
2327 ParserError::ErrorType validate__gl_material_type__streamEnd( const ParserChar* value, size_t length );
2328 
2329 ParserError::ErrorType validate__gl_fog_coord_src_type( ParserString value );
2330 ParserError::ErrorType validate__gl_fog_coord_src_type( const ParserChar* value, size_t length );
2331 ParserError::ErrorType validate__gl_fog_coord_src_type__stream( const ParserChar* value, size_t length );
2332 ParserError::ErrorType validate__gl_fog_coord_src_type__streamEnd( const ParserChar* value, size_t length );
2333 
2334 ParserError::ErrorType validate__gl_light_model_color_control_type( ParserString value );
2335 ParserError::ErrorType validate__gl_light_model_color_control_type( const ParserChar* value, size_t length );
2336 ParserError::ErrorType validate__gl_light_model_color_control_type__stream( const ParserChar* value, size_t length );
2337 ParserError::ErrorType validate__gl_light_model_color_control_type__streamEnd( const ParserChar* value, size_t length );
2338 
2339 struct polygon_mode__ValidationData
2340 {
2341     size_t face;
2342     size_t mode;
2343 };
2344 
2345 ParserError::ErrorType validate__gl_polygon_mode_type( ParserString value );
2346 ParserError::ErrorType validate__gl_polygon_mode_type( const ParserChar* value, size_t length );
2347 ParserError::ErrorType validate__gl_polygon_mode_type__stream( const ParserChar* value, size_t length );
2348 ParserError::ErrorType validate__gl_polygon_mode_type__streamEnd( const ParserChar* value, size_t length );
2349 
2350 struct profile_GLSL__technique__pass__stencil_func__ValidationData
2351 {
2352     size_t func;
2353     size_t ref;
2354     size_t mask;
2355 };
2356 
2357 struct profile_GLSL__technique__pass__stencil_op__ValidationData
2358 {
2359     size_t fail;
2360     size_t zfail;
2361     size_t zpass;
2362 };
2363 
2364 ParserError::ErrorType validate__gl_stencil_op_type( ParserString value );
2365 ParserError::ErrorType validate__gl_stencil_op_type( const ParserChar* value, size_t length );
2366 ParserError::ErrorType validate__gl_stencil_op_type__stream( const ParserChar* value, size_t length );
2367 ParserError::ErrorType validate__gl_stencil_op_type__streamEnd( const ParserChar* value, size_t length );
2368 
2369 struct stencil_func_separate__ValidationData
2370 {
2371     size_t front;
2372     size_t back;
2373     size_t ref;
2374     size_t mask;
2375 };
2376 
2377 struct stencil_op_separate__ValidationData
2378 {
2379     size_t face;
2380     size_t fail;
2381     size_t zfail;
2382     size_t zpass;
2383 };
2384 
2385 struct stencil_mask_separate__ValidationData
2386 {
2387     size_t face;
2388     size_t mask;
2389 };
2390 
2391 struct texture1D__ValidationData
2392 {
2393     size_t value;
2394     size_t param;
2395 };
2396 
2397 struct texture2D__ValidationData
2398 {
2399     size_t value;
2400     size_t param;
2401 };
2402 
2403 struct texture3D__ValidationData
2404 {
2405     size_t value;
2406     size_t param;
2407 };
2408 
2409 struct textureCUBE__ValidationData
2410 {
2411     size_t value;
2412     size_t param;
2413 };
2414 
2415 struct textureRECT__ValidationData
2416 {
2417     size_t value;
2418     size_t param;
2419 };
2420 
2421 struct textureDEPTH__ValidationData
2422 {
2423     size_t value;
2424     size_t param;
2425 };
2426 
2427 ParserError::ErrorType validate__glsl_pipeline_stage( ParserString value );
2428 ParserError::ErrorType validate__glsl_pipeline_stage( const ParserChar* value, size_t length );
2429 ParserError::ErrorType validate__glsl_pipeline_stage__stream( const ParserChar* value, size_t length );
2430 ParserError::ErrorType validate__glsl_pipeline_stage__streamEnd( const ParserChar* value, size_t length );
2431 
2432 struct profile_GLSL__technique__pass__shader__ValidationData
2433 {
2434     size_t validation_current_state;
2435     size_t annotate;
2436     size_t compiler_target;
2437     size_t compiler_options;
2438     size_t name;
2439     size_t bind;
2440 };
2441 
2442 struct profile_GLSL__technique__pass__shader__bind__ValidationData
2443 {
2444     size_t validation_current_state;
2445     size_t _bool;
2446     size_t bool2;
2447     size_t bool3;
2448     size_t bool4;
2449     size_t _float;
2450     size_t float2;
2451     size_t float3;
2452     size_t float4;
2453     size_t float2x2;
2454     size_t float3x3;
2455     size_t float4x4;
2456     size_t _int;
2457     size_t int2;
2458     size_t int3;
2459     size_t int4;
2460     size_t surface;
2461     size_t sampler1D;
2462     size_t sampler2D;
2463     size_t sampler3D;
2464     size_t samplerCUBE;
2465     size_t samplerRECT;
2466     size_t samplerDEPTH;
2467     size_t _enum;
2468     size_t param;
2469 };
2470 
2471 struct profile_CG__ValidationData
2472 {
2473     size_t validation_current_state;
2474     size_t asset;
2475     size_t code;
2476     size_t include;
2477     size_t image;
2478     size_t newparam;
2479     size_t technique;
2480     size_t extra;
2481 };
2482 
2483 struct newparam____cg_newparam__ValidationData
2484 {
2485     size_t validation_current_state;
2486     size_t annotate;
2487     size_t semantic;
2488     size_t modifier;
2489     size_t _bool;
2490     size_t bool1;
2491     size_t bool2;
2492     size_t bool3;
2493     size_t bool4;
2494     size_t bool1x1;
2495     size_t bool1x2;
2496     size_t bool1x3;
2497     size_t bool1x4;
2498     size_t bool2x1;
2499     size_t bool2x2;
2500     size_t bool2x3;
2501     size_t bool2x4;
2502     size_t bool3x1;
2503     size_t bool3x2;
2504     size_t bool3x3;
2505     size_t bool3x4;
2506     size_t bool4x1;
2507     size_t bool4x2;
2508     size_t bool4x3;
2509     size_t bool4x4;
2510     size_t _float;
2511     size_t float1;
2512     size_t float2;
2513     size_t float3;
2514     size_t float4;
2515     size_t float1x1;
2516     size_t float1x2;
2517     size_t float1x3;
2518     size_t float1x4;
2519     size_t float2x1;
2520     size_t float2x2;
2521     size_t float2x3;
2522     size_t float2x4;
2523     size_t float3x1;
2524     size_t float3x2;
2525     size_t float3x3;
2526     size_t float3x4;
2527     size_t float4x1;
2528     size_t float4x2;
2529     size_t float4x3;
2530     size_t float4x4;
2531     size_t _int;
2532     size_t int1;
2533     size_t int2;
2534     size_t int3;
2535     size_t int4;
2536     size_t int1x1;
2537     size_t int1x2;
2538     size_t int1x3;
2539     size_t int1x4;
2540     size_t int2x1;
2541     size_t int2x2;
2542     size_t int2x3;
2543     size_t int2x4;
2544     size_t int3x1;
2545     size_t int3x2;
2546     size_t int3x3;
2547     size_t int3x4;
2548     size_t int4x1;
2549     size_t int4x2;
2550     size_t int4x3;
2551     size_t int4x4;
2552     size_t half;
2553     size_t half1;
2554     size_t half2;
2555     size_t half3;
2556     size_t half4;
2557     size_t half1x1;
2558     size_t half1x2;
2559     size_t half1x3;
2560     size_t half1x4;
2561     size_t half2x1;
2562     size_t half2x2;
2563     size_t half2x3;
2564     size_t half2x4;
2565     size_t half3x1;
2566     size_t half3x2;
2567     size_t half3x3;
2568     size_t half3x4;
2569     size_t half4x1;
2570     size_t half4x2;
2571     size_t half4x3;
2572     size_t _half4x4;
2573     size_t fixed;
2574     size_t _fixed1;
2575     size_t fixed2;
2576     size_t fixed3;
2577     size_t fixed4;
2578     size_t fixed1x1;
2579     size_t fixed1x2;
2580     size_t fixed1x3;
2581     size_t fixed1x4;
2582     size_t fixed2x1;
2583     size_t fixed2x2;
2584     size_t fixed2x3;
2585     size_t fixed2x4;
2586     size_t fixed3x1;
2587     size_t fixed3x2;
2588     size_t fixed3x3;
2589     size_t fixed3x4;
2590     size_t fixed4x1;
2591     size_t fixed4x2;
2592     size_t fixed4x3;
2593     size_t fixed4x4;
2594     size_t surface;
2595     size_t sampler1D;
2596     size_t sampler2D;
2597     size_t sampler3D;
2598     size_t samplerRECT;
2599     size_t samplerCUBE;
2600     size_t samplerDEPTH;
2601     size_t string;
2602     size_t _enum;
2603     size_t usertype;
2604     size_t array;
2605 };
2606 
2607 struct bool2____cg_bool2__ValidationData
2608 {
2609     size_t validationWholeSize;
2610 };
2611 
2612 ParserError::ErrorType validate__cg_bool2( const bool* value, size_t length );
2613 ParserError::ErrorType validate__cg_bool2__stream( const bool* value, size_t length );
2614 ParserError::ErrorType validate__cg_bool2__streamEnd( const bool* value, size_t length );
2615 
2616 struct bool3____cg_bool3__ValidationData
2617 {
2618     size_t validationWholeSize;
2619 };
2620 
2621 ParserError::ErrorType validate__cg_bool3( const bool* value, size_t length );
2622 ParserError::ErrorType validate__cg_bool3__stream( const bool* value, size_t length );
2623 ParserError::ErrorType validate__cg_bool3__streamEnd( const bool* value, size_t length );
2624 
2625 struct bool4____cg_bool4__ValidationData
2626 {
2627     size_t validationWholeSize;
2628 };
2629 
2630 ParserError::ErrorType validate__cg_bool4( const bool* value, size_t length );
2631 ParserError::ErrorType validate__cg_bool4__stream( const bool* value, size_t length );
2632 ParserError::ErrorType validate__cg_bool4__streamEnd( const bool* value, size_t length );
2633 
2634 struct bool1x1__ValidationData
2635 {
2636     size_t validationWholeSize;
2637 };
2638 
2639 ParserError::ErrorType validate__cg_bool1x1( const bool* value, size_t length );
2640 ParserError::ErrorType validate__cg_bool1x1__stream( const bool* value, size_t length );
2641 ParserError::ErrorType validate__cg_bool1x1__streamEnd( const bool* value, size_t length );
2642 
2643 struct bool1x2__ValidationData
2644 {
2645     size_t validationWholeSize;
2646 };
2647 
2648 ParserError::ErrorType validate__cg_bool1x2( const bool* value, size_t length );
2649 ParserError::ErrorType validate__cg_bool1x2__stream( const bool* value, size_t length );
2650 ParserError::ErrorType validate__cg_bool1x2__streamEnd( const bool* value, size_t length );
2651 
2652 struct bool1x3__ValidationData
2653 {
2654     size_t validationWholeSize;
2655 };
2656 
2657 ParserError::ErrorType validate__cg_bool1x3( const bool* value, size_t length );
2658 ParserError::ErrorType validate__cg_bool1x3__stream( const bool* value, size_t length );
2659 ParserError::ErrorType validate__cg_bool1x3__streamEnd( const bool* value, size_t length );
2660 
2661 struct bool1x4__ValidationData
2662 {
2663     size_t validationWholeSize;
2664 };
2665 
2666 ParserError::ErrorType validate__cg_bool1x4( const bool* value, size_t length );
2667 ParserError::ErrorType validate__cg_bool1x4__stream( const bool* value, size_t length );
2668 ParserError::ErrorType validate__cg_bool1x4__streamEnd( const bool* value, size_t length );
2669 
2670 struct bool2x1__ValidationData
2671 {
2672     size_t validationWholeSize;
2673 };
2674 
2675 ParserError::ErrorType validate__cg_bool2x1( const bool* value, size_t length );
2676 ParserError::ErrorType validate__cg_bool2x1__stream( const bool* value, size_t length );
2677 ParserError::ErrorType validate__cg_bool2x1__streamEnd( const bool* value, size_t length );
2678 
2679 struct bool2x2__ValidationData
2680 {
2681     size_t validationWholeSize;
2682 };
2683 
2684 ParserError::ErrorType validate__cg_bool2x2( const bool* value, size_t length );
2685 ParserError::ErrorType validate__cg_bool2x2__stream( const bool* value, size_t length );
2686 ParserError::ErrorType validate__cg_bool2x2__streamEnd( const bool* value, size_t length );
2687 
2688 struct bool2x3__ValidationData
2689 {
2690     size_t validationWholeSize;
2691 };
2692 
2693 ParserError::ErrorType validate__cg_bool2x3( const bool* value, size_t length );
2694 ParserError::ErrorType validate__cg_bool2x3__stream( const bool* value, size_t length );
2695 ParserError::ErrorType validate__cg_bool2x3__streamEnd( const bool* value, size_t length );
2696 
2697 struct bool2x4__ValidationData
2698 {
2699     size_t validationWholeSize;
2700 };
2701 
2702 ParserError::ErrorType validate__cg_bool2x4( const bool* value, size_t length );
2703 ParserError::ErrorType validate__cg_bool2x4__stream( const bool* value, size_t length );
2704 ParserError::ErrorType validate__cg_bool2x4__streamEnd( const bool* value, size_t length );
2705 
2706 struct bool3x1__ValidationData
2707 {
2708     size_t validationWholeSize;
2709 };
2710 
2711 ParserError::ErrorType validate__cg_bool3x1( const bool* value, size_t length );
2712 ParserError::ErrorType validate__cg_bool3x1__stream( const bool* value, size_t length );
2713 ParserError::ErrorType validate__cg_bool3x1__streamEnd( const bool* value, size_t length );
2714 
2715 struct bool3x2__ValidationData
2716 {
2717     size_t validationWholeSize;
2718 };
2719 
2720 ParserError::ErrorType validate__cg_bool3x2( const bool* value, size_t length );
2721 ParserError::ErrorType validate__cg_bool3x2__stream( const bool* value, size_t length );
2722 ParserError::ErrorType validate__cg_bool3x2__streamEnd( const bool* value, size_t length );
2723 
2724 struct bool3x3__ValidationData
2725 {
2726     size_t validationWholeSize;
2727 };
2728 
2729 ParserError::ErrorType validate__cg_bool3x3( const bool* value, size_t length );
2730 ParserError::ErrorType validate__cg_bool3x3__stream( const bool* value, size_t length );
2731 ParserError::ErrorType validate__cg_bool3x3__streamEnd( const bool* value, size_t length );
2732 
2733 struct bool3x4__ValidationData
2734 {
2735     size_t validationWholeSize;
2736 };
2737 
2738 ParserError::ErrorType validate__cg_bool3x4( const bool* value, size_t length );
2739 ParserError::ErrorType validate__cg_bool3x4__stream( const bool* value, size_t length );
2740 ParserError::ErrorType validate__cg_bool3x4__streamEnd( const bool* value, size_t length );
2741 
2742 struct bool4x1__ValidationData
2743 {
2744     size_t validationWholeSize;
2745 };
2746 
2747 ParserError::ErrorType validate__cg_bool4x1( const bool* value, size_t length );
2748 ParserError::ErrorType validate__cg_bool4x1__stream( const bool* value, size_t length );
2749 ParserError::ErrorType validate__cg_bool4x1__streamEnd( const bool* value, size_t length );
2750 
2751 struct bool4x2__ValidationData
2752 {
2753     size_t validationWholeSize;
2754 };
2755 
2756 ParserError::ErrorType validate__cg_bool4x2( const bool* value, size_t length );
2757 ParserError::ErrorType validate__cg_bool4x2__stream( const bool* value, size_t length );
2758 ParserError::ErrorType validate__cg_bool4x2__streamEnd( const bool* value, size_t length );
2759 
2760 struct bool4x3__ValidationData
2761 {
2762     size_t validationWholeSize;
2763 };
2764 
2765 ParserError::ErrorType validate__cg_bool4x3( const bool* value, size_t length );
2766 ParserError::ErrorType validate__cg_bool4x3__stream( const bool* value, size_t length );
2767 ParserError::ErrorType validate__cg_bool4x3__streamEnd( const bool* value, size_t length );
2768 
2769 struct bool4x4__ValidationData
2770 {
2771     size_t validationWholeSize;
2772 };
2773 
2774 ParserError::ErrorType validate__cg_bool4x4( const bool* value, size_t length );
2775 ParserError::ErrorType validate__cg_bool4x4__stream( const bool* value, size_t length );
2776 ParserError::ErrorType validate__cg_bool4x4__streamEnd( const bool* value, size_t length );
2777 
2778 struct float2____cg_float2__ValidationData
2779 {
2780     size_t validationWholeSize;
2781 };
2782 
2783 ParserError::ErrorType validate__cg_float2( const float* value, size_t length );
2784 ParserError::ErrorType validate__cg_float2__stream( const float* value, size_t length );
2785 ParserError::ErrorType validate__cg_float2__streamEnd( const float* value, size_t length );
2786 
2787 struct float3____cg_float3__ValidationData
2788 {
2789     size_t validationWholeSize;
2790 };
2791 
2792 ParserError::ErrorType validate__cg_float3( const float* value, size_t length );
2793 ParserError::ErrorType validate__cg_float3__stream( const float* value, size_t length );
2794 ParserError::ErrorType validate__cg_float3__streamEnd( const float* value, size_t length );
2795 
2796 struct float4____cg_float4__ValidationData
2797 {
2798     size_t validationWholeSize;
2799 };
2800 
2801 ParserError::ErrorType validate__cg_float4( const float* value, size_t length );
2802 ParserError::ErrorType validate__cg_float4__stream( const float* value, size_t length );
2803 ParserError::ErrorType validate__cg_float4__streamEnd( const float* value, size_t length );
2804 
2805 struct float1x1____cg_float1x1__ValidationData
2806 {
2807     size_t validationWholeSize;
2808 };
2809 
2810 ParserError::ErrorType validate__cg_float1x1( const float* value, size_t length );
2811 ParserError::ErrorType validate__cg_float1x1__stream( const float* value, size_t length );
2812 ParserError::ErrorType validate__cg_float1x1__streamEnd( const float* value, size_t length );
2813 
2814 struct float1x2____cg_float1x2__ValidationData
2815 {
2816     size_t validationWholeSize;
2817 };
2818 
2819 ParserError::ErrorType validate__cg_float1x2( const float* value, size_t length );
2820 ParserError::ErrorType validate__cg_float1x2__stream( const float* value, size_t length );
2821 ParserError::ErrorType validate__cg_float1x2__streamEnd( const float* value, size_t length );
2822 
2823 struct float1x3____cg_float1x3__ValidationData
2824 {
2825     size_t validationWholeSize;
2826 };
2827 
2828 ParserError::ErrorType validate__cg_float1x3( const float* value, size_t length );
2829 ParserError::ErrorType validate__cg_float1x3__stream( const float* value, size_t length );
2830 ParserError::ErrorType validate__cg_float1x3__streamEnd( const float* value, size_t length );
2831 
2832 struct float1x4____cg_float1x4__ValidationData
2833 {
2834     size_t validationWholeSize;
2835 };
2836 
2837 ParserError::ErrorType validate__cg_float1x4( const float* value, size_t length );
2838 ParserError::ErrorType validate__cg_float1x4__stream( const float* value, size_t length );
2839 ParserError::ErrorType validate__cg_float1x4__streamEnd( const float* value, size_t length );
2840 
2841 struct float2x1____cg_float2x1__ValidationData
2842 {
2843     size_t validationWholeSize;
2844 };
2845 
2846 ParserError::ErrorType validate__cg_float2x1( const float* value, size_t length );
2847 ParserError::ErrorType validate__cg_float2x1__stream( const float* value, size_t length );
2848 ParserError::ErrorType validate__cg_float2x1__streamEnd( const float* value, size_t length );
2849 
2850 struct float2x2____cg_float2x2__ValidationData
2851 {
2852     size_t validationWholeSize;
2853 };
2854 
2855 ParserError::ErrorType validate__cg_float2x2( const float* value, size_t length );
2856 ParserError::ErrorType validate__cg_float2x2__stream( const float* value, size_t length );
2857 ParserError::ErrorType validate__cg_float2x2__streamEnd( const float* value, size_t length );
2858 
2859 struct float2x3____cg_float2x3__ValidationData
2860 {
2861     size_t validationWholeSize;
2862 };
2863 
2864 ParserError::ErrorType validate__cg_float2x3( const float* value, size_t length );
2865 ParserError::ErrorType validate__cg_float2x3__stream( const float* value, size_t length );
2866 ParserError::ErrorType validate__cg_float2x3__streamEnd( const float* value, size_t length );
2867 
2868 struct float2x4____cg_float2x4__ValidationData
2869 {
2870     size_t validationWholeSize;
2871 };
2872 
2873 ParserError::ErrorType validate__cg_float2x4( const float* value, size_t length );
2874 ParserError::ErrorType validate__cg_float2x4__stream( const float* value, size_t length );
2875 ParserError::ErrorType validate__cg_float2x4__streamEnd( const float* value, size_t length );
2876 
2877 struct float3x1____cg_float3x1__ValidationData
2878 {
2879     size_t validationWholeSize;
2880 };
2881 
2882 ParserError::ErrorType validate__cg_float3x1( const float* value, size_t length );
2883 ParserError::ErrorType validate__cg_float3x1__stream( const float* value, size_t length );
2884 ParserError::ErrorType validate__cg_float3x1__streamEnd( const float* value, size_t length );
2885 
2886 struct float3x2____cg_float3x2__ValidationData
2887 {
2888     size_t validationWholeSize;
2889 };
2890 
2891 ParserError::ErrorType validate__cg_float3x2( const float* value, size_t length );
2892 ParserError::ErrorType validate__cg_float3x2__stream( const float* value, size_t length );
2893 ParserError::ErrorType validate__cg_float3x2__streamEnd( const float* value, size_t length );
2894 
2895 struct float3x3____cg_float3x3__ValidationData
2896 {
2897     size_t validationWholeSize;
2898 };
2899 
2900 ParserError::ErrorType validate__cg_float3x3( const float* value, size_t length );
2901 ParserError::ErrorType validate__cg_float3x3__stream( const float* value, size_t length );
2902 ParserError::ErrorType validate__cg_float3x3__streamEnd( const float* value, size_t length );
2903 
2904 struct float3x4____cg_float3x4__ValidationData
2905 {
2906     size_t validationWholeSize;
2907 };
2908 
2909 ParserError::ErrorType validate__cg_float3x4( const float* value, size_t length );
2910 ParserError::ErrorType validate__cg_float3x4__stream( const float* value, size_t length );
2911 ParserError::ErrorType validate__cg_float3x4__streamEnd( const float* value, size_t length );
2912 
2913 struct float4x1____cg_float4x1__ValidationData
2914 {
2915     size_t validationWholeSize;
2916 };
2917 
2918 ParserError::ErrorType validate__cg_float4x1( const float* value, size_t length );
2919 ParserError::ErrorType validate__cg_float4x1__stream( const float* value, size_t length );
2920 ParserError::ErrorType validate__cg_float4x1__streamEnd( const float* value, size_t length );
2921 
2922 struct float4x2____cg_float4x2__ValidationData
2923 {
2924     size_t validationWholeSize;
2925 };
2926 
2927 ParserError::ErrorType validate__cg_float4x2( const float* value, size_t length );
2928 ParserError::ErrorType validate__cg_float4x2__stream( const float* value, size_t length );
2929 ParserError::ErrorType validate__cg_float4x2__streamEnd( const float* value, size_t length );
2930 
2931 struct float4x3____cg_float4x3__ValidationData
2932 {
2933     size_t validationWholeSize;
2934 };
2935 
2936 ParserError::ErrorType validate__cg_float4x3( const float* value, size_t length );
2937 ParserError::ErrorType validate__cg_float4x3__stream( const float* value, size_t length );
2938 ParserError::ErrorType validate__cg_float4x3__streamEnd( const float* value, size_t length );
2939 
2940 struct float4x4____cg_float4x4__ValidationData
2941 {
2942     size_t validationWholeSize;
2943 };
2944 
2945 ParserError::ErrorType validate__cg_float4x4( const float* value, size_t length );
2946 ParserError::ErrorType validate__cg_float4x4__stream( const float* value, size_t length );
2947 ParserError::ErrorType validate__cg_float4x4__streamEnd( const float* value, size_t length );
2948 
2949 ParserError::ErrorType validate__cg_int( const sint32 value );
2950 
2951 ParserError::ErrorType validate__cg_int1( const sint32 value );
2952 
2953 struct int2____cg_int2__ValidationData
2954 {
2955     size_t validationWholeSize;
2956 };
2957 
2958 ParserError::ErrorType validate__cg_int2( const sint32* value, size_t length );
2959 ParserError::ErrorType validate__cg_int2__stream( const sint32* value, size_t length );
2960 ParserError::ErrorType validate__cg_int2__streamEnd( const sint32* value, size_t length );
2961 
2962 struct int3____cg_int3__ValidationData
2963 {
2964     size_t validationWholeSize;
2965 };
2966 
2967 ParserError::ErrorType validate__cg_int3( const sint32* value, size_t length );
2968 ParserError::ErrorType validate__cg_int3__stream( const sint32* value, size_t length );
2969 ParserError::ErrorType validate__cg_int3__streamEnd( const sint32* value, size_t length );
2970 
2971 struct int4____cg_int4__ValidationData
2972 {
2973     size_t validationWholeSize;
2974 };
2975 
2976 ParserError::ErrorType validate__cg_int4( const sint32* value, size_t length );
2977 ParserError::ErrorType validate__cg_int4__stream( const sint32* value, size_t length );
2978 ParserError::ErrorType validate__cg_int4__streamEnd( const sint32* value, size_t length );
2979 
2980 struct int1x1__ValidationData
2981 {
2982     size_t validationWholeSize;
2983 };
2984 
2985 ParserError::ErrorType validate__cg_int1x1( const sint32* value, size_t length );
2986 ParserError::ErrorType validate__cg_int1x1__stream( const sint32* value, size_t length );
2987 ParserError::ErrorType validate__cg_int1x1__streamEnd( const sint32* value, size_t length );
2988 
2989 struct int1x2__ValidationData
2990 {
2991     size_t validationWholeSize;
2992 };
2993 
2994 ParserError::ErrorType validate__cg_int1x2( const sint32* value, size_t length );
2995 ParserError::ErrorType validate__cg_int1x2__stream( const sint32* value, size_t length );
2996 ParserError::ErrorType validate__cg_int1x2__streamEnd( const sint32* value, size_t length );
2997 
2998 struct int1x3__ValidationData
2999 {
3000     size_t validationWholeSize;
3001 };
3002 
3003 ParserError::ErrorType validate__cg_int1x3( const sint32* value, size_t length );
3004 ParserError::ErrorType validate__cg_int1x3__stream( const sint32* value, size_t length );
3005 ParserError::ErrorType validate__cg_int1x3__streamEnd( const sint32* value, size_t length );
3006 
3007 struct int1x4__ValidationData
3008 {
3009     size_t validationWholeSize;
3010 };
3011 
3012 ParserError::ErrorType validate__cg_int1x4( const sint32* value, size_t length );
3013 ParserError::ErrorType validate__cg_int1x4__stream( const sint32* value, size_t length );
3014 ParserError::ErrorType validate__cg_int1x4__streamEnd( const sint32* value, size_t length );
3015 
3016 struct int2x1__ValidationData
3017 {
3018     size_t validationWholeSize;
3019 };
3020 
3021 ParserError::ErrorType validate__cg_int2x1( const sint32* value, size_t length );
3022 ParserError::ErrorType validate__cg_int2x1__stream( const sint32* value, size_t length );
3023 ParserError::ErrorType validate__cg_int2x1__streamEnd( const sint32* value, size_t length );
3024 
3025 struct int2x2__ValidationData
3026 {
3027     size_t validationWholeSize;
3028 };
3029 
3030 ParserError::ErrorType validate__cg_int2x2( const sint32* value, size_t length );
3031 ParserError::ErrorType validate__cg_int2x2__stream( const sint32* value, size_t length );
3032 ParserError::ErrorType validate__cg_int2x2__streamEnd( const sint32* value, size_t length );
3033 
3034 struct int2x3__ValidationData
3035 {
3036     size_t validationWholeSize;
3037 };
3038 
3039 ParserError::ErrorType validate__cg_int2x3( const sint32* value, size_t length );
3040 ParserError::ErrorType validate__cg_int2x3__stream( const sint32* value, size_t length );
3041 ParserError::ErrorType validate__cg_int2x3__streamEnd( const sint32* value, size_t length );
3042 
3043 struct int2x4__ValidationData
3044 {
3045     size_t validationWholeSize;
3046 };
3047 
3048 ParserError::ErrorType validate__cg_int2x4( const sint32* value, size_t length );
3049 ParserError::ErrorType validate__cg_int2x4__stream( const sint32* value, size_t length );
3050 ParserError::ErrorType validate__cg_int2x4__streamEnd( const sint32* value, size_t length );
3051 
3052 struct int3x1__ValidationData
3053 {
3054     size_t validationWholeSize;
3055 };
3056 
3057 ParserError::ErrorType validate__cg_int3x1( const sint32* value, size_t length );
3058 ParserError::ErrorType validate__cg_int3x1__stream( const sint32* value, size_t length );
3059 ParserError::ErrorType validate__cg_int3x1__streamEnd( const sint32* value, size_t length );
3060 
3061 struct int3x2__ValidationData
3062 {
3063     size_t validationWholeSize;
3064 };
3065 
3066 ParserError::ErrorType validate__cg_int3x2( const sint32* value, size_t length );
3067 ParserError::ErrorType validate__cg_int3x2__stream( const sint32* value, size_t length );
3068 ParserError::ErrorType validate__cg_int3x2__streamEnd( const sint32* value, size_t length );
3069 
3070 struct int3x3__ValidationData
3071 {
3072     size_t validationWholeSize;
3073 };
3074 
3075 ParserError::ErrorType validate__cg_int3x3( const sint32* value, size_t length );
3076 ParserError::ErrorType validate__cg_int3x3__stream( const sint32* value, size_t length );
3077 ParserError::ErrorType validate__cg_int3x3__streamEnd( const sint32* value, size_t length );
3078 
3079 struct int3x4__ValidationData
3080 {
3081     size_t validationWholeSize;
3082 };
3083 
3084 ParserError::ErrorType validate__cg_int3x4( const sint32* value, size_t length );
3085 ParserError::ErrorType validate__cg_int3x4__stream( const sint32* value, size_t length );
3086 ParserError::ErrorType validate__cg_int3x4__streamEnd( const sint32* value, size_t length );
3087 
3088 struct int4x1__ValidationData
3089 {
3090     size_t validationWholeSize;
3091 };
3092 
3093 ParserError::ErrorType validate__cg_int4x1( const sint32* value, size_t length );
3094 ParserError::ErrorType validate__cg_int4x1__stream( const sint32* value, size_t length );
3095 ParserError::ErrorType validate__cg_int4x1__streamEnd( const sint32* value, size_t length );
3096 
3097 struct int4x2__ValidationData
3098 {
3099     size_t validationWholeSize;
3100 };
3101 
3102 ParserError::ErrorType validate__cg_int4x2( const sint32* value, size_t length );
3103 ParserError::ErrorType validate__cg_int4x2__stream( const sint32* value, size_t length );
3104 ParserError::ErrorType validate__cg_int4x2__streamEnd( const sint32* value, size_t length );
3105 
3106 struct int4x3__ValidationData
3107 {
3108     size_t validationWholeSize;
3109 };
3110 
3111 ParserError::ErrorType validate__cg_int4x3( const sint32* value, size_t length );
3112 ParserError::ErrorType validate__cg_int4x3__stream( const sint32* value, size_t length );
3113 ParserError::ErrorType validate__cg_int4x3__streamEnd( const sint32* value, size_t length );
3114 
3115 struct int4x4__ValidationData
3116 {
3117     size_t validationWholeSize;
3118 };
3119 
3120 ParserError::ErrorType validate__cg_int4x4( const sint32* value, size_t length );
3121 ParserError::ErrorType validate__cg_int4x4__stream( const sint32* value, size_t length );
3122 ParserError::ErrorType validate__cg_int4x4__streamEnd( const sint32* value, size_t length );
3123 
3124 struct half2__ValidationData
3125 {
3126     size_t validationWholeSize;
3127 };
3128 
3129 ParserError::ErrorType validate__cg_half2( const float* value, size_t length );
3130 ParserError::ErrorType validate__cg_half2__stream( const float* value, size_t length );
3131 ParserError::ErrorType validate__cg_half2__streamEnd( const float* value, size_t length );
3132 
3133 struct half3__ValidationData
3134 {
3135     size_t validationWholeSize;
3136 };
3137 
3138 ParserError::ErrorType validate__cg_half3( const float* value, size_t length );
3139 ParserError::ErrorType validate__cg_half3__stream( const float* value, size_t length );
3140 ParserError::ErrorType validate__cg_half3__streamEnd( const float* value, size_t length );
3141 
3142 struct half4__ValidationData
3143 {
3144     size_t validationWholeSize;
3145 };
3146 
3147 ParserError::ErrorType validate__cg_half4( const float* value, size_t length );
3148 ParserError::ErrorType validate__cg_half4__stream( const float* value, size_t length );
3149 ParserError::ErrorType validate__cg_half4__streamEnd( const float* value, size_t length );
3150 
3151 struct half1x1__ValidationData
3152 {
3153     size_t validationWholeSize;
3154 };
3155 
3156 ParserError::ErrorType validate__cg_half1x1( const float* value, size_t length );
3157 ParserError::ErrorType validate__cg_half1x1__stream( const float* value, size_t length );
3158 ParserError::ErrorType validate__cg_half1x1__streamEnd( const float* value, size_t length );
3159 
3160 struct half1x2__ValidationData
3161 {
3162     size_t validationWholeSize;
3163 };
3164 
3165 ParserError::ErrorType validate__cg_half1x2( const float* value, size_t length );
3166 ParserError::ErrorType validate__cg_half1x2__stream( const float* value, size_t length );
3167 ParserError::ErrorType validate__cg_half1x2__streamEnd( const float* value, size_t length );
3168 
3169 struct half1x3__ValidationData
3170 {
3171     size_t validationWholeSize;
3172 };
3173 
3174 ParserError::ErrorType validate__cg_half1x3( const float* value, size_t length );
3175 ParserError::ErrorType validate__cg_half1x3__stream( const float* value, size_t length );
3176 ParserError::ErrorType validate__cg_half1x3__streamEnd( const float* value, size_t length );
3177 
3178 struct half1x4__ValidationData
3179 {
3180     size_t validationWholeSize;
3181 };
3182 
3183 ParserError::ErrorType validate__cg_half1x4( const float* value, size_t length );
3184 ParserError::ErrorType validate__cg_half1x4__stream( const float* value, size_t length );
3185 ParserError::ErrorType validate__cg_half1x4__streamEnd( const float* value, size_t length );
3186 
3187 struct half2x1__ValidationData
3188 {
3189     size_t validationWholeSize;
3190 };
3191 
3192 ParserError::ErrorType validate__cg_half2x1( const float* value, size_t length );
3193 ParserError::ErrorType validate__cg_half2x1__stream( const float* value, size_t length );
3194 ParserError::ErrorType validate__cg_half2x1__streamEnd( const float* value, size_t length );
3195 
3196 struct half2x2__ValidationData
3197 {
3198     size_t validationWholeSize;
3199 };
3200 
3201 ParserError::ErrorType validate__cg_half2x2( const float* value, size_t length );
3202 ParserError::ErrorType validate__cg_half2x2__stream( const float* value, size_t length );
3203 ParserError::ErrorType validate__cg_half2x2__streamEnd( const float* value, size_t length );
3204 
3205 struct half2x3__ValidationData
3206 {
3207     size_t validationWholeSize;
3208 };
3209 
3210 ParserError::ErrorType validate__cg_half2x3( const float* value, size_t length );
3211 ParserError::ErrorType validate__cg_half2x3__stream( const float* value, size_t length );
3212 ParserError::ErrorType validate__cg_half2x3__streamEnd( const float* value, size_t length );
3213 
3214 struct half2x4__ValidationData
3215 {
3216     size_t validationWholeSize;
3217 };
3218 
3219 ParserError::ErrorType validate__cg_half2x4( const float* value, size_t length );
3220 ParserError::ErrorType validate__cg_half2x4__stream( const float* value, size_t length );
3221 ParserError::ErrorType validate__cg_half2x4__streamEnd( const float* value, size_t length );
3222 
3223 struct half3x1__ValidationData
3224 {
3225     size_t validationWholeSize;
3226 };
3227 
3228 ParserError::ErrorType validate__cg_half3x1( const float* value, size_t length );
3229 ParserError::ErrorType validate__cg_half3x1__stream( const float* value, size_t length );
3230 ParserError::ErrorType validate__cg_half3x1__streamEnd( const float* value, size_t length );
3231 
3232 struct half3x2__ValidationData
3233 {
3234     size_t validationWholeSize;
3235 };
3236 
3237 ParserError::ErrorType validate__cg_half3x2( const float* value, size_t length );
3238 ParserError::ErrorType validate__cg_half3x2__stream( const float* value, size_t length );
3239 ParserError::ErrorType validate__cg_half3x2__streamEnd( const float* value, size_t length );
3240 
3241 struct half3x3__ValidationData
3242 {
3243     size_t validationWholeSize;
3244 };
3245 
3246 ParserError::ErrorType validate__cg_half3x3( const float* value, size_t length );
3247 ParserError::ErrorType validate__cg_half3x3__stream( const float* value, size_t length );
3248 ParserError::ErrorType validate__cg_half3x3__streamEnd( const float* value, size_t length );
3249 
3250 struct half3x4__ValidationData
3251 {
3252     size_t validationWholeSize;
3253 };
3254 
3255 ParserError::ErrorType validate__cg_half3x4( const float* value, size_t length );
3256 ParserError::ErrorType validate__cg_half3x4__stream( const float* value, size_t length );
3257 ParserError::ErrorType validate__cg_half3x4__streamEnd( const float* value, size_t length );
3258 
3259 struct half4x1__ValidationData
3260 {
3261     size_t validationWholeSize;
3262 };
3263 
3264 ParserError::ErrorType validate__cg_half4x1( const float* value, size_t length );
3265 ParserError::ErrorType validate__cg_half4x1__stream( const float* value, size_t length );
3266 ParserError::ErrorType validate__cg_half4x1__streamEnd( const float* value, size_t length );
3267 
3268 struct half4x2__ValidationData
3269 {
3270     size_t validationWholeSize;
3271 };
3272 
3273 ParserError::ErrorType validate__cg_half4x2( const float* value, size_t length );
3274 ParserError::ErrorType validate__cg_half4x2__stream( const float* value, size_t length );
3275 ParserError::ErrorType validate__cg_half4x2__streamEnd( const float* value, size_t length );
3276 
3277 struct half4x3__ValidationData
3278 {
3279     size_t validationWholeSize;
3280 };
3281 
3282 ParserError::ErrorType validate__cg_half4x3( const float* value, size_t length );
3283 ParserError::ErrorType validate__cg_half4x3__stream( const float* value, size_t length );
3284 ParserError::ErrorType validate__cg_half4x3__streamEnd( const float* value, size_t length );
3285 
3286 struct half4x4__ValidationData
3287 {
3288     size_t validationWholeSize;
3289 };
3290 
3291 ParserError::ErrorType validate__cg_half4x4( const float* value, size_t length );
3292 ParserError::ErrorType validate__cg_half4x4__stream( const float* value, size_t length );
3293 ParserError::ErrorType validate__cg_half4x4__streamEnd( const float* value, size_t length );
3294 
3295 ParserError::ErrorType validate__cg_fixed( const float value );
3296 
3297 ParserError::ErrorType validate__cg_fixed1( const float value );
3298 
3299 struct fixed2__ValidationData
3300 {
3301     size_t validationWholeSize;
3302 };
3303 
3304 ParserError::ErrorType validate__cg_fixed2( const float* value, size_t length );
3305 ParserError::ErrorType validate__cg_fixed2__stream( const float* value, size_t length );
3306 ParserError::ErrorType validate__cg_fixed2__streamEnd( const float* value, size_t length );
3307 
3308 struct fixed3__ValidationData
3309 {
3310     size_t validationWholeSize;
3311 };
3312 
3313 ParserError::ErrorType validate__cg_fixed3( const float* value, size_t length );
3314 ParserError::ErrorType validate__cg_fixed3__stream( const float* value, size_t length );
3315 ParserError::ErrorType validate__cg_fixed3__streamEnd( const float* value, size_t length );
3316 
3317 struct fixed4__ValidationData
3318 {
3319     size_t validationWholeSize;
3320 };
3321 
3322 ParserError::ErrorType validate__cg_fixed4( const float* value, size_t length );
3323 ParserError::ErrorType validate__cg_fixed4__stream( const float* value, size_t length );
3324 ParserError::ErrorType validate__cg_fixed4__streamEnd( const float* value, size_t length );
3325 
3326 struct fixed1x1__ValidationData
3327 {
3328     size_t validationWholeSize;
3329 };
3330 
3331 ParserError::ErrorType validate__cg_fixed1x1( const float* value, size_t length );
3332 ParserError::ErrorType validate__cg_fixed1x1__stream( const float* value, size_t length );
3333 ParserError::ErrorType validate__cg_fixed1x1__streamEnd( const float* value, size_t length );
3334 
3335 struct fixed1x2__ValidationData
3336 {
3337     size_t validationWholeSize;
3338 };
3339 
3340 ParserError::ErrorType validate__cg_fixed1x2( const float* value, size_t length );
3341 ParserError::ErrorType validate__cg_fixed1x2__stream( const float* value, size_t length );
3342 ParserError::ErrorType validate__cg_fixed1x2__streamEnd( const float* value, size_t length );
3343 
3344 struct fixed1x3__ValidationData
3345 {
3346     size_t validationWholeSize;
3347 };
3348 
3349 ParserError::ErrorType validate__cg_fixed1x3( const float* value, size_t length );
3350 ParserError::ErrorType validate__cg_fixed1x3__stream( const float* value, size_t length );
3351 ParserError::ErrorType validate__cg_fixed1x3__streamEnd( const float* value, size_t length );
3352 
3353 struct fixed1x4__ValidationData
3354 {
3355     size_t validationWholeSize;
3356 };
3357 
3358 ParserError::ErrorType validate__cg_fixed1x4( const float* value, size_t length );
3359 ParserError::ErrorType validate__cg_fixed1x4__stream( const float* value, size_t length );
3360 ParserError::ErrorType validate__cg_fixed1x4__streamEnd( const float* value, size_t length );
3361 
3362 struct fixed2x1__ValidationData
3363 {
3364     size_t validationWholeSize;
3365 };
3366 
3367 ParserError::ErrorType validate__cg_fixed2x1( const float* value, size_t length );
3368 ParserError::ErrorType validate__cg_fixed2x1__stream( const float* value, size_t length );
3369 ParserError::ErrorType validate__cg_fixed2x1__streamEnd( const float* value, size_t length );
3370 
3371 struct fixed2x2__ValidationData
3372 {
3373     size_t validationWholeSize;
3374 };
3375 
3376 ParserError::ErrorType validate__cg_fixed2x2( const float* value, size_t length );
3377 ParserError::ErrorType validate__cg_fixed2x2__stream( const float* value, size_t length );
3378 ParserError::ErrorType validate__cg_fixed2x2__streamEnd( const float* value, size_t length );
3379 
3380 struct fixed2x3__ValidationData
3381 {
3382     size_t validationWholeSize;
3383 };
3384 
3385 ParserError::ErrorType validate__cg_fixed2x3( const float* value, size_t length );
3386 ParserError::ErrorType validate__cg_fixed2x3__stream( const float* value, size_t length );
3387 ParserError::ErrorType validate__cg_fixed2x3__streamEnd( const float* value, size_t length );
3388 
3389 struct fixed2x4__ValidationData
3390 {
3391     size_t validationWholeSize;
3392 };
3393 
3394 ParserError::ErrorType validate__cg_fixed2x4( const float* value, size_t length );
3395 ParserError::ErrorType validate__cg_fixed2x4__stream( const float* value, size_t length );
3396 ParserError::ErrorType validate__cg_fixed2x4__streamEnd( const float* value, size_t length );
3397 
3398 struct fixed3x1__ValidationData
3399 {
3400     size_t validationWholeSize;
3401 };
3402 
3403 ParserError::ErrorType validate__cg_fixed3x1( const float* value, size_t length );
3404 ParserError::ErrorType validate__cg_fixed3x1__stream( const float* value, size_t length );
3405 ParserError::ErrorType validate__cg_fixed3x1__streamEnd( const float* value, size_t length );
3406 
3407 struct fixed3x2__ValidationData
3408 {
3409     size_t validationWholeSize;
3410 };
3411 
3412 ParserError::ErrorType validate__cg_fixed3x2( const float* value, size_t length );
3413 ParserError::ErrorType validate__cg_fixed3x2__stream( const float* value, size_t length );
3414 ParserError::ErrorType validate__cg_fixed3x2__streamEnd( const float* value, size_t length );
3415 
3416 struct fixed3x3__ValidationData
3417 {
3418     size_t validationWholeSize;
3419 };
3420 
3421 ParserError::ErrorType validate__cg_fixed3x3( const float* value, size_t length );
3422 ParserError::ErrorType validate__cg_fixed3x3__stream( const float* value, size_t length );
3423 ParserError::ErrorType validate__cg_fixed3x3__streamEnd( const float* value, size_t length );
3424 
3425 struct fixed3x4__ValidationData
3426 {
3427     size_t validationWholeSize;
3428 };
3429 
3430 ParserError::ErrorType validate__cg_fixed3x4( const float* value, size_t length );
3431 ParserError::ErrorType validate__cg_fixed3x4__stream( const float* value, size_t length );
3432 ParserError::ErrorType validate__cg_fixed3x4__streamEnd( const float* value, size_t length );
3433 
3434 struct fixed4x1__ValidationData
3435 {
3436     size_t validationWholeSize;
3437 };
3438 
3439 ParserError::ErrorType validate__cg_fixed4x1( const float* value, size_t length );
3440 ParserError::ErrorType validate__cg_fixed4x1__stream( const float* value, size_t length );
3441 ParserError::ErrorType validate__cg_fixed4x1__streamEnd( const float* value, size_t length );
3442 
3443 struct fixed4x2__ValidationData
3444 {
3445     size_t validationWholeSize;
3446 };
3447 
3448 ParserError::ErrorType validate__cg_fixed4x2( const float* value, size_t length );
3449 ParserError::ErrorType validate__cg_fixed4x2__stream( const float* value, size_t length );
3450 ParserError::ErrorType validate__cg_fixed4x2__streamEnd( const float* value, size_t length );
3451 
3452 struct fixed4x3__ValidationData
3453 {
3454     size_t validationWholeSize;
3455 };
3456 
3457 ParserError::ErrorType validate__cg_fixed4x3( const float* value, size_t length );
3458 ParserError::ErrorType validate__cg_fixed4x3__stream( const float* value, size_t length );
3459 ParserError::ErrorType validate__cg_fixed4x3__streamEnd( const float* value, size_t length );
3460 
3461 struct fixed4x4__ValidationData
3462 {
3463     size_t validationWholeSize;
3464 };
3465 
3466 ParserError::ErrorType validate__cg_fixed4x4( const float* value, size_t length );
3467 ParserError::ErrorType validate__cg_fixed4x4__stream( const float* value, size_t length );
3468 ParserError::ErrorType validate__cg_fixed4x4__streamEnd( const float* value, size_t length );
3469 
3470 struct surface____cg_surface_type__ValidationData
3471 {
3472     size_t validation_current_state;
3473     size_t init_as_null;
3474     size_t init_as_target;
3475     size_t init_cube;
3476     size_t init_volume;
3477     size_t init_planar;
3478     size_t init_from;
3479     size_t format;
3480     size_t format_hint;
3481     size_t size;
3482     size_t viewport_ratio;
3483     size_t mip_levels;
3484     size_t mipmap_generate;
3485     size_t extra;
3486     size_t generator;
3487 };
3488 
3489 struct cg_surface_type____generator__ValidationData
3490 {
3491     size_t validation_current_state;
3492     size_t annotate;
3493     size_t code;
3494     size_t include;
3495     size_t name;
3496     size_t setparam;
3497 };
3498 
3499 struct setparam____cg_setparam_simple__ValidationData
3500 {
3501     size_t validation_current_state;
3502     size_t annotate;
3503     size_t _bool;
3504     size_t bool1;
3505     size_t bool2;
3506     size_t bool3;
3507     size_t bool4;
3508     size_t bool1x1;
3509     size_t bool1x2;
3510     size_t bool1x3;
3511     size_t bool1x4;
3512     size_t bool2x1;
3513     size_t bool2x2;
3514     size_t bool2x3;
3515     size_t bool2x4;
3516     size_t bool3x1;
3517     size_t bool3x2;
3518     size_t bool3x3;
3519     size_t bool3x4;
3520     size_t bool4x1;
3521     size_t bool4x2;
3522     size_t bool4x3;
3523     size_t bool4x4;
3524     size_t _float;
3525     size_t float1;
3526     size_t float2;
3527     size_t float3;
3528     size_t float4;
3529     size_t float1x1;
3530     size_t float1x2;
3531     size_t float1x3;
3532     size_t float1x4;
3533     size_t float2x1;
3534     size_t float2x2;
3535     size_t float2x3;
3536     size_t float2x4;
3537     size_t float3x1;
3538     size_t float3x2;
3539     size_t float3x3;
3540     size_t float3x4;
3541     size_t float4x1;
3542     size_t float4x2;
3543     size_t float4x3;
3544     size_t float4x4;
3545     size_t _int;
3546     size_t int1;
3547     size_t int2;
3548     size_t int3;
3549     size_t int4;
3550     size_t int1x1;
3551     size_t int1x2;
3552     size_t int1x3;
3553     size_t int1x4;
3554     size_t int2x1;
3555     size_t int2x2;
3556     size_t int2x3;
3557     size_t int2x4;
3558     size_t int3x1;
3559     size_t int3x2;
3560     size_t int3x3;
3561     size_t int3x4;
3562     size_t int4x1;
3563     size_t int4x2;
3564     size_t int4x3;
3565     size_t int4x4;
3566     size_t half;
3567     size_t half1;
3568     size_t half2;
3569     size_t half3;
3570     size_t half4;
3571     size_t half1x1;
3572     size_t half1x2;
3573     size_t half1x3;
3574     size_t half1x4;
3575     size_t half2x1;
3576     size_t half2x2;
3577     size_t half2x3;
3578     size_t half2x4;
3579     size_t half3x1;
3580     size_t half3x2;
3581     size_t half3x3;
3582     size_t half3x4;
3583     size_t half4x1;
3584     size_t half4x2;
3585     size_t half4x3;
3586     size_t _half4x4;
3587     size_t fixed;
3588     size_t _fixed1;
3589     size_t fixed2;
3590     size_t fixed3;
3591     size_t fixed4;
3592     size_t fixed1x1;
3593     size_t fixed1x2;
3594     size_t fixed1x3;
3595     size_t fixed1x4;
3596     size_t fixed2x1;
3597     size_t fixed2x2;
3598     size_t fixed2x3;
3599     size_t fixed2x4;
3600     size_t fixed3x1;
3601     size_t fixed3x2;
3602     size_t fixed3x3;
3603     size_t fixed3x4;
3604     size_t fixed4x1;
3605     size_t fixed4x2;
3606     size_t fixed4x3;
3607     size_t fixed4x4;
3608     size_t surface;
3609     size_t sampler1D;
3610     size_t sampler2D;
3611     size_t sampler3D;
3612     size_t samplerRECT;
3613     size_t samplerCUBE;
3614     size_t samplerDEPTH;
3615     size_t string;
3616     size_t _enum;
3617 };
3618 
3619 struct sampler1D____cg_sampler1D__ValidationData
3620 {
3621     size_t source;
3622     size_t wrap_s;
3623     size_t minfilter;
3624     size_t magfilter;
3625     size_t mipfilter;
3626     size_t border_color;
3627     size_t mipmap_maxlevel;
3628     size_t mipmap_bias;
3629     size_t extra;
3630 };
3631 
3632 struct sampler2D____cg_sampler2D__ValidationData
3633 {
3634     size_t source;
3635     size_t wrap_s;
3636     size_t wrap_t;
3637     size_t minfilter;
3638     size_t magfilter;
3639     size_t mipfilter;
3640     size_t border_color;
3641     size_t mipmap_maxlevel;
3642     size_t mipmap_bias;
3643     size_t extra;
3644 };
3645 
3646 struct sampler3D____cg_sampler3D__ValidationData
3647 {
3648     size_t source;
3649     size_t wrap_s;
3650     size_t wrap_t;
3651     size_t wrap_p;
3652     size_t minfilter;
3653     size_t magfilter;
3654     size_t mipfilter;
3655     size_t border_color;
3656     size_t mipmap_maxlevel;
3657     size_t mipmap_bias;
3658     size_t extra;
3659 };
3660 
3661 struct samplerRECT____cg_samplerRECT__ValidationData
3662 {
3663     size_t source;
3664     size_t wrap_s;
3665     size_t wrap_t;
3666     size_t minfilter;
3667     size_t magfilter;
3668     size_t mipfilter;
3669     size_t border_color;
3670     size_t mipmap_maxlevel;
3671     size_t mipmap_bias;
3672     size_t extra;
3673 };
3674 
3675 struct samplerCUBE____cg_samplerCUBE__ValidationData
3676 {
3677     size_t source;
3678     size_t wrap_s;
3679     size_t wrap_t;
3680     size_t wrap_p;
3681     size_t minfilter;
3682     size_t magfilter;
3683     size_t mipfilter;
3684     size_t border_color;
3685     size_t mipmap_maxlevel;
3686     size_t mipmap_bias;
3687     size_t extra;
3688 };
3689 
3690 struct samplerDEPTH____cg_samplerDEPTH__ValidationData
3691 {
3692     size_t source;
3693     size_t wrap_s;
3694     size_t wrap_t;
3695     size_t minfilter;
3696     size_t magfilter;
3697     size_t extra;
3698 };
3699 
3700 struct usertype__ValidationData
3701 {
3702     size_t validation_current_state;
3703     size_t _bool;
3704     size_t bool1;
3705     size_t bool2;
3706     size_t bool3;
3707     size_t bool4;
3708     size_t bool1x1;
3709     size_t bool1x2;
3710     size_t bool1x3;
3711     size_t bool1x4;
3712     size_t bool2x1;
3713     size_t bool2x2;
3714     size_t bool2x3;
3715     size_t bool2x4;
3716     size_t bool3x1;
3717     size_t bool3x2;
3718     size_t bool3x3;
3719     size_t bool3x4;
3720     size_t bool4x1;
3721     size_t bool4x2;
3722     size_t bool4x3;
3723     size_t bool4x4;
3724     size_t _float;
3725     size_t float1;
3726     size_t float2;
3727     size_t float3;
3728     size_t float4;
3729     size_t float1x1;
3730     size_t float1x2;
3731     size_t float1x3;
3732     size_t float1x4;
3733     size_t float2x1;
3734     size_t float2x2;
3735     size_t float2x3;
3736     size_t float2x4;
3737     size_t float3x1;
3738     size_t float3x2;
3739     size_t float3x3;
3740     size_t float3x4;
3741     size_t float4x1;
3742     size_t float4x2;
3743     size_t float4x3;
3744     size_t float4x4;
3745     size_t _int;
3746     size_t int1;
3747     size_t int2;
3748     size_t int3;
3749     size_t int4;
3750     size_t int1x1;
3751     size_t int1x2;
3752     size_t int1x3;
3753     size_t int1x4;
3754     size_t int2x1;
3755     size_t int2x2;
3756     size_t int2x3;
3757     size_t int2x4;
3758     size_t int3x1;
3759     size_t int3x2;
3760     size_t int3x3;
3761     size_t int3x4;
3762     size_t int4x1;
3763     size_t int4x2;
3764     size_t int4x3;
3765     size_t int4x4;
3766     size_t half;
3767     size_t half1;
3768     size_t half2;
3769     size_t half3;
3770     size_t half4;
3771     size_t half1x1;
3772     size_t half1x2;
3773     size_t half1x3;
3774     size_t half1x4;
3775     size_t half2x1;
3776     size_t half2x2;
3777     size_t half2x3;
3778     size_t half2x4;
3779     size_t half3x1;
3780     size_t half3x2;
3781     size_t half3x3;
3782     size_t half3x4;
3783     size_t half4x1;
3784     size_t half4x2;
3785     size_t half4x3;
3786     size_t _half4x4;
3787     size_t fixed;
3788     size_t _fixed1;
3789     size_t fixed2;
3790     size_t fixed3;
3791     size_t fixed4;
3792     size_t fixed1x1;
3793     size_t fixed1x2;
3794     size_t fixed1x3;
3795     size_t fixed1x4;
3796     size_t fixed2x1;
3797     size_t fixed2x2;
3798     size_t fixed2x3;
3799     size_t fixed2x4;
3800     size_t fixed3x1;
3801     size_t fixed3x2;
3802     size_t fixed3x3;
3803     size_t fixed3x4;
3804     size_t fixed4x1;
3805     size_t fixed4x2;
3806     size_t fixed4x3;
3807     size_t fixed4x4;
3808     size_t surface;
3809     size_t sampler1D;
3810     size_t sampler2D;
3811     size_t sampler3D;
3812     size_t samplerRECT;
3813     size_t samplerCUBE;
3814     size_t samplerDEPTH;
3815     size_t string;
3816     size_t _enum;
3817     size_t array;
3818     size_t usertype;
3819     size_t connect_param;
3820     size_t setparam;
3821 };
3822 
3823 struct array____cg_setarray_type__ValidationData
3824 {
3825     size_t validation_current_state;
3826     size_t _bool;
3827     size_t bool1;
3828     size_t bool2;
3829     size_t bool3;
3830     size_t bool4;
3831     size_t bool1x1;
3832     size_t bool1x2;
3833     size_t bool1x3;
3834     size_t bool1x4;
3835     size_t bool2x1;
3836     size_t bool2x2;
3837     size_t bool2x3;
3838     size_t bool2x4;
3839     size_t bool3x1;
3840     size_t bool3x2;
3841     size_t bool3x3;
3842     size_t bool3x4;
3843     size_t bool4x1;
3844     size_t bool4x2;
3845     size_t bool4x3;
3846     size_t bool4x4;
3847     size_t _float;
3848     size_t float1;
3849     size_t float2;
3850     size_t float3;
3851     size_t float4;
3852     size_t float1x1;
3853     size_t float1x2;
3854     size_t float1x3;
3855     size_t float1x4;
3856     size_t float2x1;
3857     size_t float2x2;
3858     size_t float2x3;
3859     size_t float2x4;
3860     size_t float3x1;
3861     size_t float3x2;
3862     size_t float3x3;
3863     size_t float3x4;
3864     size_t float4x1;
3865     size_t float4x2;
3866     size_t float4x3;
3867     size_t float4x4;
3868     size_t _int;
3869     size_t int1;
3870     size_t int2;
3871     size_t int3;
3872     size_t int4;
3873     size_t int1x1;
3874     size_t int1x2;
3875     size_t int1x3;
3876     size_t int1x4;
3877     size_t int2x1;
3878     size_t int2x2;
3879     size_t int2x3;
3880     size_t int2x4;
3881     size_t int3x1;
3882     size_t int3x2;
3883     size_t int3x3;
3884     size_t int3x4;
3885     size_t int4x1;
3886     size_t int4x2;
3887     size_t int4x3;
3888     size_t int4x4;
3889     size_t half;
3890     size_t half1;
3891     size_t half2;
3892     size_t half3;
3893     size_t half4;
3894     size_t half1x1;
3895     size_t half1x2;
3896     size_t half1x3;
3897     size_t half1x4;
3898     size_t half2x1;
3899     size_t half2x2;
3900     size_t half2x3;
3901     size_t half2x4;
3902     size_t half3x1;
3903     size_t half3x2;
3904     size_t half3x3;
3905     size_t half3x4;
3906     size_t half4x1;
3907     size_t half4x2;
3908     size_t half4x3;
3909     size_t _half4x4;
3910     size_t fixed;
3911     size_t _fixed1;
3912     size_t fixed2;
3913     size_t fixed3;
3914     size_t fixed4;
3915     size_t fixed1x1;
3916     size_t fixed1x2;
3917     size_t fixed1x3;
3918     size_t fixed1x4;
3919     size_t fixed2x1;
3920     size_t fixed2x2;
3921     size_t fixed2x3;
3922     size_t fixed2x4;
3923     size_t fixed3x1;
3924     size_t fixed3x2;
3925     size_t fixed3x3;
3926     size_t fixed3x4;
3927     size_t fixed4x1;
3928     size_t fixed4x2;
3929     size_t fixed4x3;
3930     size_t fixed4x4;
3931     size_t surface;
3932     size_t sampler1D;
3933     size_t sampler2D;
3934     size_t sampler3D;
3935     size_t samplerRECT;
3936     size_t samplerCUBE;
3937     size_t samplerDEPTH;
3938     size_t string;
3939     size_t _enum;
3940     size_t array;
3941     size_t usertype;
3942 };
3943 
3944 struct setparam____cg_setparam__ValidationData
3945 {
3946     size_t validation_current_state;
3947     size_t _bool;
3948     size_t bool1;
3949     size_t bool2;
3950     size_t bool3;
3951     size_t bool4;
3952     size_t bool1x1;
3953     size_t bool1x2;
3954     size_t bool1x3;
3955     size_t bool1x4;
3956     size_t bool2x1;
3957     size_t bool2x2;
3958     size_t bool2x3;
3959     size_t bool2x4;
3960     size_t bool3x1;
3961     size_t bool3x2;
3962     size_t bool3x3;
3963     size_t bool3x4;
3964     size_t bool4x1;
3965     size_t bool4x2;
3966     size_t bool4x3;
3967     size_t bool4x4;
3968     size_t _float;
3969     size_t float1;
3970     size_t float2;
3971     size_t float3;
3972     size_t float4;
3973     size_t float1x1;
3974     size_t float1x2;
3975     size_t float1x3;
3976     size_t float1x4;
3977     size_t float2x1;
3978     size_t float2x2;
3979     size_t float2x3;
3980     size_t float2x4;
3981     size_t float3x1;
3982     size_t float3x2;
3983     size_t float3x3;
3984     size_t float3x4;
3985     size_t float4x1;
3986     size_t float4x2;
3987     size_t float4x3;
3988     size_t float4x4;
3989     size_t _int;
3990     size_t int1;
3991     size_t int2;
3992     size_t int3;
3993     size_t int4;
3994     size_t int1x1;
3995     size_t int1x2;
3996     size_t int1x3;
3997     size_t int1x4;
3998     size_t int2x1;
3999     size_t int2x2;
4000     size_t int2x3;
4001     size_t int2x4;
4002     size_t int3x1;
4003     size_t int3x2;
4004     size_t int3x3;
4005     size_t int3x4;
4006     size_t int4x1;
4007     size_t int4x2;
4008     size_t int4x3;
4009     size_t int4x4;
4010     size_t half;
4011     size_t half1;
4012     size_t half2;
4013     size_t half3;
4014     size_t half4;
4015     size_t half1x1;
4016     size_t half1x2;
4017     size_t half1x3;
4018     size_t half1x4;
4019     size_t half2x1;
4020     size_t half2x2;
4021     size_t half2x3;
4022     size_t half2x4;
4023     size_t half3x1;
4024     size_t half3x2;
4025     size_t half3x3;
4026     size_t half3x4;
4027     size_t half4x1;
4028     size_t half4x2;
4029     size_t half4x3;
4030     size_t _half4x4;
4031     size_t fixed;
4032     size_t _fixed1;
4033     size_t fixed2;
4034     size_t fixed3;
4035     size_t fixed4;
4036     size_t fixed1x1;
4037     size_t fixed1x2;
4038     size_t fixed1x3;
4039     size_t fixed1x4;
4040     size_t fixed2x1;
4041     size_t fixed2x2;
4042     size_t fixed2x3;
4043     size_t fixed2x4;
4044     size_t fixed3x1;
4045     size_t fixed3x2;
4046     size_t fixed3x3;
4047     size_t fixed3x4;
4048     size_t fixed4x1;
4049     size_t fixed4x2;
4050     size_t fixed4x3;
4051     size_t fixed4x4;
4052     size_t surface;
4053     size_t sampler1D;
4054     size_t sampler2D;
4055     size_t sampler3D;
4056     size_t samplerRECT;
4057     size_t samplerCUBE;
4058     size_t samplerDEPTH;
4059     size_t string;
4060     size_t _enum;
4061     size_t usertype;
4062     size_t array;
4063     size_t connect_param;
4064 };
4065 
4066 struct array____cg_newarray_type__ValidationData
4067 {
4068     size_t validation_current_state;
4069     size_t _bool;
4070     size_t bool1;
4071     size_t bool2;
4072     size_t bool3;
4073     size_t bool4;
4074     size_t bool1x1;
4075     size_t bool1x2;
4076     size_t bool1x3;
4077     size_t bool1x4;
4078     size_t bool2x1;
4079     size_t bool2x2;
4080     size_t bool2x3;
4081     size_t bool2x4;
4082     size_t bool3x1;
4083     size_t bool3x2;
4084     size_t bool3x3;
4085     size_t bool3x4;
4086     size_t bool4x1;
4087     size_t bool4x2;
4088     size_t bool4x3;
4089     size_t bool4x4;
4090     size_t _float;
4091     size_t float1;
4092     size_t float2;
4093     size_t float3;
4094     size_t float4;
4095     size_t float1x1;
4096     size_t float1x2;
4097     size_t float1x3;
4098     size_t float1x4;
4099     size_t float2x1;
4100     size_t float2x2;
4101     size_t float2x3;
4102     size_t float2x4;
4103     size_t float3x1;
4104     size_t float3x2;
4105     size_t float3x3;
4106     size_t float3x4;
4107     size_t float4x1;
4108     size_t float4x2;
4109     size_t float4x3;
4110     size_t float4x4;
4111     size_t _int;
4112     size_t int1;
4113     size_t int2;
4114     size_t int3;
4115     size_t int4;
4116     size_t int1x1;
4117     size_t int1x2;
4118     size_t int1x3;
4119     size_t int1x4;
4120     size_t int2x1;
4121     size_t int2x2;
4122     size_t int2x3;
4123     size_t int2x4;
4124     size_t int3x1;
4125     size_t int3x2;
4126     size_t int3x3;
4127     size_t int3x4;
4128     size_t int4x1;
4129     size_t int4x2;
4130     size_t int4x3;
4131     size_t int4x4;
4132     size_t half;
4133     size_t half1;
4134     size_t half2;
4135     size_t half3;
4136     size_t half4;
4137     size_t half1x1;
4138     size_t half1x2;
4139     size_t half1x3;
4140     size_t half1x4;
4141     size_t half2x1;
4142     size_t half2x2;
4143     size_t half2x3;
4144     size_t half2x4;
4145     size_t half3x1;
4146     size_t half3x2;
4147     size_t half3x3;
4148     size_t half3x4;
4149     size_t half4x1;
4150     size_t half4x2;
4151     size_t half4x3;
4152     size_t _half4x4;
4153     size_t fixed;
4154     size_t _fixed1;
4155     size_t fixed2;
4156     size_t fixed3;
4157     size_t fixed4;
4158     size_t fixed1x1;
4159     size_t fixed1x2;
4160     size_t fixed1x3;
4161     size_t fixed1x4;
4162     size_t fixed2x1;
4163     size_t fixed2x2;
4164     size_t fixed2x3;
4165     size_t fixed2x4;
4166     size_t fixed3x1;
4167     size_t fixed3x2;
4168     size_t fixed3x3;
4169     size_t fixed3x4;
4170     size_t fixed4x1;
4171     size_t fixed4x2;
4172     size_t fixed4x3;
4173     size_t fixed4x4;
4174     size_t surface;
4175     size_t sampler1D;
4176     size_t sampler2D;
4177     size_t sampler3D;
4178     size_t samplerRECT;
4179     size_t samplerCUBE;
4180     size_t samplerDEPTH;
4181     size_t string;
4182     size_t _enum;
4183     size_t array;
4184     size_t usertype;
4185     size_t connect_param;
4186 };
4187 
4188 struct profile_CG__technique__ValidationData
4189 {
4190     size_t validation_current_state;
4191     size_t asset;
4192     size_t annotate;
4193     size_t code;
4194     size_t include;
4195     size_t image;
4196     size_t newparam;
4197     size_t setparam;
4198     size_t pass;
4199     size_t extra;
4200 };
4201 
4202 struct profile_CG__technique__pass__ValidationData
4203 {
4204     size_t validation_current_state;
4205     size_t annotate;
4206     size_t color_target;
4207     size_t depth_target;
4208     size_t stencil_target;
4209     size_t color_clear;
4210     size_t depth_clear;
4211     size_t stencil_clear;
4212     size_t draw;
4213     size_t alpha_func;
4214     size_t blend_func;
4215     size_t blend_func_separate;
4216     size_t blend_equation;
4217     size_t blend_equation_separate;
4218     size_t color_material;
4219     size_t cull_face;
4220     size_t depth_func;
4221     size_t fog_mode;
4222     size_t fog_coord_src;
4223     size_t front_face;
4224     size_t light_model_color_control;
4225     size_t logic_op;
4226     size_t polygon_mode;
4227     size_t shade_model;
4228     size_t stencil_func;
4229     size_t stencil_op;
4230     size_t stencil_func_separate;
4231     size_t stencil_op_separate;
4232     size_t stencil_mask_separate;
4233     size_t light_enable;
4234     size_t light_ambient;
4235     size_t light_diffuse;
4236     size_t light_specular;
4237     size_t light_position;
4238     size_t light_constant_attenuation;
4239     size_t light_linear_attenuation;
4240     size_t light_quadratic_attenuation;
4241     size_t light_spot_cutoff;
4242     size_t light_spot_direction;
4243     size_t light_spot_exponent;
4244     size_t texture1D;
4245     size_t texture2D;
4246     size_t texture3D;
4247     size_t textureCUBE;
4248     size_t textureRECT;
4249     size_t textureDEPTH;
4250     size_t texture1D_enable;
4251     size_t texture2D_enable;
4252     size_t texture3D_enable;
4253     size_t textureCUBE_enable;
4254     size_t textureRECT_enable;
4255     size_t textureDEPTH_enable;
4256     size_t texture_env_color;
4257     size_t texture_env_mode;
4258     size_t clip_plane;
4259     size_t clip_plane_enable;
4260     size_t blend_color;
4261     size_t clear_color;
4262     size_t clear_stencil;
4263     size_t clear_depth;
4264     size_t color_mask;
4265     size_t depth_bounds;
4266     size_t depth_mask;
4267     size_t depth_range;
4268     size_t fog_density;
4269     size_t fog_start;
4270     size_t fog_end;
4271     size_t fog_color;
4272     size_t light_model_ambient;
4273     size_t lighting_enable;
4274     size_t line_stipple;
4275     size_t line_width;
4276     size_t material_ambient;
4277     size_t material_diffuse;
4278     size_t material_emission;
4279     size_t material_shininess;
4280     size_t material_specular;
4281     size_t model_view_matrix;
4282     size_t point_distance_attenuation;
4283     size_t point_fade_threshold_size;
4284     size_t point_size;
4285     size_t point_size_min;
4286     size_t point_size_max;
4287     size_t polygon_offset;
4288     size_t projection_matrix;
4289     size_t scissor;
4290     size_t stencil_mask;
4291     size_t alpha_test_enable;
4292     size_t auto_normal_enable;
4293     size_t blend_enable;
4294     size_t color_logic_op_enable;
4295     size_t color_material_enable;
4296     size_t cull_face_enable;
4297     size_t depth_bounds_enable;
4298     size_t depth_clamp_enable;
4299     size_t depth_test_enable;
4300     size_t dither_enable;
4301     size_t fog_enable;
4302     size_t light_model_local_viewer_enable;
4303     size_t light_model_two_side_enable;
4304     size_t line_smooth_enable;
4305     size_t line_stipple_enable;
4306     size_t logic_op_enable;
4307     size_t multisample_enable;
4308     size_t normalize_enable;
4309     size_t point_smooth_enable;
4310     size_t polygon_offset_fill_enable;
4311     size_t polygon_offset_line_enable;
4312     size_t polygon_offset_point_enable;
4313     size_t polygon_smooth_enable;
4314     size_t polygon_stipple_enable;
4315     size_t rescale_normal_enable;
4316     size_t sample_alpha_to_coverage_enable;
4317     size_t sample_alpha_to_one_enable;
4318     size_t sample_coverage_enable;
4319     size_t scissor_test_enable;
4320     size_t stencil_test_enable;
4321     size_t gl_hook_abstract;
4322     size_t shader;
4323     size_t extra;
4324 };
4325 
4326 ParserError::ErrorType validate__cg_pipeline_stage( ParserString value );
4327 ParserError::ErrorType validate__cg_pipeline_stage( const ParserChar* value, size_t length );
4328 ParserError::ErrorType validate__cg_pipeline_stage__stream( const ParserChar* value, size_t length );
4329 ParserError::ErrorType validate__cg_pipeline_stage__streamEnd( const ParserChar* value, size_t length );
4330 
4331 struct profile_CG__technique__pass__shader__ValidationData
4332 {
4333     size_t validation_current_state;
4334     size_t annotate;
4335     size_t compiler_target;
4336     size_t compiler_options;
4337     size_t name;
4338     size_t bind;
4339 };
4340 
4341 struct profile_CG__technique__pass__shader__bind__ValidationData
4342 {
4343     size_t validation_current_state;
4344     size_t _bool;
4345     size_t bool1;
4346     size_t bool2;
4347     size_t bool3;
4348     size_t bool4;
4349     size_t bool1x1;
4350     size_t bool1x2;
4351     size_t bool1x3;
4352     size_t bool1x4;
4353     size_t bool2x1;
4354     size_t bool2x2;
4355     size_t bool2x3;
4356     size_t bool2x4;
4357     size_t bool3x1;
4358     size_t bool3x2;
4359     size_t bool3x3;
4360     size_t bool3x4;
4361     size_t bool4x1;
4362     size_t bool4x2;
4363     size_t bool4x3;
4364     size_t bool4x4;
4365     size_t _float;
4366     size_t float1;
4367     size_t float2;
4368     size_t float3;
4369     size_t float4;
4370     size_t float1x1;
4371     size_t float1x2;
4372     size_t float1x3;
4373     size_t float1x4;
4374     size_t float2x1;
4375     size_t float2x2;
4376     size_t float2x3;
4377     size_t float2x4;
4378     size_t float3x1;
4379     size_t float3x2;
4380     size_t float3x3;
4381     size_t float3x4;
4382     size_t float4x1;
4383     size_t float4x2;
4384     size_t float4x3;
4385     size_t float4x4;
4386     size_t _int;
4387     size_t int1;
4388     size_t int2;
4389     size_t int3;
4390     size_t int4;
4391     size_t int1x1;
4392     size_t int1x2;
4393     size_t int1x3;
4394     size_t int1x4;
4395     size_t int2x1;
4396     size_t int2x2;
4397     size_t int2x3;
4398     size_t int2x4;
4399     size_t int3x1;
4400     size_t int3x2;
4401     size_t int3x3;
4402     size_t int3x4;
4403     size_t int4x1;
4404     size_t int4x2;
4405     size_t int4x3;
4406     size_t int4x4;
4407     size_t half;
4408     size_t half1;
4409     size_t half2;
4410     size_t half3;
4411     size_t half4;
4412     size_t half1x1;
4413     size_t half1x2;
4414     size_t half1x3;
4415     size_t half1x4;
4416     size_t half2x1;
4417     size_t half2x2;
4418     size_t half2x3;
4419     size_t half2x4;
4420     size_t half3x1;
4421     size_t half3x2;
4422     size_t half3x3;
4423     size_t half3x4;
4424     size_t half4x1;
4425     size_t half4x2;
4426     size_t half4x3;
4427     size_t _half4x4;
4428     size_t fixed;
4429     size_t _fixed1;
4430     size_t fixed2;
4431     size_t fixed3;
4432     size_t fixed4;
4433     size_t fixed1x1;
4434     size_t fixed1x2;
4435     size_t fixed1x3;
4436     size_t fixed1x4;
4437     size_t fixed2x1;
4438     size_t fixed2x2;
4439     size_t fixed2x3;
4440     size_t fixed2x4;
4441     size_t fixed3x1;
4442     size_t fixed3x2;
4443     size_t fixed3x3;
4444     size_t fixed3x4;
4445     size_t fixed4x1;
4446     size_t fixed4x2;
4447     size_t fixed4x3;
4448     size_t fixed4x4;
4449     size_t surface;
4450     size_t sampler1D;
4451     size_t sampler2D;
4452     size_t sampler3D;
4453     size_t samplerRECT;
4454     size_t samplerCUBE;
4455     size_t samplerDEPTH;
4456     size_t string;
4457     size_t _enum;
4458     size_t param;
4459 };
4460 
4461 struct profile_COMMON__ValidationData
4462 {
4463     size_t validation_current_state;
4464     size_t asset;
4465     size_t image;
4466     size_t newparam;
4467     size_t technique;
4468     size_t extra;
4469 };
4470 
4471 struct newparam____common_newparam_type__ValidationData
4472 {
4473     size_t validation_current_state;
4474     size_t semantic;
4475     size_t _float;
4476     size_t float2;
4477     size_t float3;
4478     size_t float4;
4479     size_t surface;
4480     size_t sampler2D;
4481 };
4482 
4483 struct profile_COMMON__technique__ValidationData
4484 {
4485     size_t validation_current_state;
4486     size_t asset;
4487     size_t image;
4488     size_t newparam;
4489     size_t constant;
4490     size_t lambert;
4491     size_t phong;
4492     size_t blinn;
4493     size_t extra;
4494 };
4495 
4496 struct profile_COMMON__technique__constant__ValidationData
4497 {
4498     size_t emission;
4499     size_t reflective;
4500     size_t reflectivity;
4501     size_t transparent;
4502     size_t transparency;
4503     size_t index_of_refraction;
4504 };
4505 
4506 struct emission__ValidationData
4507 {
4508     size_t color;
4509     size_t param;
4510     size_t texture;
4511 };
4512 
4513 struct common_color_or_texture_type____color__ValidationData
4514 {
4515     size_t validationWholeSize;
4516 };
4517 
4518 struct texture__ValidationData
4519 {
4520     size_t extra;
4521 };
4522 
4523 struct reflectivity__ValidationData
4524 {
4525     size_t _float;
4526     size_t param;
4527 };
4528 
4529 ParserError::ErrorType validate__fx_opaque_enum( ParserString value );
4530 ParserError::ErrorType validate__fx_opaque_enum( const ParserChar* value, size_t length );
4531 ParserError::ErrorType validate__fx_opaque_enum__stream( const ParserChar* value, size_t length );
4532 ParserError::ErrorType validate__fx_opaque_enum__streamEnd( const ParserChar* value, size_t length );
4533 
4534 struct transparent__ValidationData
4535 {
4536     size_t color;
4537     size_t param;
4538     size_t texture;
4539 };
4540 
4541 struct lambert__ValidationData
4542 {
4543     size_t emission;
4544     size_t ambient;
4545     size_t diffuse;
4546     size_t reflective;
4547     size_t reflectivity;
4548     size_t transparent;
4549     size_t transparency;
4550     size_t index_of_refraction;
4551 };
4552 
4553 struct phong__ValidationData
4554 {
4555     size_t emission;
4556     size_t ambient;
4557     size_t diffuse;
4558     size_t specular;
4559     size_t shininess;
4560     size_t reflective;
4561     size_t reflectivity;
4562     size_t transparent;
4563     size_t transparency;
4564     size_t index_of_refraction;
4565 };
4566 
4567 struct blinn__ValidationData
4568 {
4569     size_t emission;
4570     size_t ambient;
4571     size_t diffuse;
4572     size_t specular;
4573     size_t shininess;
4574     size_t reflective;
4575     size_t reflectivity;
4576     size_t transparent;
4577     size_t transparency;
4578     size_t index_of_refraction;
4579 };
4580 
4581 
4582 
4583 } // namespace
4584 #endif
4585