diff options
Diffstat (limited to 'ddl/out/LambdaCube.IR.java')
-rw-r--r-- | ddl/out/LambdaCube.IR.java | 877 |
1 files changed, 877 insertions, 0 deletions
diff --git a/ddl/out/LambdaCube.IR.java b/ddl/out/LambdaCube.IR.java new file mode 100644 index 0000000..b819bcb --- /dev/null +++ b/ddl/out/LambdaCube.IR.java | |||
@@ -0,0 +1,877 @@ | |||
1 | // generated file, do not modify! | ||
2 | // 2016-03-14T10:58:29.577511000000Z | ||
3 | |||
4 | |||
5 | public class LambdaCube.IR { | ||
6 | public class ArrayValue { | ||
7 | public enum Tag { | ||
8 | VBoolArray, | ||
9 | VIntArray, | ||
10 | VWordArray, | ||
11 | VFloatArray | ||
12 | } | ||
13 | public Tag tag; | ||
14 | |||
15 | public class VBoolArray extends ArrayValue { | ||
16 | public ArrayList<Boolean> _0; | ||
17 | } | ||
18 | public class VIntArray extends ArrayValue { | ||
19 | public ArrayList<Integer> _0; | ||
20 | } | ||
21 | public class VWordArray extends ArrayValue { | ||
22 | public ArrayList<Integer> _0; | ||
23 | } | ||
24 | public class VFloatArray extends ArrayValue { | ||
25 | public ArrayList<Float> _0; | ||
26 | } | ||
27 | } | ||
28 | |||
29 | public class Value { | ||
30 | public enum Tag { | ||
31 | VBool, | ||
32 | VV2B, | ||
33 | VV3B, | ||
34 | VV4B, | ||
35 | VWord, | ||
36 | VV2U, | ||
37 | VV3U, | ||
38 | VV4U, | ||
39 | VInt, | ||
40 | VV2I, | ||
41 | VV3I, | ||
42 | VV4I, | ||
43 | VFloat, | ||
44 | VV2F, | ||
45 | VV3F, | ||
46 | VV4F, | ||
47 | VM22F, | ||
48 | VM23F, | ||
49 | VM24F, | ||
50 | VM32F, | ||
51 | VM33F, | ||
52 | VM34F, | ||
53 | VM42F, | ||
54 | VM43F, | ||
55 | VM44F | ||
56 | } | ||
57 | public Tag tag; | ||
58 | |||
59 | public class VBool extends Value { | ||
60 | public Boolean _0; | ||
61 | } | ||
62 | public class VV2B extends Value { | ||
63 | public int _0; | ||
64 | } | ||
65 | public class VV3B extends Value { | ||
66 | public int _0; | ||
67 | } | ||
68 | public class VV4B extends Value { | ||
69 | public int _0; | ||
70 | } | ||
71 | public class VWord extends Value { | ||
72 | public Integer _0; | ||
73 | } | ||
74 | public class VV2U extends Value { | ||
75 | public int _0; | ||
76 | } | ||
77 | public class VV3U extends Value { | ||
78 | public int _0; | ||
79 | } | ||
80 | public class VV4U extends Value { | ||
81 | public int _0; | ||
82 | } | ||
83 | public class VInt extends Value { | ||
84 | public Integer _0; | ||
85 | } | ||
86 | public class VV2I extends Value { | ||
87 | public int _0; | ||
88 | } | ||
89 | public class VV3I extends Value { | ||
90 | public int _0; | ||
91 | } | ||
92 | public class VV4I extends Value { | ||
93 | public int _0; | ||
94 | } | ||
95 | public class VFloat extends Value { | ||
96 | public Float _0; | ||
97 | } | ||
98 | public class VV2F extends Value { | ||
99 | public int _0; | ||
100 | } | ||
101 | public class VV3F extends Value { | ||
102 | public int _0; | ||
103 | } | ||
104 | public class VV4F extends Value { | ||
105 | public int _0; | ||
106 | } | ||
107 | public class VM22F extends Value { | ||
108 | public int _0; | ||
109 | } | ||
110 | public class VM23F extends Value { | ||
111 | public int _0; | ||
112 | } | ||
113 | public class VM24F extends Value { | ||
114 | public int _0; | ||
115 | } | ||
116 | public class VM32F extends Value { | ||
117 | public int _0; | ||
118 | } | ||
119 | public class VM33F extends Value { | ||
120 | public int _0; | ||
121 | } | ||
122 | public class VM34F extends Value { | ||
123 | public int _0; | ||
124 | } | ||
125 | public class VM42F extends Value { | ||
126 | public int _0; | ||
127 | } | ||
128 | public class VM43F extends Value { | ||
129 | public int _0; | ||
130 | } | ||
131 | public class VM44F extends Value { | ||
132 | public int _0; | ||
133 | } | ||
134 | } | ||
135 | |||
136 | public class InputType { | ||
137 | public enum Tag { | ||
138 | Bool, | ||
139 | V2B, | ||
140 | V3B, | ||
141 | V4B, | ||
142 | Word, | ||
143 | V2U, | ||
144 | V3U, | ||
145 | V4U, | ||
146 | Int, | ||
147 | V2I, | ||
148 | V3I, | ||
149 | V4I, | ||
150 | Float, | ||
151 | V2F, | ||
152 | V3F, | ||
153 | V4F, | ||
154 | M22F, | ||
155 | M23F, | ||
156 | M24F, | ||
157 | M32F, | ||
158 | M33F, | ||
159 | M34F, | ||
160 | M42F, | ||
161 | M43F, | ||
162 | M44F, | ||
163 | STexture1D, | ||
164 | STexture2D, | ||
165 | STextureCube, | ||
166 | STexture1DArray, | ||
167 | STexture2DArray, | ||
168 | STexture2DRect, | ||
169 | FTexture1D, | ||
170 | FTexture2D, | ||
171 | FTexture3D, | ||
172 | FTextureCube, | ||
173 | FTexture1DArray, | ||
174 | FTexture2DArray, | ||
175 | FTexture2DMS, | ||
176 | FTexture2DMSArray, | ||
177 | FTextureBuffer, | ||
178 | FTexture2DRect, | ||
179 | ITexture1D, | ||
180 | ITexture2D, | ||
181 | ITexture3D, | ||
182 | ITextureCube, | ||
183 | ITexture1DArray, | ||
184 | ITexture2DArray, | ||
185 | ITexture2DMS, | ||
186 | ITexture2DMSArray, | ||
187 | ITextureBuffer, | ||
188 | ITexture2DRect, | ||
189 | UTexture1D, | ||
190 | UTexture2D, | ||
191 | UTexture3D, | ||
192 | UTextureCube, | ||
193 | UTexture1DArray, | ||
194 | UTexture2DArray, | ||
195 | UTexture2DMS, | ||
196 | UTexture2DMSArray, | ||
197 | UTextureBuffer, | ||
198 | UTexture2DRect | ||
199 | } | ||
200 | public Tag tag; | ||
201 | |||
202 | } | ||
203 | |||
204 | public class PointSpriteCoordOrigin { | ||
205 | public enum Tag { | ||
206 | LowerLeft, | ||
207 | UpperLeft | ||
208 | } | ||
209 | public Tag tag; | ||
210 | |||
211 | } | ||
212 | |||
213 | public class PointSize { | ||
214 | public enum Tag { | ||
215 | PointSize, | ||
216 | ProgramPointSize | ||
217 | } | ||
218 | public Tag tag; | ||
219 | |||
220 | public class PointSize extends PointSize { | ||
221 | public Float _0; | ||
222 | } | ||
223 | } | ||
224 | |||
225 | public class PolygonOffset { | ||
226 | public enum Tag { | ||
227 | NoOffset, | ||
228 | Offset | ||
229 | } | ||
230 | public Tag tag; | ||
231 | |||
232 | public class Offset extends PolygonOffset { | ||
233 | public Float _0; | ||
234 | public Float _1; | ||
235 | } | ||
236 | } | ||
237 | |||
238 | public class FrontFace { | ||
239 | public enum Tag { | ||
240 | CCW, | ||
241 | CW | ||
242 | } | ||
243 | public Tag tag; | ||
244 | |||
245 | } | ||
246 | |||
247 | public class PolygonMode { | ||
248 | public enum Tag { | ||
249 | PolygonPoint, | ||
250 | PolygonLine, | ||
251 | PolygonFill | ||
252 | } | ||
253 | public Tag tag; | ||
254 | |||
255 | public class PolygonPoint extends PolygonMode { | ||
256 | public PointSize _0; | ||
257 | } | ||
258 | public class PolygonLine extends PolygonMode { | ||
259 | public Float _0; | ||
260 | } | ||
261 | } | ||
262 | |||
263 | public class ProvokingVertex { | ||
264 | public enum Tag { | ||
265 | FirstVertex, | ||
266 | LastVertex | ||
267 | } | ||
268 | public Tag tag; | ||
269 | |||
270 | } | ||
271 | |||
272 | public class CullMode { | ||
273 | public enum Tag { | ||
274 | CullNone, | ||
275 | CullFront, | ||
276 | CullBack | ||
277 | } | ||
278 | public Tag tag; | ||
279 | |||
280 | public class CullFront extends CullMode { | ||
281 | public FrontFace _0; | ||
282 | } | ||
283 | public class CullBack extends CullMode { | ||
284 | public FrontFace _0; | ||
285 | } | ||
286 | } | ||
287 | |||
288 | public class ComparisonFunction { | ||
289 | public enum Tag { | ||
290 | Never, | ||
291 | Less, | ||
292 | Equal, | ||
293 | Lequal, | ||
294 | Greater, | ||
295 | Notequal, | ||
296 | Gequal, | ||
297 | Always | ||
298 | } | ||
299 | public Tag tag; | ||
300 | |||
301 | } | ||
302 | |||
303 | public class StencilOperation { | ||
304 | public enum Tag { | ||
305 | OpZero, | ||
306 | OpKeep, | ||
307 | OpReplace, | ||
308 | OpIncr, | ||
309 | OpIncrWrap, | ||
310 | OpDecr, | ||
311 | OpDecrWrap, | ||
312 | OpInvert | ||
313 | } | ||
314 | public Tag tag; | ||
315 | |||
316 | } | ||
317 | |||
318 | public class BlendEquation { | ||
319 | public enum Tag { | ||
320 | FuncAdd, | ||
321 | FuncSubtract, | ||
322 | FuncReverseSubtract, | ||
323 | Min, | ||
324 | Max | ||
325 | } | ||
326 | public Tag tag; | ||
327 | |||
328 | } | ||
329 | |||
330 | public class BlendingFactor { | ||
331 | public enum Tag { | ||
332 | Zero, | ||
333 | One, | ||
334 | SrcColor, | ||
335 | OneMinusSrcColor, | ||
336 | DstColor, | ||
337 | OneMinusDstColor, | ||
338 | SrcAlpha, | ||
339 | OneMinusSrcAlpha, | ||
340 | DstAlpha, | ||
341 | OneMinusDstAlpha, | ||
342 | ConstantColor, | ||
343 | OneMinusConstantColor, | ||
344 | ConstantAlpha, | ||
345 | OneMinusConstantAlpha, | ||
346 | SrcAlphaSaturate | ||
347 | } | ||
348 | public Tag tag; | ||
349 | |||
350 | } | ||
351 | |||
352 | public class LogicOperation { | ||
353 | public enum Tag { | ||
354 | Clear, | ||
355 | And, | ||
356 | AndReverse, | ||
357 | Copy, | ||
358 | AndInverted, | ||
359 | Noop, | ||
360 | Xor, | ||
361 | Or, | ||
362 | Nor, | ||
363 | Equiv, | ||
364 | Invert, | ||
365 | OrReverse, | ||
366 | CopyInverted, | ||
367 | OrInverted, | ||
368 | Nand, | ||
369 | Set | ||
370 | } | ||
371 | public Tag tag; | ||
372 | |||
373 | } | ||
374 | |||
375 | public class StencilOps { | ||
376 | public enum Tag { | ||
377 | StencilOps | ||
378 | } | ||
379 | public Tag tag; | ||
380 | |||
381 | public class StencilOps extends StencilOps { | ||
382 | public StencilOperation frontStencilOp; | ||
383 | public StencilOperation backStencilOp; | ||
384 | } | ||
385 | } | ||
386 | |||
387 | public class StencilTest { | ||
388 | public enum Tag { | ||
389 | StencilTest | ||
390 | } | ||
391 | public Tag tag; | ||
392 | |||
393 | public class StencilTest extends StencilTest { | ||
394 | public ComparisonFunction stencilComparision; | ||
395 | public Integer stencilReference; | ||
396 | public Integer stencilMask; | ||
397 | } | ||
398 | } | ||
399 | |||
400 | public class StencilTests { | ||
401 | public enum Tag { | ||
402 | StencilTests | ||
403 | } | ||
404 | public Tag tag; | ||
405 | |||
406 | public class StencilTests extends StencilTests { | ||
407 | public StencilTest _0; | ||
408 | public StencilTest _1; | ||
409 | } | ||
410 | } | ||
411 | |||
412 | public class FetchPrimitive { | ||
413 | public enum Tag { | ||
414 | Points, | ||
415 | Lines, | ||
416 | Triangles, | ||
417 | LinesAdjacency, | ||
418 | TrianglesAdjacency | ||
419 | } | ||
420 | public Tag tag; | ||
421 | |||
422 | } | ||
423 | |||
424 | public class OutputPrimitive { | ||
425 | public enum Tag { | ||
426 | TrianglesOutput, | ||
427 | LinesOutput, | ||
428 | PointsOutput | ||
429 | } | ||
430 | public Tag tag; | ||
431 | |||
432 | } | ||
433 | |||
434 | public class ColorArity { | ||
435 | public enum Tag { | ||
436 | Red, | ||
437 | RG, | ||
438 | RGB, | ||
439 | RGBA | ||
440 | } | ||
441 | public Tag tag; | ||
442 | |||
443 | } | ||
444 | |||
445 | public class Blending { | ||
446 | public enum Tag { | ||
447 | NoBlending, | ||
448 | BlendLogicOp, | ||
449 | Blend | ||
450 | } | ||
451 | public Tag tag; | ||
452 | |||
453 | public class BlendLogicOp extends Blending { | ||
454 | public LogicOperation _0; | ||
455 | } | ||
456 | public class Blend extends Blending { | ||
457 | public BlendEquation colorEqSrc; | ||
458 | public BlendEquation alphaEqSrc; | ||
459 | public BlendingFactor colorFSrc; | ||
460 | public BlendingFactor colorFDst; | ||
461 | public BlendingFactor alphaFSrc; | ||
462 | public BlendingFactor alphaFDst; | ||
463 | public int color; | ||
464 | } | ||
465 | } | ||
466 | |||
467 | public class RasterContext { | ||
468 | public enum Tag { | ||
469 | PointCtx, | ||
470 | LineCtx, | ||
471 | TriangleCtx | ||
472 | } | ||
473 | public Tag tag; | ||
474 | |||
475 | public class PointCtx extends RasterContext { | ||
476 | public PointSize _0; | ||
477 | public Float _1; | ||
478 | public PointSpriteCoordOrigin _2; | ||
479 | } | ||
480 | public class LineCtx extends RasterContext { | ||
481 | public Float _0; | ||
482 | public ProvokingVertex _1; | ||
483 | } | ||
484 | public class TriangleCtx extends RasterContext { | ||
485 | public CullMode _0; | ||
486 | public PolygonMode _1; | ||
487 | public PolygonOffset _2; | ||
488 | public ProvokingVertex _3; | ||
489 | } | ||
490 | } | ||
491 | |||
492 | public class FragmentOperation { | ||
493 | public enum Tag { | ||
494 | DepthOp, | ||
495 | StencilOp, | ||
496 | ColorOp | ||
497 | } | ||
498 | public Tag tag; | ||
499 | |||
500 | public class DepthOp extends FragmentOperation { | ||
501 | public ComparisonFunction _0; | ||
502 | public Boolean _1; | ||
503 | } | ||
504 | public class StencilOp extends FragmentOperation { | ||
505 | public StencilTests _0; | ||
506 | public StencilOps _1; | ||
507 | public StencilOps _2; | ||
508 | } | ||
509 | public class ColorOp extends FragmentOperation { | ||
510 | public Blending _0; | ||
511 | public Value _1; | ||
512 | } | ||
513 | } | ||
514 | |||
515 | public class AccumulationContext { | ||
516 | public enum Tag { | ||
517 | AccumulationContext | ||
518 | } | ||
519 | public Tag tag; | ||
520 | |||
521 | public class AccumulationContext extends AccumulationContext { | ||
522 | public int accViewportName; | ||
523 | public ArrayList<FragmentOperation> accOperations; | ||
524 | } | ||
525 | } | ||
526 | |||
527 | public class TextureDataType { | ||
528 | public enum Tag { | ||
529 | FloatT, | ||
530 | IntT, | ||
531 | WordT, | ||
532 | ShadowT | ||
533 | } | ||
534 | public Tag tag; | ||
535 | |||
536 | public class FloatT extends TextureDataType { | ||
537 | public ColorArity _0; | ||
538 | } | ||
539 | public class IntT extends TextureDataType { | ||
540 | public ColorArity _0; | ||
541 | } | ||
542 | public class WordT extends TextureDataType { | ||
543 | public ColorArity _0; | ||
544 | } | ||
545 | } | ||
546 | |||
547 | public class TextureType { | ||
548 | public enum Tag { | ||
549 | Texture1D, | ||
550 | Texture2D, | ||
551 | Texture3D, | ||
552 | TextureCube, | ||
553 | TextureRect, | ||
554 | Texture2DMS, | ||
555 | TextureBuffer | ||
556 | } | ||
557 | public Tag tag; | ||
558 | |||
559 | public class Texture1D extends TextureType { | ||
560 | public TextureDataType _0; | ||
561 | public Integer _1; | ||
562 | } | ||
563 | public class Texture2D extends TextureType { | ||
564 | public TextureDataType _0; | ||
565 | public Integer _1; | ||
566 | } | ||
567 | public class Texture3D extends TextureType { | ||
568 | public TextureDataType _0; | ||
569 | } | ||
570 | public class TextureCube extends TextureType { | ||
571 | public TextureDataType _0; | ||
572 | } | ||
573 | public class TextureRect extends TextureType { | ||
574 | public TextureDataType _0; | ||
575 | } | ||
576 | public class Texture2DMS extends TextureType { | ||
577 | public TextureDataType _0; | ||
578 | public Integer _1; | ||
579 | public Integer _2; | ||
580 | public Boolean _3; | ||
581 | } | ||
582 | public class TextureBuffer extends TextureType { | ||
583 | public TextureDataType _0; | ||
584 | } | ||
585 | } | ||
586 | |||
587 | public class MipMap { | ||
588 | public enum Tag { | ||
589 | Mip, | ||
590 | NoMip, | ||
591 | AutoMip | ||
592 | } | ||
593 | public Tag tag; | ||
594 | |||
595 | public class Mip extends MipMap { | ||
596 | public Integer _0; | ||
597 | public Integer _1; | ||
598 | } | ||
599 | public class AutoMip extends MipMap { | ||
600 | public Integer _0; | ||
601 | public Integer _1; | ||
602 | } | ||
603 | } | ||
604 | |||
605 | public class Filter { | ||
606 | public enum Tag { | ||
607 | Nearest, | ||
608 | Linear, | ||
609 | NearestMipmapNearest, | ||
610 | NearestMipmapLinear, | ||
611 | LinearMipmapNearest, | ||
612 | LinearMipmapLinear | ||
613 | } | ||
614 | public Tag tag; | ||
615 | |||
616 | } | ||
617 | |||
618 | public class EdgeMode { | ||
619 | public enum Tag { | ||
620 | Repeat, | ||
621 | MirroredRepeat, | ||
622 | ClampToEdge, | ||
623 | ClampToBorder | ||
624 | } | ||
625 | public Tag tag; | ||
626 | |||
627 | } | ||
628 | |||
629 | public class ImageSemantic { | ||
630 | public enum Tag { | ||
631 | Depth, | ||
632 | Stencil, | ||
633 | Color | ||
634 | } | ||
635 | public Tag tag; | ||
636 | |||
637 | } | ||
638 | |||
639 | public class ImageRef { | ||
640 | public enum Tag { | ||
641 | TextureImage, | ||
642 | Framebuffer | ||
643 | } | ||
644 | public Tag tag; | ||
645 | |||
646 | public class TextureImage extends ImageRef { | ||
647 | public Integer _0; | ||
648 | public Integer _1; | ||
649 | public int _2; | ||
650 | } | ||
651 | public class Framebuffer extends ImageRef { | ||
652 | public ImageSemantic _0; | ||
653 | } | ||
654 | } | ||
655 | |||
656 | public class ClearImage { | ||
657 | public enum Tag { | ||
658 | ClearImage | ||
659 | } | ||
660 | public Tag tag; | ||
661 | |||
662 | public class ClearImage extends ClearImage { | ||
663 | public ImageSemantic imageSemantic; | ||
664 | public Value clearValue; | ||
665 | } | ||
666 | } | ||
667 | |||
668 | public class Command { | ||
669 | public enum Tag { | ||
670 | SetRasterContext, | ||
671 | SetAccumulationContext, | ||
672 | SetRenderTarget, | ||
673 | SetProgram, | ||
674 | SetSamplerUniform, | ||
675 | SetTexture, | ||
676 | SetSampler, | ||
677 | RenderSlot, | ||
678 | RenderStream, | ||
679 | ClearRenderTarget, | ||
680 | GenerateMipMap, | ||
681 | SaveImage, | ||
682 | LoadImage | ||
683 | } | ||
684 | public Tag tag; | ||
685 | |||
686 | public class SetRasterContext extends Command { | ||
687 | public RasterContext _0; | ||
688 | } | ||
689 | public class SetAccumulationContext extends Command { | ||
690 | public AccumulationContext _0; | ||
691 | } | ||
692 | public class SetRenderTarget extends Command { | ||
693 | public Integer _0; | ||
694 | } | ||
695 | public class SetProgram extends Command { | ||
696 | public Integer _0; | ||
697 | } | ||
698 | public class SetSamplerUniform extends Command { | ||
699 | public String _0; | ||
700 | public Integer _1; | ||
701 | } | ||
702 | public class SetTexture extends Command { | ||
703 | public Integer _0; | ||
704 | public Integer _1; | ||
705 | } | ||
706 | public class SetSampler extends Command { | ||
707 | public Integer _0; | ||
708 | public int _1; | ||
709 | } | ||
710 | public class RenderSlot extends Command { | ||
711 | public Integer _0; | ||
712 | } | ||
713 | public class RenderStream extends Command { | ||
714 | public Integer _0; | ||
715 | } | ||
716 | public class ClearRenderTarget extends Command { | ||
717 | public ArrayList<ClearImage> _0; | ||
718 | } | ||
719 | public class GenerateMipMap extends Command { | ||
720 | public Integer _0; | ||
721 | } | ||
722 | public class SaveImage extends Command { | ||
723 | public Integer _0; | ||
724 | public ImageRef _1; | ||
725 | } | ||
726 | public class LoadImage extends Command { | ||
727 | public ImageRef _0; | ||
728 | public Integer _1; | ||
729 | } | ||
730 | } | ||
731 | |||
732 | public class SamplerDescriptor { | ||
733 | public enum Tag { | ||
734 | SamplerDescriptor | ||
735 | } | ||
736 | public Tag tag; | ||
737 | |||
738 | public class SamplerDescriptor extends SamplerDescriptor { | ||
739 | public EdgeMode samplerWrapS; | ||
740 | public int samplerWrapT; | ||
741 | public int samplerWrapR; | ||
742 | public Filter samplerMinFilter; | ||
743 | public Filter samplerMagFilter; | ||
744 | public Value samplerBorderColor; | ||
745 | public int samplerMinLod; | ||
746 | public int samplerMaxLod; | ||
747 | public Float samplerLodBias; | ||
748 | public int samplerCompareFunc; | ||
749 | } | ||
750 | } | ||
751 | |||
752 | public class TextureDescriptor { | ||
753 | public enum Tag { | ||
754 | TextureDescriptor | ||
755 | } | ||
756 | public Tag tag; | ||
757 | |||
758 | public class TextureDescriptor extends TextureDescriptor { | ||
759 | public TextureType textureType; | ||
760 | public Value textureSize; | ||
761 | public ImageSemantic textureSemantic; | ||
762 | public SamplerDescriptor textureSampler; | ||
763 | public Integer textureBaseLevel; | ||
764 | public Integer textureMaxLevel; | ||
765 | } | ||
766 | } | ||
767 | |||
768 | public class Parameter { | ||
769 | public enum Tag { | ||
770 | Parameter | ||
771 | } | ||
772 | public Tag tag; | ||
773 | |||
774 | public class Parameter extends Parameter { | ||
775 | public String name; | ||
776 | public InputType ty; | ||
777 | } | ||
778 | } | ||
779 | |||
780 | public class Program { | ||
781 | public enum Tag { | ||
782 | Program | ||
783 | } | ||
784 | public Tag tag; | ||
785 | |||
786 | public class Program extends Program { | ||
787 | public HashMap<String, InputType> programUniforms; | ||
788 | public HashMap<String, Parameter> programStreams; | ||
789 | public HashMap<String, InputType> programInTextures; | ||
790 | public ArrayList<Parameter> programOutput; | ||
791 | public String vertexShader; | ||
792 | public int geometryShader; | ||
793 | public String fragmentShader; | ||
794 | } | ||
795 | } | ||
796 | |||
797 | public class Slot { | ||
798 | public enum Tag { | ||
799 | Slot | ||
800 | } | ||
801 | public Tag tag; | ||
802 | |||
803 | public class Slot extends Slot { | ||
804 | public String slotName; | ||
805 | public HashMap<String, InputType> slotStreams; | ||
806 | public HashMap<String, InputType> slotUniforms; | ||
807 | public FetchPrimitive slotPrimitive; | ||
808 | public ArrayList<Integer> slotPrograms; | ||
809 | } | ||
810 | } | ||
811 | |||
812 | public class StreamData { | ||
813 | public enum Tag { | ||
814 | StreamData | ||
815 | } | ||
816 | public Tag tag; | ||
817 | |||
818 | public class StreamData extends StreamData { | ||
819 | public HashMap<String, ArrayValue> streamData; | ||
820 | public HashMap<String, InputType> streamType; | ||
821 | public FetchPrimitive streamPrimitive; | ||
822 | public ArrayList<Integer> streamPrograms; | ||
823 | } | ||
824 | } | ||
825 | |||
826 | public class TargetItem { | ||
827 | public enum Tag { | ||
828 | TargetItem | ||
829 | } | ||
830 | public Tag tag; | ||
831 | |||
832 | public class TargetItem extends TargetItem { | ||
833 | public ImageSemantic targetSemantic; | ||
834 | public int targetRef; | ||
835 | } | ||
836 | } | ||
837 | |||
838 | public class RenderTarget { | ||
839 | public enum Tag { | ||
840 | RenderTarget | ||
841 | } | ||
842 | public Tag tag; | ||
843 | |||
844 | public class RenderTarget extends RenderTarget { | ||
845 | public ArrayList<TargetItem> renderTargets; | ||
846 | } | ||
847 | } | ||
848 | |||
849 | public class Backend { | ||
850 | public enum Tag { | ||
851 | WebGL1, | ||
852 | OpenGL33 | ||
853 | } | ||
854 | public Tag tag; | ||
855 | |||
856 | } | ||
857 | |||
858 | public class Pipeline { | ||
859 | public enum Tag { | ||
860 | Pipeline | ||
861 | } | ||
862 | public Tag tag; | ||
863 | |||
864 | public class Pipeline extends Pipeline { | ||
865 | public String info; | ||
866 | public Backend backend; | ||
867 | public ArrayList<TextureDescriptor> textures; | ||
868 | public ArrayList<SamplerDescriptor> samplers; | ||
869 | public ArrayList<RenderTarget> targets; | ||
870 | public ArrayList<Program> programs; | ||
871 | public ArrayList<Slot> slots; | ||
872 | public ArrayList<StreamData> streams; | ||
873 | public ArrayList<Command> commands; | ||
874 | } | ||
875 | } | ||
876 | |||
877 | } \ No newline at end of file | ||