2 * GPAC - Multimedia Framework C SDK
\r
4 * Copyright (c) Jean Le Feuvre 2000-2005
\r
5 * All rights reserved
\r
7 * This file is part of GPAC / X3D Scene Graph sub-project
\r
9 * GPAC is free software; you can redistribute it and/or modify
\r
10 * it under the terms of the GNU Lesser General Public License as published by
\r
11 * the Free Software Foundation; either version 2, or (at your option)
\r
12 * any later version.
\r
14 * GPAC is distributed in the hope that it will be useful,
\r
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
17 * GNU Lesser General Public License for more details.
\r
19 * You should have received a copy of the GNU Lesser General Public
\r
20 * License along with this library; see the file COPYING. If not, write to
\r
21 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
\r
27 DO NOT MOFIFY - File generated on GMT Thu Aug 07 11:44:22 2008
\r
29 BY X3DGen for GPAC Version 0.4.5-DEV
\r
32 #ifndef _GF_X3D_NODES_H
\r
33 #define _GF_X3D_NODES_H
\r
39 #include <gpac/scenegraph_vrml.h>
\r
44 TAG_X3D_Anchor = GF_NODE_RANGE_FIRST_X3D,
\r
51 TAG_X3D_BooleanFilter,
\r
52 TAG_X3D_BooleanSequencer,
\r
53 TAG_X3D_BooleanToggle,
\r
54 TAG_X3D_BooleanTrigger,
\r
59 TAG_X3D_ColorInterpolator,
\r
63 TAG_X3D_ContourPolyline2D,
\r
65 TAG_X3D_CoordinateDouble,
\r
66 TAG_X3D_Coordinate2D,
\r
67 TAG_X3D_CoordinateInterpolator,
\r
68 TAG_X3D_CoordinateInterpolator2D,
\r
70 TAG_X3D_CylinderSensor,
\r
71 TAG_X3D_DirectionalLight,
\r
73 TAG_X3D_ElevationGrid,
\r
74 TAG_X3D_EspduTransform,
\r
76 TAG_X3D_FillProperties,
\r
79 TAG_X3D_GeoCoordinate,
\r
80 TAG_X3D_GeoElevationGrid,
\r
81 TAG_X3D_GeoLocation,
\r
83 TAG_X3D_GeoMetadata,
\r
85 TAG_X3D_GeoPositionInterpolator,
\r
86 TAG_X3D_GeoTouchSensor,
\r
87 TAG_X3D_GeoViewpoint,
\r
89 TAG_X3D_HAnimDisplacer,
\r
90 TAG_X3D_HAnimHumanoid,
\r
92 TAG_X3D_HAnimSegment,
\r
94 TAG_X3D_ImageTexture,
\r
95 TAG_X3D_IndexedFaceSet,
\r
96 TAG_X3D_IndexedLineSet,
\r
97 TAG_X3D_IndexedTriangleFanSet,
\r
98 TAG_X3D_IndexedTriangleSet,
\r
99 TAG_X3D_IndexedTriangleStripSet,
\r
101 TAG_X3D_IntegerSequencer,
\r
102 TAG_X3D_IntegerTrigger,
\r
104 TAG_X3D_LineProperties,
\r
106 TAG_X3D_LoadSensor,
\r
109 TAG_X3D_MetadataDouble,
\r
110 TAG_X3D_MetadataFloat,
\r
111 TAG_X3D_MetadataInteger,
\r
112 TAG_X3D_MetadataSet,
\r
113 TAG_X3D_MetadataString,
\r
114 TAG_X3D_MovieTexture,
\r
115 TAG_X3D_MultiTexture,
\r
116 TAG_X3D_MultiTextureCoordinate,
\r
117 TAG_X3D_MultiTextureTransform,
\r
118 TAG_X3D_NavigationInfo,
\r
120 TAG_X3D_NormalInterpolator,
\r
121 TAG_X3D_NurbsCurve,
\r
122 TAG_X3D_NurbsCurve2D,
\r
123 TAG_X3D_NurbsOrientationInterpolator,
\r
124 TAG_X3D_NurbsPatchSurface,
\r
125 TAG_X3D_NurbsPositionInterpolator,
\r
127 TAG_X3D_NurbsSurfaceInterpolator,
\r
128 TAG_X3D_NurbsSweptSurface,
\r
129 TAG_X3D_NurbsSwungSurface,
\r
130 TAG_X3D_NurbsTextureCoordinate,
\r
131 TAG_X3D_NurbsTrimmedSurface,
\r
132 TAG_X3D_OrientationInterpolator,
\r
133 TAG_X3D_PixelTexture,
\r
134 TAG_X3D_PlaneSensor,
\r
135 TAG_X3D_PointLight,
\r
137 TAG_X3D_Polyline2D,
\r
138 TAG_X3D_Polypoint2D,
\r
139 TAG_X3D_PositionInterpolator,
\r
140 TAG_X3D_PositionInterpolator2D,
\r
141 TAG_X3D_ProximitySensor,
\r
142 TAG_X3D_ReceiverPdu,
\r
143 TAG_X3D_Rectangle2D,
\r
144 TAG_X3D_ScalarInterpolator,
\r
150 TAG_X3D_SphereSensor,
\r
152 TAG_X3D_StaticGroup,
\r
153 TAG_X3D_StringSensor,
\r
156 TAG_X3D_TextureBackground,
\r
157 TAG_X3D_TextureCoordinate,
\r
158 TAG_X3D_TextureCoordinateGenerator,
\r
159 TAG_X3D_TextureTransform,
\r
160 TAG_X3D_TimeSensor,
\r
161 TAG_X3D_TimeTrigger,
\r
162 TAG_X3D_TouchSensor,
\r
164 TAG_X3D_TransmitterPdu,
\r
165 TAG_X3D_TriangleFanSet,
\r
166 TAG_X3D_TriangleSet,
\r
167 TAG_X3D_TriangleSet2D,
\r
168 TAG_X3D_TriangleStripSet,
\r
170 TAG_X3D_VisibilitySensor,
\r
172 TAG_LastImplementedX3D
\r
175 typedef struct _tagX3DAnchor
\r
179 SFString description; /*exposedField*/
\r
180 MFString parameter; /*exposedField*/
\r
181 MFURL url; /*exposedField*/
\r
182 GF_Node *metadata; /*exposedField*/
\r
186 typedef struct _tagX3DAppearance
\r
189 GF_Node *material; /*exposedField*/
\r
190 GF_Node *texture; /*exposedField*/
\r
191 GF_Node *textureTransform; /*exposedField*/
\r
192 GF_Node *fillProperties; /*exposedField*/
\r
193 GF_Node *lineProperties; /*exposedField*/
\r
194 GF_Node *metadata; /*exposedField*/
\r
198 typedef struct _tagX3DArc2D
\r
201 SFFloat endAngle; /*field*/
\r
202 SFFloat radius; /*field*/
\r
203 SFFloat startAngle; /*field*/
\r
204 GF_Node *metadata; /*exposedField*/
\r
208 typedef struct _tagX3DArcClose2D
\r
211 SFString closureType; /*field*/
\r
212 SFFloat endAngle; /*field*/
\r
213 SFFloat radius; /*field*/
\r
214 SFFloat startAngle; /*field*/
\r
215 GF_Node *metadata; /*exposedField*/
\r
219 typedef struct _tagX3DAudioClip
\r
222 SFString description; /*exposedField*/
\r
223 SFBool loop; /*exposedField*/
\r
224 SFFloat pitch; /*exposedField*/
\r
225 SFTime startTime; /*exposedField*/
\r
226 SFTime stopTime; /*exposedField*/
\r
227 MFURL url; /*exposedField*/
\r
228 SFTime duration_changed; /*eventOut*/
\r
229 SFBool isActive; /*eventOut*/
\r
230 GF_Node *metadata; /*exposedField*/
\r
231 SFTime pauseTime; /*exposedField*/
\r
232 SFTime resumeTime; /*exposedField*/
\r
233 SFTime elapsedTime; /*eventOut*/
\r
234 SFBool isPaused; /*eventOut*/
\r
238 typedef struct _tagX3DBackground
\r
241 SFBool set_bind; /*eventIn*/
\r
242 void (*on_set_bind)(GF_Node *pThis); /*eventInHandler*/
\r
243 MFFloat groundAngle; /*exposedField*/
\r
244 MFColor groundColor; /*exposedField*/
\r
245 MFURL backUrl; /*exposedField*/
\r
246 MFURL bottomUrl; /*exposedField*/
\r
247 MFURL frontUrl; /*exposedField*/
\r
248 MFURL leftUrl; /*exposedField*/
\r
249 MFURL rightUrl; /*exposedField*/
\r
250 MFURL topUrl; /*exposedField*/
\r
251 MFFloat skyAngle; /*exposedField*/
\r
252 MFColor skyColor; /*exposedField*/
\r
253 SFBool isBound; /*eventOut*/
\r
254 GF_Node *metadata; /*exposedField*/
\r
255 SFTime bindTime; /*eventOut*/
\r
259 typedef struct _tagX3DBillboard
\r
263 SFVec3f axisOfRotation; /*exposedField*/
\r
264 GF_Node *metadata; /*exposedField*/
\r
268 typedef struct _tagX3DBooleanFilter
\r
271 SFBool set_boolean; /*eventIn*/
\r
272 void (*on_set_boolean)(GF_Node *pThis); /*eventInHandler*/
\r
273 SFBool inputFalse; /*eventOut*/
\r
274 SFBool inputNegate; /*eventOut*/
\r
275 SFBool inputTrue; /*eventOut*/
\r
276 GF_Node *metadata; /*exposedField*/
\r
280 typedef struct _tagX3DBooleanSequencer
\r
283 SFBool next; /*eventIn*/
\r
284 void (*on_next)(GF_Node *pThis); /*eventInHandler*/
\r
285 SFBool previous; /*eventIn*/
\r
286 void (*on_previous)(GF_Node *pThis); /*eventInHandler*/
\r
287 SFFloat set_fraction; /*eventIn*/
\r
288 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
289 MFFloat key; /*exposedField*/
\r
290 MFBool keyValue; /*exposedField*/
\r
291 SFBool value_changed; /*eventOut*/
\r
292 GF_Node *metadata; /*exposedField*/
\r
293 } X_BooleanSequencer;
\r
296 typedef struct _tagX3DBooleanToggle
\r
299 SFBool set_boolean; /*eventIn*/
\r
300 void (*on_set_boolean)(GF_Node *pThis); /*eventInHandler*/
\r
301 SFBool toggle; /*exposedField*/
\r
302 GF_Node *metadata; /*exposedField*/
\r
306 typedef struct _tagX3DBooleanTrigger
\r
309 SFTime set_triggerTime; /*eventIn*/
\r
310 void (*on_set_triggerTime)(GF_Node *pThis); /*eventInHandler*/
\r
311 SFBool triggerTrue; /*eventOut*/
\r
312 GF_Node *metadata; /*exposedField*/
\r
313 } X_BooleanTrigger;
\r
316 typedef struct _tagX3DBox
\r
319 SFVec3f size; /*field*/
\r
320 GF_Node *metadata; /*exposedField*/
\r
324 typedef struct _tagX3DCircle2D
\r
327 SFFloat radius; /*exposedField*/
\r
328 GF_Node *metadata; /*exposedField*/
\r
332 typedef struct _tagX3DCollision
\r
336 SFBool enabled; /*exposedField*/
\r
337 GF_Node *proxy; /*field*/
\r
338 SFTime collideTime; /*eventOut*/
\r
339 SFBool isActive; /*eventOut*/
\r
340 GF_Node *metadata; /*exposedField*/
\r
344 typedef struct _tagX3DColor
\r
347 MFColor color; /*exposedField*/
\r
348 GF_Node *metadata; /*exposedField*/
\r
352 typedef struct _tagX3DColorInterpolator
\r
355 SFFloat set_fraction; /*eventIn*/
\r
356 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
357 MFFloat key; /*exposedField*/
\r
358 MFColor keyValue; /*exposedField*/
\r
359 SFColor value_changed; /*eventOut*/
\r
360 GF_Node *metadata; /*exposedField*/
\r
361 } X_ColorInterpolator;
\r
364 typedef struct _tagX3DColorRGBA
\r
367 MFColorRGBA color; /*exposedField*/
\r
368 GF_Node *metadata; /*exposedField*/
\r
372 typedef struct _tagX3DCone
\r
375 SFFloat bottomRadius; /*field*/
\r
376 SFFloat height; /*field*/
\r
377 SFBool side; /*field*/
\r
378 SFBool bottom; /*field*/
\r
379 GF_Node *metadata; /*exposedField*/
\r
383 typedef struct _tagX3DContour2D
\r
387 GF_Node *metadata; /*exposedField*/
\r
391 typedef struct _tagX3DContourPolyline2D
\r
394 MFVec2f point; /*exposedField*/
\r
395 GF_Node *metadata; /*exposedField*/
\r
396 } X_ContourPolyline2D;
\r
399 typedef struct _tagX3DCoordinate
\r
402 MFVec3f point; /*exposedField*/
\r
403 GF_Node *metadata; /*exposedField*/
\r
407 typedef struct _tagX3DCoordinateDouble
\r
410 MFVec3d point; /*exposedField*/
\r
411 GF_Node *metadata; /*exposedField*/
\r
412 } X_CoordinateDouble;
\r
415 typedef struct _tagX3DCoordinate2D
\r
418 MFVec2f point; /*exposedField*/
\r
419 GF_Node *metadata; /*exposedField*/
\r
423 typedef struct _tagX3DCoordinateInterpolator
\r
426 SFFloat set_fraction; /*eventIn*/
\r
427 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
428 MFFloat key; /*exposedField*/
\r
429 MFVec3f keyValue; /*exposedField*/
\r
430 MFVec3f value_changed; /*eventOut*/
\r
431 GF_Node *metadata; /*exposedField*/
\r
432 } X_CoordinateInterpolator;
\r
435 typedef struct _tagX3DCoordinateInterpolator2D
\r
438 SFFloat set_fraction; /*eventIn*/
\r
439 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
440 MFFloat key; /*exposedField*/
\r
441 MFVec2f keyValue; /*exposedField*/
\r
442 MFVec2f value_changed; /*eventOut*/
\r
443 GF_Node *metadata; /*exposedField*/
\r
444 } X_CoordinateInterpolator2D;
\r
447 typedef struct _tagX3DCylinder
\r
450 SFBool bottom; /*field*/
\r
451 SFFloat height; /*field*/
\r
452 SFFloat radius; /*field*/
\r
453 SFBool side; /*field*/
\r
454 SFBool top; /*field*/
\r
455 GF_Node *metadata; /*exposedField*/
\r
459 typedef struct _tagX3DCylinderSensor
\r
462 SFBool autoOffset; /*exposedField*/
\r
463 SFFloat diskAngle; /*exposedField*/
\r
464 SFBool enabled; /*exposedField*/
\r
465 SFFloat maxAngle; /*exposedField*/
\r
466 SFFloat minAngle; /*exposedField*/
\r
467 SFFloat offset; /*exposedField*/
\r
468 SFBool isActive; /*eventOut*/
\r
469 SFRotation rotation_changed; /*eventOut*/
\r
470 SFVec3f trackPoint_changed; /*eventOut*/
\r
471 GF_Node *metadata; /*exposedField*/
\r
472 SFString description; /*exposedField*/
\r
473 SFBool isOver; /*eventOut*/
\r
474 } X_CylinderSensor;
\r
477 typedef struct _tagX3DDirectionalLight
\r
480 SFFloat ambientIntensity; /*exposedField*/
\r
481 SFColor color; /*exposedField*/
\r
482 SFVec3f direction; /*exposedField*/
\r
483 SFFloat intensity; /*exposedField*/
\r
484 SFBool on; /*exposedField*/
\r
485 GF_Node *metadata; /*exposedField*/
\r
486 } X_DirectionalLight;
\r
489 typedef struct _tagX3DDisk2D
\r
492 SFFloat innerRadius; /*field*/
\r
493 SFFloat outerRadius; /*field*/
\r
494 GF_Node *metadata; /*exposedField*/
\r
498 typedef struct _tagX3DElevationGrid
\r
501 MFFloat set_height; /*eventIn*/
\r
502 void (*on_set_height)(GF_Node *pThis); /*eventInHandler*/
\r
503 GF_Node *color; /*exposedField*/
\r
504 GF_Node *normal; /*exposedField*/
\r
505 GF_Node *texCoord; /*exposedField*/
\r
506 MFFloat height; /*field*/
\r
507 SFBool ccw; /*field*/
\r
508 SFBool colorPerVertex; /*field*/
\r
509 SFFloat creaseAngle; /*field*/
\r
510 SFBool normalPerVertex; /*field*/
\r
511 SFBool solid; /*field*/
\r
512 SFInt32 xDimension; /*field*/
\r
513 SFFloat xSpacing; /*field*/
\r
514 SFInt32 zDimension; /*field*/
\r
515 SFFloat zSpacing; /*field*/
\r
516 GF_Node *metadata; /*exposedField*/
\r
520 typedef struct _tagX3DExtrusion
\r
523 MFVec2f set_crossSection; /*eventIn*/
\r
524 void (*on_set_crossSection)(GF_Node *pThis); /*eventInHandler*/
\r
525 MFRotation set_orientation; /*eventIn*/
\r
526 void (*on_set_orientation)(GF_Node *pThis); /*eventInHandler*/
\r
527 MFVec2f set_scale; /*eventIn*/
\r
528 void (*on_set_scale)(GF_Node *pThis); /*eventInHandler*/
\r
529 MFVec3f set_spine; /*eventIn*/
\r
530 void (*on_set_spine)(GF_Node *pThis); /*eventInHandler*/
\r
531 SFBool beginCap; /*field*/
\r
532 SFBool ccw; /*field*/
\r
533 SFBool convex; /*field*/
\r
534 SFFloat creaseAngle; /*field*/
\r
535 MFVec2f crossSection; /*field*/
\r
536 SFBool endCap; /*field*/
\r
537 MFRotation orientation; /*field*/
\r
538 MFVec2f scale; /*field*/
\r
539 SFBool solid; /*field*/
\r
540 MFVec3f spine; /*field*/
\r
541 GF_Node *metadata; /*exposedField*/
\r
545 typedef struct _tagX3DFillProperties
\r
548 SFBool filled; /*exposedField*/
\r
549 SFColor hatchColor; /*exposedField*/
\r
550 SFBool hatched; /*exposedField*/
\r
551 SFInt32 hatchStyle; /*exposedField*/
\r
552 } X_FillProperties;
\r
555 typedef struct _tagX3DFog
\r
558 SFColor color; /*exposedField*/
\r
559 SFString fogType; /*exposedField*/
\r
560 SFFloat visibilityRange; /*exposedField*/
\r
561 SFBool set_bind; /*eventIn*/
\r
562 void (*on_set_bind)(GF_Node *pThis); /*eventInHandler*/
\r
563 SFBool isBound; /*eventOut*/
\r
564 GF_Node *metadata; /*exposedField*/
\r
565 SFTime bindTime; /*eventOut*/
\r
569 typedef struct _tagX3DFontStyle
\r
572 MFString family; /*exposedField*/
\r
573 SFBool horizontal; /*exposedField*/
\r
574 MFString justify; /*exposedField*/
\r
575 SFString language; /*exposedField*/
\r
576 SFBool leftToRight; /*exposedField*/
\r
577 SFFloat size; /*exposedField*/
\r
578 SFFloat spacing; /*exposedField*/
\r
579 SFString style; /*exposedField*/
\r
580 SFBool topToBottom; /*exposedField*/
\r
581 GF_Node *metadata; /*exposedField*/
\r
585 typedef struct _tagX3DGroup
\r
589 GF_Node *metadata; /*exposedField*/
\r
593 typedef struct _tagX3DImageTexture
\r
596 MFURL url; /*exposedField*/
\r
597 SFBool repeatS; /*field*/
\r
598 SFBool repeatT; /*field*/
\r
599 GF_Node *metadata; /*exposedField*/
\r
603 typedef struct _tagX3DIndexedFaceSet
\r
606 MFInt32 set_colorIndex; /*eventIn*/
\r
607 void (*on_set_colorIndex)(GF_Node *pThis); /*eventInHandler*/
\r
608 MFInt32 set_coordIndex; /*eventIn*/
\r
609 void (*on_set_coordIndex)(GF_Node *pThis); /*eventInHandler*/
\r
610 MFInt32 set_normalIndex; /*eventIn*/
\r
611 void (*on_set_normalIndex)(GF_Node *pThis); /*eventInHandler*/
\r
612 MFInt32 set_texCoordIndex; /*eventIn*/
\r
613 void (*on_set_texCoordIndex)(GF_Node *pThis); /*eventInHandler*/
\r
614 GF_Node *color; /*exposedField*/
\r
615 GF_Node *coord; /*exposedField*/
\r
616 GF_Node *normal; /*exposedField*/
\r
617 GF_Node *texCoord; /*exposedField*/
\r
618 SFBool ccw; /*field*/
\r
619 MFInt32 colorIndex; /*field*/
\r
620 SFBool colorPerVertex; /*field*/
\r
621 SFBool convex; /*field*/
\r
622 MFInt32 coordIndex; /*field*/
\r
623 SFFloat creaseAngle; /*field*/
\r
624 MFInt32 normalIndex; /*field*/
\r
625 SFBool normalPerVertex; /*field*/
\r
626 SFBool solid; /*field*/
\r
627 MFInt32 texCoordIndex; /*field*/
\r
628 GF_Node *metadata; /*exposedField*/
\r
629 } X_IndexedFaceSet;
\r
632 typedef struct _tagX3DIndexedLineSet
\r
635 MFInt32 set_colorIndex; /*eventIn*/
\r
636 void (*on_set_colorIndex)(GF_Node *pThis); /*eventInHandler*/
\r
637 MFInt32 set_coordIndex; /*eventIn*/
\r
638 void (*on_set_coordIndex)(GF_Node *pThis); /*eventInHandler*/
\r
639 GF_Node *color; /*exposedField*/
\r
640 GF_Node *coord; /*exposedField*/
\r
641 MFInt32 colorIndex; /*field*/
\r
642 SFBool colorPerVertex; /*field*/
\r
643 MFInt32 coordIndex; /*field*/
\r
644 GF_Node *metadata; /*exposedField*/
\r
645 } X_IndexedLineSet;
\r
648 typedef struct _tagX3DIndexedTriangleFanSet
\r
651 MFInt32 set_index; /*eventIn*/
\r
652 void (*on_set_index)(GF_Node *pThis); /*eventInHandler*/
\r
653 GF_Node *color; /*exposedField*/
\r
654 GF_Node *coord; /*exposedField*/
\r
655 GF_Node *normal; /*exposedField*/
\r
656 GF_Node *texCoord; /*exposedField*/
\r
657 SFBool ccw; /*field*/
\r
658 SFBool colorPerVertex; /*field*/
\r
659 SFBool normalPerVertex; /*field*/
\r
660 SFBool solid; /*field*/
\r
661 MFInt32 index; /*field*/
\r
662 GF_Node *metadata; /*exposedField*/
\r
663 } X_IndexedTriangleFanSet;
\r
666 typedef struct _tagX3DIndexedTriangleSet
\r
669 MFInt32 set_index; /*eventIn*/
\r
670 void (*on_set_index)(GF_Node *pThis); /*eventInHandler*/
\r
671 GF_Node *color; /*exposedField*/
\r
672 GF_Node *coord; /*exposedField*/
\r
673 GF_Node *normal; /*exposedField*/
\r
674 GF_Node *texCoord; /*exposedField*/
\r
675 SFBool ccw; /*field*/
\r
676 SFBool colorPerVertex; /*field*/
\r
677 SFBool normalPerVertex; /*field*/
\r
678 SFBool solid; /*field*/
\r
679 MFInt32 index; /*field*/
\r
680 GF_Node *metadata; /*exposedField*/
\r
681 } X_IndexedTriangleSet;
\r
684 typedef struct _tagX3DIndexedTriangleStripSet
\r
687 MFInt32 set_index; /*eventIn*/
\r
688 void (*on_set_index)(GF_Node *pThis); /*eventInHandler*/
\r
689 GF_Node *color; /*exposedField*/
\r
690 GF_Node *coord; /*exposedField*/
\r
691 SFFloat creaseAngle; /*exposedField*/
\r
692 GF_Node *normal; /*exposedField*/
\r
693 GF_Node *texCoord; /*exposedField*/
\r
694 SFBool ccw; /*field*/
\r
695 SFBool normalPerVertex; /*field*/
\r
696 SFBool solid; /*field*/
\r
697 MFInt32 index; /*field*/
\r
698 GF_Node *metadata; /*exposedField*/
\r
699 } X_IndexedTriangleStripSet;
\r
702 typedef struct _tagX3DInline
\r
705 MFURL url; /*exposedField*/
\r
706 GF_Node *metadata; /*exposedField*/
\r
707 SFBool load; /*exposedField*/
\r
711 typedef struct _tagX3DIntegerSequencer
\r
714 SFBool next; /*eventIn*/
\r
715 void (*on_next)(GF_Node *pThis); /*eventInHandler*/
\r
716 SFBool previous; /*eventIn*/
\r
717 void (*on_previous)(GF_Node *pThis); /*eventInHandler*/
\r
718 SFFloat set_fraction; /*eventIn*/
\r
719 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
720 MFFloat key; /*exposedField*/
\r
721 MFInt32 keyValue; /*exposedField*/
\r
722 SFInt32 value_changed; /*eventOut*/
\r
723 GF_Node *metadata; /*exposedField*/
\r
724 } X_IntegerSequencer;
\r
727 typedef struct _tagX3DIntegerTrigger
\r
730 SFBool set_boolean; /*eventIn*/
\r
731 void (*on_set_boolean)(GF_Node *pThis); /*eventInHandler*/
\r
732 SFInt32 integerKey; /*exposedField*/
\r
733 SFInt32 triggerValue; /*eventOut*/
\r
734 GF_Node *metadata; /*exposedField*/
\r
735 } X_IntegerTrigger;
\r
738 typedef struct _tagX3DKeySensor
\r
741 SFBool enabled; /*exposedField*/
\r
742 SFInt32 actionKeyPress; /*eventOut*/
\r
743 SFInt32 actionKeyRelease; /*eventOut*/
\r
744 SFBool altKey; /*eventOut*/
\r
745 SFBool controlKey; /*eventOut*/
\r
746 SFBool isActive; /*eventOut*/
\r
747 SFString keyPress; /*eventOut*/
\r
748 SFString keyRelease; /*eventOut*/
\r
749 SFBool shiftKey; /*eventOut*/
\r
750 GF_Node *metadata; /*exposedField*/
\r
754 typedef struct _tagX3DLineProperties
\r
757 SFBool applied; /*exposedField*/
\r
758 SFInt32 linetype; /*exposedField*/
\r
759 SFFloat linewidthScaleFactor; /*exposedField*/
\r
760 GF_Node *metadata; /*exposedField*/
\r
761 } X_LineProperties;
\r
764 typedef struct _tagX3DLineSet
\r
767 GF_Node *color; /*exposedField*/
\r
768 GF_Node *coord; /*exposedField*/
\r
769 MFInt32 vertexCount; /*exposedField*/
\r
770 GF_Node *metadata; /*exposedField*/
\r
774 typedef struct _tagX3DLOD
\r
778 SFVec3f center; /*field*/
\r
779 MFFloat range; /*field*/
\r
780 GF_Node *metadata; /*exposedField*/
\r
784 typedef struct _tagX3DMaterial
\r
787 SFFloat ambientIntensity; /*exposedField*/
\r
788 SFColor diffuseColor; /*exposedField*/
\r
789 SFColor emissiveColor; /*exposedField*/
\r
790 SFFloat shininess; /*exposedField*/
\r
791 SFColor specularColor; /*exposedField*/
\r
792 SFFloat transparency; /*exposedField*/
\r
793 GF_Node *metadata; /*exposedField*/
\r
797 typedef struct _tagX3DMetadataDouble
\r
800 SFString name; /*exposedField*/
\r
801 SFString reference; /*exposedField*/
\r
802 MFDouble value; /*exposedField*/
\r
803 GF_Node *metadata; /*exposedField*/
\r
804 } X_MetadataDouble;
\r
807 typedef struct _tagX3DMetadataFloat
\r
810 SFString name; /*exposedField*/
\r
811 SFString reference; /*exposedField*/
\r
812 MFFloat value; /*exposedField*/
\r
813 GF_Node *metadata; /*exposedField*/
\r
817 typedef struct _tagX3DMetadataInteger
\r
820 SFString name; /*exposedField*/
\r
821 SFString reference; /*exposedField*/
\r
822 MFInt32 value; /*exposedField*/
\r
823 GF_Node *metadata; /*exposedField*/
\r
824 } X_MetadataInteger;
\r
827 typedef struct _tagX3DMetadataSet
\r
830 SFString name; /*exposedField*/
\r
831 SFString reference; /*exposedField*/
\r
832 GF_ChildNodeItem *value; /*exposedField*/
\r
833 GF_Node *metadata; /*exposedField*/
\r
837 typedef struct _tagX3DMetadataString
\r
840 SFString name; /*exposedField*/
\r
841 SFString reference; /*exposedField*/
\r
842 MFString value; /*exposedField*/
\r
843 GF_Node *metadata; /*exposedField*/
\r
844 } X_MetadataString;
\r
847 typedef struct _tagX3DMovieTexture
\r
850 SFBool loop; /*exposedField*/
\r
851 SFFloat speed; /*exposedField*/
\r
852 SFTime startTime; /*exposedField*/
\r
853 SFTime stopTime; /*exposedField*/
\r
854 MFURL url; /*exposedField*/
\r
855 SFBool repeatS; /*field*/
\r
856 SFBool repeatT; /*field*/
\r
857 SFTime duration_changed; /*eventOut*/
\r
858 SFBool isActive; /*eventOut*/
\r
859 GF_Node *metadata; /*exposedField*/
\r
860 SFTime resumeTime; /*exposedField*/
\r
861 SFTime pauseTime; /*exposedField*/
\r
862 SFTime elapsedTime; /*eventOut*/
\r
863 SFBool isPaused; /*eventOut*/
\r
867 typedef struct _tagX3DMultiTexture
\r
870 SFFloat alpha; /*exposedField*/
\r
871 SFColor color; /*exposedField*/
\r
872 MFString function; /*exposedField*/
\r
873 MFString mode; /*exposedField*/
\r
874 MFString source; /*exposedField*/
\r
875 GF_ChildNodeItem *texture; /*exposedField*/
\r
876 GF_Node *metadata; /*exposedField*/
\r
880 typedef struct _tagX3DMultiTextureCoordinate
\r
883 GF_ChildNodeItem *texCoord; /*MultiTextureCoordinate*/
\r
884 GF_Node *metadata; /*exposedField*/
\r
885 } X_MultiTextureCoordinate;
\r
888 typedef struct _tagX3DMultiTextureTransform
\r
891 GF_ChildNodeItem *textureTransform; /*exposedField*/
\r
892 GF_Node *metadata; /*exposedField*/
\r
893 } X_MultiTextureTransform;
\r
896 typedef struct _tagX3DNavigationInfo
\r
899 SFBool set_bind; /*eventIn*/
\r
900 void (*on_set_bind)(GF_Node *pThis); /*eventInHandler*/
\r
901 MFFloat avatarSize; /*exposedField*/
\r
902 SFBool headlight; /*exposedField*/
\r
903 SFFloat speed; /*exposedField*/
\r
904 MFString type; /*exposedField*/
\r
905 SFFloat visibilityLimit; /*exposedField*/
\r
906 SFBool isBound; /*eventOut*/
\r
907 GF_Node *metadata; /*exposedField*/
\r
908 MFString transitionType; /*exposedField*/
\r
909 SFTime bindTime; /*eventOut*/
\r
910 } X_NavigationInfo;
\r
913 typedef struct _tagX3DNormal
\r
916 MFVec3f vector; /*exposedField*/
\r
917 GF_Node *metadata; /*exposedField*/
\r
921 typedef struct _tagX3DNormalInterpolator
\r
924 SFFloat set_fraction; /*eventIn*/
\r
925 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
926 MFFloat key; /*exposedField*/
\r
927 MFVec3f keyValue; /*exposedField*/
\r
928 MFVec3f value_changed; /*eventOut*/
\r
929 GF_Node *metadata; /*exposedField*/
\r
930 } X_NormalInterpolator;
\r
933 typedef struct _tagX3DOrientationInterpolator
\r
936 SFFloat set_fraction; /*eventIn*/
\r
937 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
938 MFFloat key; /*exposedField*/
\r
939 MFRotation keyValue; /*exposedField*/
\r
940 SFRotation value_changed; /*eventOut*/
\r
941 GF_Node *metadata; /*exposedField*/
\r
942 } X_OrientationInterpolator;
\r
945 typedef struct _tagX3DPixelTexture
\r
948 SFImage image; /*exposedField*/
\r
949 SFBool repeatS; /*field*/
\r
950 SFBool repeatT; /*field*/
\r
951 GF_Node *metadata; /*exposedField*/
\r
955 typedef struct _tagX3DPlaneSensor
\r
958 SFBool autoOffset; /*exposedField*/
\r
959 SFBool enabled; /*exposedField*/
\r
960 SFVec2f maxPosition; /*exposedField*/
\r
961 SFVec2f minPosition; /*exposedField*/
\r
962 SFVec3f offset; /*exposedField*/
\r
963 SFBool isActive; /*eventOut*/
\r
964 SFVec3f trackPoint_changed; /*eventOut*/
\r
965 SFVec3f translation_changed; /*eventOut*/
\r
966 GF_Node *metadata; /*exposedField*/
\r
967 SFString description; /*exposedField*/
\r
968 SFBool isOver; /*eventOut*/
\r
972 typedef struct _tagX3DPointLight
\r
975 SFFloat ambientIntensity; /*exposedField*/
\r
976 SFVec3f attenuation; /*exposedField*/
\r
977 SFColor color; /*exposedField*/
\r
978 SFFloat intensity; /*exposedField*/
\r
979 SFVec3f location; /*exposedField*/
\r
980 SFBool on; /*exposedField*/
\r
981 SFFloat radius; /*exposedField*/
\r
982 GF_Node *metadata; /*exposedField*/
\r
986 typedef struct _tagX3DPointSet
\r
989 GF_Node *color; /*exposedField*/
\r
990 GF_Node *coord; /*exposedField*/
\r
991 GF_Node *metadata; /*exposedField*/
\r
995 typedef struct _tagX3DPolyline2D
\r
998 MFVec2f lineSegments; /*exposedField*/
\r
999 GF_Node *metadata; /*exposedField*/
\r
1003 typedef struct _tagX3DPolypoint2D
\r
1006 MFVec2f point; /*exposedField*/
\r
1007 GF_Node *metadata; /*exposedField*/
\r
1011 typedef struct _tagX3DPositionInterpolator
\r
1014 SFFloat set_fraction; /*eventIn*/
\r
1015 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
1016 MFFloat key; /*exposedField*/
\r
1017 MFVec3f keyValue; /*exposedField*/
\r
1018 SFVec3f value_changed; /*eventOut*/
\r
1019 GF_Node *metadata; /*exposedField*/
\r
1020 } X_PositionInterpolator;
\r
1023 typedef struct _tagX3DPositionInterpolator2D
\r
1026 SFFloat set_fraction; /*eventIn*/
\r
1027 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
1028 MFFloat key; /*exposedField*/
\r
1029 MFVec2f keyValue; /*exposedField*/
\r
1030 SFVec2f value_changed; /*eventOut*/
\r
1031 GF_Node *metadata; /*exposedField*/
\r
1032 } X_PositionInterpolator2D;
\r
1035 typedef struct _tagX3DProximitySensor
\r
1038 SFVec3f center; /*exposedField*/
\r
1039 SFVec3f size; /*exposedField*/
\r
1040 SFBool enabled; /*exposedField*/
\r
1041 SFBool isActive; /*eventOut*/
\r
1042 SFVec3f position_changed; /*eventOut*/
\r
1043 SFRotation orientation_changed; /*eventOut*/
\r
1044 SFTime enterTime; /*eventOut*/
\r
1045 SFTime exitTime; /*eventOut*/
\r
1046 GF_Node *metadata; /*exposedField*/
\r
1047 SFVec3f centerOfRotation_changed; /*eventOut*/
\r
1048 } X_ProximitySensor;
\r
1051 typedef struct _tagX3DRectangle2D
\r
1054 SFVec2f size; /*field*/
\r
1055 GF_Node *metadata; /*exposedField*/
\r
1059 typedef struct _tagX3DScalarInterpolator
\r
1062 SFFloat set_fraction; /*eventIn*/
\r
1063 void (*on_set_fraction)(GF_Node *pThis); /*eventInHandler*/
\r
1064 MFFloat key; /*exposedField*/
\r
1065 MFFloat keyValue; /*exposedField*/
\r
1066 SFFloat value_changed; /*eventOut*/
\r
1067 GF_Node *metadata; /*exposedField*/
\r
1068 } X_ScalarInterpolator;
\r
1071 typedef struct _tagX3DScript
\r
1074 MFScript url; /*exposedField*/
\r
1075 SFBool directOutput; /*field*/
\r
1076 SFBool mustEvaluate; /*field*/
\r
1077 GF_Node *metadata; /*exposedField*/
\r
1081 typedef struct _tagX3DShape
\r
1084 GF_Node *appearance; /*exposedField*/
\r
1085 GF_Node *geometry; /*exposedField*/
\r
1086 GF_Node *metadata; /*exposedField*/
\r
1090 typedef struct _tagX3DSound
\r
1093 SFVec3f direction; /*exposedField*/
\r
1094 SFFloat intensity; /*exposedField*/
\r
1095 SFVec3f location; /*exposedField*/
\r
1096 SFFloat maxBack; /*exposedField*/
\r
1097 SFFloat maxFront; /*exposedField*/
\r
1098 SFFloat minBack; /*exposedField*/
\r
1099 SFFloat minFront; /*exposedField*/
\r
1100 SFFloat priority; /*exposedField*/
\r
1101 GF_Node *source; /*exposedField*/
\r
1102 SFBool spatialize; /*field*/
\r
1103 GF_Node *metadata; /*exposedField*/
\r
1107 typedef struct _tagX3DSphere
\r
1110 SFFloat radius; /*field*/
\r
1111 GF_Node *metadata; /*exposedField*/
\r
1115 typedef struct _tagX3DSphereSensor
\r
1118 SFBool autoOffset; /*exposedField*/
\r
1119 SFBool enabled; /*exposedField*/
\r
1120 SFRotation offset; /*exposedField*/
\r
1121 SFBool isActive; /*eventOut*/
\r
1122 SFRotation rotation_changed; /*eventOut*/
\r
1123 SFVec3f trackPoint_changed; /*eventOut*/
\r
1124 GF_Node *metadata; /*exposedField*/
\r
1125 SFString description; /*exposedField*/
\r
1126 SFBool isOver; /*eventOut*/
\r
1130 typedef struct _tagX3DSpotLight
\r
1133 SFFloat ambientIntensity; /*exposedField*/
\r
1134 SFVec3f attenuation; /*exposedField*/
\r
1135 SFFloat beamWidth; /*exposedField*/
\r
1136 SFColor color; /*exposedField*/
\r
1137 SFFloat cutOffAngle; /*exposedField*/
\r
1138 SFVec3f direction; /*exposedField*/
\r
1139 SFFloat intensity; /*exposedField*/
\r
1140 SFVec3f location; /*exposedField*/
\r
1141 SFBool on; /*exposedField*/
\r
1142 SFFloat radius; /*exposedField*/
\r
1143 GF_Node *metadata; /*exposedField*/
\r
1147 typedef struct _tagX3DStaticGroup
\r
1151 GF_Node *metadata; /*exposedField*/
\r
1155 typedef struct _tagX3DStringSensor
\r
1158 SFBool deletionAllowed; /*exposedField*/
\r
1159 SFBool enabled; /*exposedField*/
\r
1160 SFString enteredText; /*eventOut*/
\r
1161 SFString finalText; /*eventOut*/
\r
1162 SFBool isActive; /*eventOut*/
\r
1163 GF_Node *metadata; /*exposedField*/
\r
1167 typedef struct _tagX3DSwitch
\r
1171 SFInt32 whichChoice; /*exposedField*/
\r
1172 GF_Node *metadata; /*exposedField*/
\r
1176 typedef struct _tagX3DText
\r
1179 MFString string; /*exposedField*/
\r
1180 MFFloat length; /*exposedField*/
\r
1181 GF_Node *fontStyle; /*exposedField*/
\r
1182 SFFloat maxExtent; /*exposedField*/
\r
1183 GF_Node *metadata; /*exposedField*/
\r
1187 typedef struct _tagX3DTextureBackground
\r
1190 SFBool set_bind; /*eventIn*/
\r
1191 void (*on_set_bind)(GF_Node *pThis); /*eventInHandler*/
\r
1192 MFFloat groundAngle; /*exposedField*/
\r
1193 MFColor groundColor; /*exposedField*/
\r
1194 GF_Node *backTexture; /*exposedField*/
\r
1195 GF_Node *bottomTexture; /*exposedField*/
\r
1196 GF_Node *frontTexture; /*exposedField*/
\r
1197 GF_Node *leftTexture; /*exposedField*/
\r
1198 GF_Node *rightTexture; /*exposedField*/
\r
1199 GF_Node *topTexture; /*exposedField*/
\r
1200 MFFloat skyAngle; /*exposedField*/
\r
1201 MFColor skyColor; /*exposedField*/
\r
1202 MFFloat transparency; /*exposedField*/
\r
1203 SFTime bindTime; /*exposedField*/
\r
1204 SFBool isBound; /*exposedField*/
\r
1205 GF_Node *metadata; /*exposedField*/
\r
1206 } X_TextureBackground;
\r
1209 typedef struct _tagX3DTextureCoordinate
\r
1212 MFVec2f point; /*exposedField*/
\r
1213 GF_Node *metadata; /*exposedField*/
\r
1214 } X_TextureCoordinate;
\r
1217 typedef struct _tagX3DTextureCoordinateGenerator
\r
1220 SFString mode; /*exposedField*/
\r
1221 MFFloat parameter; /*TextureCoordinateGenerator*/
\r
1222 GF_Node *metadata; /*exposedField*/
\r
1223 } X_TextureCoordinateGenerator;
\r
1226 typedef struct _tagX3DTextureTransform
\r
1229 SFVec2f center; /*exposedField*/
\r
1230 SFFloat rotation; /*exposedField*/
\r
1231 SFVec2f scale; /*exposedField*/
\r
1232 SFVec2f translation; /*exposedField*/
\r
1233 GF_Node *metadata; /*exposedField*/
\r
1234 } X_TextureTransform;
\r
1237 typedef struct _tagX3DTimeSensor
\r
1240 SFTime cycleInterval; /*exposedField*/
\r
1241 SFBool enabled; /*exposedField*/
\r
1242 SFBool loop; /*exposedField*/
\r
1243 SFTime startTime; /*exposedField*/
\r
1244 SFTime stopTime; /*exposedField*/
\r
1245 SFTime cycleTime; /*eventOut*/
\r
1246 SFFloat fraction_changed; /*eventOut*/
\r
1247 SFBool isActive; /*eventOut*/
\r
1248 SFTime time; /*eventOut*/
\r
1249 GF_Node *metadata; /*exposedField*/
\r
1250 SFTime pauseTime; /*exposedField*/
\r
1251 SFTime resumeTime; /*exposedField*/
\r
1252 SFTime elapsedTime; /*eventOut*/
\r
1253 SFBool isPaused; /*eventOut*/
\r
1257 typedef struct _tagX3DTimeTrigger
\r
1260 SFBool set_boolean; /*eventIn*/
\r
1261 void (*on_set_boolean)(GF_Node *pThis); /*eventInHandler*/
\r
1262 SFTime triggerTime; /*eventOut*/
\r
1263 GF_Node *metadata; /*exposedField*/
\r
1267 typedef struct _tagX3DTouchSensor
\r
1270 SFBool enabled; /*exposedField*/
\r
1271 SFVec3f hitNormal_changed; /*eventOut*/
\r
1272 SFVec3f hitPoint_changed; /*eventOut*/
\r
1273 SFVec2f hitTexCoord_changed; /*eventOut*/
\r
1274 SFBool isActive; /*eventOut*/
\r
1275 SFBool isOver; /*eventOut*/
\r
1276 SFTime touchTime; /*eventOut*/
\r
1277 GF_Node *metadata; /*exposedField*/
\r
1278 SFString description; /*exposedField*/
\r
1282 typedef struct _tagX3DTransform
\r
1286 SFVec3f center; /*exposedField*/
\r
1287 SFRotation rotation; /*exposedField*/
\r
1288 SFVec3f scale; /*exposedField*/
\r
1289 SFRotation scaleOrientation; /*exposedField*/
\r
1290 SFVec3f translation; /*exposedField*/
\r
1291 GF_Node *metadata; /*exposedField*/
\r
1295 typedef struct _tagX3DTriangleFanSet
\r
1298 GF_Node *color; /*exposedField*/
\r
1299 GF_Node *coord; /*exposedField*/
\r
1300 MFInt32 fanCount; /*exposedField*/
\r
1301 GF_Node *normal; /*exposedField*/
\r
1302 GF_Node *texCoord; /*exposedField*/
\r
1303 SFBool ccw; /*field*/
\r
1304 SFBool colorPerVertex; /*field*/
\r
1305 SFBool normalPerVertex; /*field*/
\r
1306 SFBool solid; /*field*/
\r
1307 GF_Node *metadata; /*exposedField*/
\r
1308 } X_TriangleFanSet;
\r
1311 typedef struct _tagX3DTriangleSet
\r
1314 GF_Node *color; /*exposedField*/
\r
1315 GF_Node *coord; /*exposedField*/
\r
1316 GF_Node *normal; /*exposedField*/
\r
1317 GF_Node *texCoord; /*exposedField*/
\r
1318 SFBool ccw; /*field*/
\r
1319 SFBool colorPerVertex; /*field*/
\r
1320 SFBool normalPerVertex; /*field*/
\r
1321 SFBool solid; /*field*/
\r
1322 GF_Node *metadata; /*exposedField*/
\r
1326 typedef struct _tagX3DTriangleSet2D
\r
1329 MFVec2f vertices; /*exposedField*/
\r
1330 GF_Node *metadata; /*exposedField*/
\r
1331 } X_TriangleSet2D;
\r
1334 typedef struct _tagX3DTriangleStripSet
\r
1337 GF_Node *color; /*exposedField*/
\r
1338 GF_Node *coord; /*exposedField*/
\r
1339 GF_Node *normal; /*exposedField*/
\r
1340 MFInt32 stripCount; /*exposedField*/
\r
1341 GF_Node *texCoord; /*exposedField*/
\r
1342 SFBool ccw; /*field*/
\r
1343 SFBool colorPerVertex; /*field*/
\r
1344 SFBool normalPerVertex; /*field*/
\r
1345 SFBool solid; /*field*/
\r
1346 GF_Node *metadata; /*exposedField*/
\r
1347 } X_TriangleStripSet;
\r
1350 typedef struct _tagX3DViewpoint
\r
1353 SFBool set_bind; /*eventIn*/
\r
1354 void (*on_set_bind)(GF_Node *pThis); /*eventInHandler*/
\r
1355 SFFloat fieldOfView; /*exposedField*/
\r
1356 SFBool jump; /*exposedField*/
\r
1357 SFRotation orientation; /*exposedField*/
\r
1358 SFVec3f position; /*exposedField*/
\r
1359 SFString description; /*field*/
\r
1360 SFTime bindTime; /*eventOut*/
\r
1361 SFBool isBound; /*eventOut*/
\r
1362 GF_Node *metadata; /*exposedField*/
\r
1363 SFVec3f centerOfRotation; /*exposedField*/
\r
1367 typedef struct _tagX3DVisibilitySensor
\r
1370 SFVec3f center; /*exposedField*/
\r
1371 SFBool enabled; /*exposedField*/
\r
1372 SFVec3f size; /*exposedField*/
\r
1373 SFTime enterTime; /*eventOut*/
\r
1374 SFTime exitTime; /*eventOut*/
\r
1375 SFBool isActive; /*eventOut*/
\r
1376 GF_Node *metadata; /*exposedField*/
\r
1377 } X_VisibilitySensor;
\r
1380 typedef struct _tagX3DWorldInfo
\r
1383 MFString info; /*field*/
\r
1384 SFString title; /*field*/
\r
1385 GF_Node *metadata; /*exposedField*/
\r
1389 #ifdef __cplusplus
\r
1395 #endif /*_GF_X3D_NODES_H*/
\r