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 / BIFS codec 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:43:26 2008
\r
29 BY MPEG4Gen for GPAC Version 0.4.5-DEV
\r
35 #include <gpac/nodes_mpeg4.h>
\r
39 u32 ALL_GetNodeType(const u32 *table, const u32 count, u32 NodeTag, u32 Version);
\r
43 /* NDT BIFS Version 1 */
\r
45 #define SFWorldNode_V1_NUMBITS 7
\r
46 #define SFWorldNode_V1_Count 100
\r
48 static const u32 SFWorldNode_V1_TypeToTag[100] = {
\r
49 TAG_MPEG4_Anchor, TAG_MPEG4_AnimationStream, TAG_MPEG4_Appearance, TAG_MPEG4_AudioBuffer, TAG_MPEG4_AudioClip, TAG_MPEG4_AudioDelay, TAG_MPEG4_AudioFX, TAG_MPEG4_AudioMix, TAG_MPEG4_AudioSource, TAG_MPEG4_AudioSwitch, TAG_MPEG4_Background, TAG_MPEG4_Background2D, TAG_MPEG4_Billboard, TAG_MPEG4_Bitmap, TAG_MPEG4_Box, TAG_MPEG4_Circle, TAG_MPEG4_Collision, TAG_MPEG4_Color, TAG_MPEG4_ColorInterpolator, TAG_MPEG4_CompositeTexture2D, TAG_MPEG4_CompositeTexture3D, TAG_MPEG4_Conditional, TAG_MPEG4_Cone, TAG_MPEG4_Coordinate, TAG_MPEG4_Coordinate2D, TAG_MPEG4_CoordinateInterpolator, TAG_MPEG4_CoordinateInterpolator2D, TAG_MPEG4_Curve2D, TAG_MPEG4_Cylinder, TAG_MPEG4_CylinderSensor, TAG_MPEG4_DirectionalLight, TAG_MPEG4_DiscSensor, TAG_MPEG4_ElevationGrid, TAG_MPEG4_Expression, TAG_MPEG4_Extrusion, TAG_MPEG4_Face, TAG_MPEG4_FaceDefMesh, TAG_MPEG4_FaceDefTables, TAG_MPEG4_FaceDefTransform, TAG_MPEG4_FAP, TAG_MPEG4_FDP, TAG_MPEG4_FIT, TAG_MPEG4_Fog, TAG_MPEG4_FontStyle, TAG_MPEG4_Form, TAG_MPEG4_Group, TAG_MPEG4_ImageTexture, TAG_MPEG4_IndexedFaceSet, TAG_MPEG4_IndexedFaceSet2D, TAG_MPEG4_IndexedLineSet, TAG_MPEG4_IndexedLineSet2D, TAG_MPEG4_Inline, TAG_MPEG4_LOD, TAG_MPEG4_Layer2D, TAG_MPEG4_Layer3D, TAG_MPEG4_Layout, TAG_MPEG4_LineProperties, TAG_MPEG4_ListeningPoint, TAG_MPEG4_Material, TAG_MPEG4_Material2D, TAG_MPEG4_MovieTexture, TAG_MPEG4_NavigationInfo, TAG_MPEG4_Normal, TAG_MPEG4_NormalInterpolator, TAG_MPEG4_OrderedGroup, TAG_MPEG4_OrientationInterpolator, TAG_MPEG4_PixelTexture, TAG_MPEG4_PlaneSensor, TAG_MPEG4_PlaneSensor2D, TAG_MPEG4_PointLight, TAG_MPEG4_PointSet, TAG_MPEG4_PointSet2D, TAG_MPEG4_PositionInterpolator, TAG_MPEG4_PositionInterpolator2D, TAG_MPEG4_ProximitySensor2D, TAG_MPEG4_ProximitySensor, TAG_MPEG4_QuantizationParameter, TAG_MPEG4_Rectangle, TAG_MPEG4_ScalarInterpolator, TAG_MPEG4_Script, TAG_MPEG4_Shape, TAG_MPEG4_Sound, TAG_MPEG4_Sound2D, TAG_MPEG4_Sphere, TAG_MPEG4_SphereSensor, TAG_MPEG4_SpotLight, TAG_MPEG4_Switch, TAG_MPEG4_TermCap, TAG_MPEG4_Text, TAG_MPEG4_TextureCoordinate, TAG_MPEG4_TextureTransform, TAG_MPEG4_TimeSensor, TAG_MPEG4_TouchSensor, TAG_MPEG4_Transform, TAG_MPEG4_Transform2D, TAG_MPEG4_Valuator, TAG_MPEG4_Viewpoint, TAG_MPEG4_VisibilitySensor, TAG_MPEG4_Viseme, TAG_MPEG4_WorldInfo
\r
52 #define SF3DNode_V1_NUMBITS 6
\r
53 #define SF3DNode_V1_Count 52
\r
55 static const u32 SF3DNode_V1_TypeToTag[52] = {
\r
56 TAG_MPEG4_Anchor, TAG_MPEG4_AnimationStream, TAG_MPEG4_Background, TAG_MPEG4_Background2D, TAG_MPEG4_Billboard, TAG_MPEG4_Collision, TAG_MPEG4_ColorInterpolator, TAG_MPEG4_Conditional, TAG_MPEG4_CoordinateInterpolator, TAG_MPEG4_CoordinateInterpolator2D, TAG_MPEG4_CylinderSensor, TAG_MPEG4_DirectionalLight, TAG_MPEG4_DiscSensor, TAG_MPEG4_Face, TAG_MPEG4_Fog, TAG_MPEG4_Form, TAG_MPEG4_Group, TAG_MPEG4_Inline, TAG_MPEG4_LOD, TAG_MPEG4_Layer2D, TAG_MPEG4_Layer3D, TAG_MPEG4_Layout, TAG_MPEG4_ListeningPoint, TAG_MPEG4_NavigationInfo, TAG_MPEG4_NormalInterpolator, TAG_MPEG4_OrderedGroup, TAG_MPEG4_OrientationInterpolator, TAG_MPEG4_PlaneSensor, TAG_MPEG4_PlaneSensor2D, TAG_MPEG4_PointLight, TAG_MPEG4_PositionInterpolator, TAG_MPEG4_PositionInterpolator2D, TAG_MPEG4_ProximitySensor2D, TAG_MPEG4_ProximitySensor, TAG_MPEG4_QuantizationParameter, TAG_MPEG4_ScalarInterpolator, TAG_MPEG4_Script, TAG_MPEG4_Shape, TAG_MPEG4_Sound, TAG_MPEG4_Sound2D, TAG_MPEG4_SphereSensor, TAG_MPEG4_SpotLight, TAG_MPEG4_Switch, TAG_MPEG4_TermCap, TAG_MPEG4_TimeSensor, TAG_MPEG4_TouchSensor, TAG_MPEG4_Transform, TAG_MPEG4_Transform2D, TAG_MPEG4_Valuator, TAG_MPEG4_Viewpoint, TAG_MPEG4_VisibilitySensor, TAG_MPEG4_WorldInfo
\r
59 #define SF2DNode_V1_NUMBITS 5
\r
60 #define SF2DNode_V1_Count 31
\r
62 static const u32 SF2DNode_V1_TypeToTag[31] = {
\r
63 TAG_MPEG4_Anchor, TAG_MPEG4_AnimationStream, TAG_MPEG4_Background2D, TAG_MPEG4_ColorInterpolator, TAG_MPEG4_Conditional, TAG_MPEG4_CoordinateInterpolator2D, TAG_MPEG4_DiscSensor, TAG_MPEG4_Face, TAG_MPEG4_Form, TAG_MPEG4_Group, TAG_MPEG4_Inline, TAG_MPEG4_LOD, TAG_MPEG4_Layer2D, TAG_MPEG4_Layer3D, TAG_MPEG4_Layout, TAG_MPEG4_OrderedGroup, TAG_MPEG4_PlaneSensor2D, TAG_MPEG4_PositionInterpolator2D, TAG_MPEG4_ProximitySensor2D, TAG_MPEG4_QuantizationParameter, TAG_MPEG4_ScalarInterpolator, TAG_MPEG4_Script, TAG_MPEG4_Shape, TAG_MPEG4_Sound2D, TAG_MPEG4_Switch, TAG_MPEG4_TermCap, TAG_MPEG4_TimeSensor, TAG_MPEG4_TouchSensor, TAG_MPEG4_Transform2D, TAG_MPEG4_Valuator, TAG_MPEG4_WorldInfo
\r
66 #define SFStreamingNode_V1_NUMBITS 3
\r
67 #define SFStreamingNode_V1_Count 5
\r
69 static const u32 SFStreamingNode_V1_TypeToTag[5] = {
\r
70 TAG_MPEG4_AnimationStream, TAG_MPEG4_AudioClip, TAG_MPEG4_AudioSource, TAG_MPEG4_Inline, TAG_MPEG4_MovieTexture
\r
73 #define SFAppearanceNode_V1_NUMBITS 1
\r
74 #define SFAppearanceNode_V1_Count 1
\r
76 static const u32 SFAppearanceNode_V1_TypeToTag[1] = {
\r
77 TAG_MPEG4_Appearance
\r
80 #define SFAudioNode_V1_NUMBITS 3
\r
81 #define SFAudioNode_V1_Count 7
\r
83 static const u32 SFAudioNode_V1_TypeToTag[7] = {
\r
84 TAG_MPEG4_AudioBuffer, TAG_MPEG4_AudioClip, TAG_MPEG4_AudioDelay, TAG_MPEG4_AudioFX, TAG_MPEG4_AudioMix, TAG_MPEG4_AudioSource, TAG_MPEG4_AudioSwitch
\r
87 #define SFBackground3DNode_V1_NUMBITS 1
\r
88 #define SFBackground3DNode_V1_Count 1
\r
90 static const u32 SFBackground3DNode_V1_TypeToTag[1] = {
\r
91 TAG_MPEG4_Background
\r
94 #define SFBackground2DNode_V1_NUMBITS 1
\r
95 #define SFBackground2DNode_V1_Count 1
\r
97 static const u32 SFBackground2DNode_V1_TypeToTag[1] = {
\r
98 TAG_MPEG4_Background2D
\r
101 #define SFGeometryNode_V1_NUMBITS 5
\r
102 #define SFGeometryNode_V1_Count 17
\r
104 static const u32 SFGeometryNode_V1_TypeToTag[17] = {
\r
105 TAG_MPEG4_Bitmap, TAG_MPEG4_Box, TAG_MPEG4_Circle, TAG_MPEG4_Cone, TAG_MPEG4_Curve2D, TAG_MPEG4_Cylinder, TAG_MPEG4_ElevationGrid, TAG_MPEG4_Extrusion, TAG_MPEG4_IndexedFaceSet, TAG_MPEG4_IndexedFaceSet2D, TAG_MPEG4_IndexedLineSet, TAG_MPEG4_IndexedLineSet2D, TAG_MPEG4_PointSet, TAG_MPEG4_PointSet2D, TAG_MPEG4_Rectangle, TAG_MPEG4_Sphere, TAG_MPEG4_Text
\r
108 #define SFColorNode_V1_NUMBITS 1
\r
109 #define SFColorNode_V1_Count 1
\r
111 static const u32 SFColorNode_V1_TypeToTag[1] = {
\r
115 #define SFTextureNode_V1_NUMBITS 3
\r
116 #define SFTextureNode_V1_Count 5
\r
118 static const u32 SFTextureNode_V1_TypeToTag[5] = {
\r
119 TAG_MPEG4_CompositeTexture2D, TAG_MPEG4_CompositeTexture3D, TAG_MPEG4_ImageTexture, TAG_MPEG4_MovieTexture, TAG_MPEG4_PixelTexture
\r
122 #define SFCoordinateNode_V1_NUMBITS 1
\r
123 #define SFCoordinateNode_V1_Count 1
\r
125 static const u32 SFCoordinateNode_V1_TypeToTag[1] = {
\r
126 TAG_MPEG4_Coordinate
\r
129 #define SFCoordinate2DNode_V1_NUMBITS 1
\r
130 #define SFCoordinate2DNode_V1_Count 1
\r
132 static const u32 SFCoordinate2DNode_V1_TypeToTag[1] = {
\r
133 TAG_MPEG4_Coordinate2D
\r
136 #define SFExpressionNode_V1_NUMBITS 1
\r
137 #define SFExpressionNode_V1_Count 1
\r
139 static const u32 SFExpressionNode_V1_TypeToTag[1] = {
\r
140 TAG_MPEG4_Expression
\r
143 #define SFFaceDefMeshNode_V1_NUMBITS 1
\r
144 #define SFFaceDefMeshNode_V1_Count 1
\r
146 static const u32 SFFaceDefMeshNode_V1_TypeToTag[1] = {
\r
147 TAG_MPEG4_FaceDefMesh
\r
150 #define SFFaceDefTablesNode_V1_NUMBITS 1
\r
151 #define SFFaceDefTablesNode_V1_Count 1
\r
153 static const u32 SFFaceDefTablesNode_V1_TypeToTag[1] = {
\r
154 TAG_MPEG4_FaceDefTables
\r
157 #define SFFaceDefTransformNode_V1_NUMBITS 1
\r
158 #define SFFaceDefTransformNode_V1_Count 1
\r
160 static const u32 SFFaceDefTransformNode_V1_TypeToTag[1] = {
\r
161 TAG_MPEG4_FaceDefTransform
\r
164 #define SFFAPNode_V1_NUMBITS 1
\r
165 #define SFFAPNode_V1_Count 1
\r
167 static const u32 SFFAPNode_V1_TypeToTag[1] = {
\r
171 #define SFFDPNode_V1_NUMBITS 1
\r
172 #define SFFDPNode_V1_Count 1
\r
174 static const u32 SFFDPNode_V1_TypeToTag[1] = {
\r
178 #define SFFITNode_V1_NUMBITS 1
\r
179 #define SFFITNode_V1_Count 1
\r
181 static const u32 SFFITNode_V1_TypeToTag[1] = {
\r
185 #define SFFogNode_V1_NUMBITS 1
\r
186 #define SFFogNode_V1_Count 1
\r
188 static const u32 SFFogNode_V1_TypeToTag[1] = {
\r
192 #define SFFontStyleNode_V1_NUMBITS 1
\r
193 #define SFFontStyleNode_V1_Count 1
\r
195 static const u32 SFFontStyleNode_V1_TypeToTag[1] = {
\r
196 TAG_MPEG4_FontStyle
\r
199 #define SFTopNode_V1_NUMBITS 3
\r
200 #define SFTopNode_V1_Count 4
\r
202 static const u32 SFTopNode_V1_TypeToTag[4] = {
\r
203 TAG_MPEG4_Group, TAG_MPEG4_Layer2D, TAG_MPEG4_Layer3D, TAG_MPEG4_OrderedGroup
\r
206 #define SFLinePropertiesNode_V1_NUMBITS 1
\r
207 #define SFLinePropertiesNode_V1_Count 1
\r
209 static const u32 SFLinePropertiesNode_V1_TypeToTag[1] = {
\r
210 TAG_MPEG4_LineProperties
\r
213 #define SFMaterialNode_V1_NUMBITS 2
\r
214 #define SFMaterialNode_V1_Count 2
\r
216 static const u32 SFMaterialNode_V1_TypeToTag[2] = {
\r
217 TAG_MPEG4_Material, TAG_MPEG4_Material2D
\r
220 #define SFNavigationInfoNode_V1_NUMBITS 1
\r
221 #define SFNavigationInfoNode_V1_Count 1
\r
223 static const u32 SFNavigationInfoNode_V1_TypeToTag[1] = {
\r
224 TAG_MPEG4_NavigationInfo
\r
227 #define SFNormalNode_V1_NUMBITS 1
\r
228 #define SFNormalNode_V1_Count 1
\r
230 static const u32 SFNormalNode_V1_TypeToTag[1] = {
\r
234 #define SFTextureCoordinateNode_V1_NUMBITS 1
\r
235 #define SFTextureCoordinateNode_V1_Count 1
\r
237 static const u32 SFTextureCoordinateNode_V1_TypeToTag[1] = {
\r
238 TAG_MPEG4_TextureCoordinate
\r
241 #define SFTextureTransformNode_V1_NUMBITS 1
\r
242 #define SFTextureTransformNode_V1_Count 1
\r
244 static const u32 SFTextureTransformNode_V1_TypeToTag[1] = {
\r
245 TAG_MPEG4_TextureTransform
\r
248 #define SFViewpointNode_V1_NUMBITS 1
\r
249 #define SFViewpointNode_V1_Count 1
\r
251 static const u32 SFViewpointNode_V1_TypeToTag[1] = {
\r
252 TAG_MPEG4_Viewpoint
\r
255 #define SFVisemeNode_V1_NUMBITS 1
\r
256 #define SFVisemeNode_V1_Count 1
\r
258 static const u32 SFVisemeNode_V1_TypeToTag[1] = {
\r
263 u32 NDT_V1_GetNumBits(u32 NDT_Tag);
\r
264 u32 NDT_V1_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
265 u32 NDT_V1_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
270 /* NDT BIFS Version 2 */
\r
272 #define SFWorldNode_V2_NUMBITS 4
\r
273 #define SFWorldNode_V2_Count 12
\r
275 static const u32 SFWorldNode_V2_TypeToTag[12] = {
\r
276 TAG_MPEG4_AcousticMaterial, TAG_MPEG4_AcousticScene, TAG_MPEG4_ApplicationWindow, TAG_MPEG4_BAP, TAG_MPEG4_BDP, TAG_MPEG4_Body, TAG_MPEG4_BodyDefTable, TAG_MPEG4_BodySegmentConnectionHint, TAG_MPEG4_DirectiveSound, TAG_MPEG4_Hierarchical3DMesh, TAG_MPEG4_MaterialKey, TAG_MPEG4_PerceptualParameters
\r
279 #define SF3DNode_V2_NUMBITS 3
\r
280 #define SF3DNode_V2_Count 3
\r
282 static const u32 SF3DNode_V2_TypeToTag[3] = {
\r
283 TAG_MPEG4_AcousticScene, TAG_MPEG4_Body, TAG_MPEG4_DirectiveSound
\r
286 #define SF2DNode_V2_NUMBITS 2
\r
287 #define SF2DNode_V2_Count 2
\r
289 static const u32 SF2DNode_V2_TypeToTag[2] = {
\r
290 TAG_MPEG4_ApplicationWindow, TAG_MPEG4_Body
\r
293 #define SFGeometryNode_V2_NUMBITS 2
\r
294 #define SFGeometryNode_V2_Count 1
\r
296 static const u32 SFGeometryNode_V2_TypeToTag[1] = {
\r
297 TAG_MPEG4_Hierarchical3DMesh
\r
300 #define SFMaterialNode_V2_NUMBITS 2
\r
301 #define SFMaterialNode_V2_Count 2
\r
303 static const u32 SFMaterialNode_V2_TypeToTag[2] = {
\r
304 TAG_MPEG4_AcousticMaterial, TAG_MPEG4_MaterialKey
\r
307 #define SFBAPNode_V2_NUMBITS 2
\r
308 #define SFBAPNode_V2_Count 1
\r
310 static const u32 SFBAPNode_V2_TypeToTag[1] = {
\r
314 #define SFBDPNode_V2_NUMBITS 2
\r
315 #define SFBDPNode_V2_Count 1
\r
317 static const u32 SFBDPNode_V2_TypeToTag[1] = {
\r
321 #define SFBodyDefTableNode_V2_NUMBITS 2
\r
322 #define SFBodyDefTableNode_V2_Count 1
\r
324 static const u32 SFBodyDefTableNode_V2_TypeToTag[1] = {
\r
325 TAG_MPEG4_BodyDefTable
\r
328 #define SFBodySegmentConnectionHintNode_V2_NUMBITS 2
\r
329 #define SFBodySegmentConnectionHintNode_V2_Count 1
\r
331 static const u32 SFBodySegmentConnectionHintNode_V2_TypeToTag[1] = {
\r
332 TAG_MPEG4_BodySegmentConnectionHint
\r
335 #define SFPerceptualParameterNode_V2_NUMBITS 2
\r
336 #define SFPerceptualParameterNode_V2_Count 1
\r
338 static const u32 SFPerceptualParameterNode_V2_TypeToTag[1] = {
\r
339 TAG_MPEG4_PerceptualParameters
\r
343 u32 NDT_V2_GetNumBits(u32 NDT_Tag);
\r
344 u32 NDT_V2_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
345 u32 NDT_V2_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
350 /* NDT BIFS Version 3 */
\r
352 #define SFWorldNode_V3_NUMBITS 2
\r
353 #define SFWorldNode_V3_Count 3
\r
355 static const u32 SFWorldNode_V3_TypeToTag[3] = {
\r
356 TAG_MPEG4_TemporalTransform, TAG_MPEG4_TemporalGroup, TAG_MPEG4_ServerCommand
\r
359 #define SF3DNode_V3_NUMBITS 2
\r
360 #define SF3DNode_V3_Count 3
\r
362 static const u32 SF3DNode_V3_TypeToTag[3] = {
\r
363 TAG_MPEG4_TemporalTransform, TAG_MPEG4_TemporalGroup, TAG_MPEG4_ServerCommand
\r
366 #define SF2DNode_V3_NUMBITS 2
\r
367 #define SF2DNode_V3_Count 3
\r
369 static const u32 SF2DNode_V3_TypeToTag[3] = {
\r
370 TAG_MPEG4_TemporalTransform, TAG_MPEG4_TemporalGroup, TAG_MPEG4_ServerCommand
\r
373 #define SFTemporalNode_V3_NUMBITS 2
\r
374 #define SFTemporalNode_V3_Count 2
\r
376 static const u32 SFTemporalNode_V3_TypeToTag[2] = {
\r
377 TAG_MPEG4_TemporalTransform, TAG_MPEG4_TemporalGroup
\r
381 u32 NDT_V3_GetNumBits(u32 NDT_Tag);
\r
382 u32 NDT_V3_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
383 u32 NDT_V3_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
388 /* NDT BIFS Version 4 */
\r
390 #define SFWorldNode_V4_NUMBITS 3
\r
391 #define SFWorldNode_V4_Count 5
\r
393 static const u32 SFWorldNode_V4_TypeToTag[5] = {
\r
394 TAG_MPEG4_InputSensor, TAG_MPEG4_MatteTexture, TAG_MPEG4_MediaBuffer, TAG_MPEG4_MediaControl, TAG_MPEG4_MediaSensor
\r
397 #define SF3DNode_V4_NUMBITS 3
\r
398 #define SF3DNode_V4_Count 5
\r
400 static const u32 SF3DNode_V4_TypeToTag[5] = {
\r
401 TAG_MPEG4_InputSensor, TAG_MPEG4_MatteTexture, TAG_MPEG4_MediaBuffer, TAG_MPEG4_MediaControl, TAG_MPEG4_MediaSensor
\r
404 #define SF2DNode_V4_NUMBITS 3
\r
405 #define SF2DNode_V4_Count 5
\r
407 static const u32 SF2DNode_V4_TypeToTag[5] = {
\r
408 TAG_MPEG4_InputSensor, TAG_MPEG4_MatteTexture, TAG_MPEG4_MediaBuffer, TAG_MPEG4_MediaControl, TAG_MPEG4_MediaSensor
\r
411 #define SFTextureNode_V4_NUMBITS 1
\r
412 #define SFTextureNode_V4_Count 1
\r
414 static const u32 SFTextureNode_V4_TypeToTag[1] = {
\r
415 TAG_MPEG4_MatteTexture
\r
419 u32 NDT_V4_GetNumBits(u32 NDT_Tag);
\r
420 u32 NDT_V4_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
421 u32 NDT_V4_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
426 /* NDT BIFS Version 5 */
\r
428 #define SFWorldNode_V5_NUMBITS 6
\r
429 #define SFWorldNode_V5_Count 39
\r
431 static const u32 SFWorldNode_V5_TypeToTag[39] = {
\r
432 TAG_MPEG4_BitWrapper, TAG_MPEG4_CoordinateInterpolator4D, TAG_MPEG4_DepthImage, TAG_MPEG4_FFD, TAG_MPEG4_Implicit, TAG_MPEG4_XXLFM_Appearance, TAG_MPEG4_XXLFM_BlendList, TAG_MPEG4_XXLFM_FrameList, TAG_MPEG4_XXLFM_LightMap, TAG_MPEG4_XXLFM_SurfaceMapList, TAG_MPEG4_XXLFM_ViewMapList, TAG_MPEG4_MeshGrid, TAG_MPEG4_NonLinearDeformer, TAG_MPEG4_NurbsCurve, TAG_MPEG4_NurbsCurve2D, TAG_MPEG4_NurbsSurface, TAG_MPEG4_OctreeImage, TAG_MPEG4_XXParticles, TAG_MPEG4_XXParticleInitBox, TAG_MPEG4_XXPlanarObstacle, TAG_MPEG4_XXPointAttractor, TAG_MPEG4_PointTexture, TAG_MPEG4_PositionAnimator, TAG_MPEG4_PositionAnimator2D, TAG_MPEG4_PositionInterpolator4D, TAG_MPEG4_ProceduralTexture, TAG_MPEG4_Quadric, TAG_MPEG4_SBBone, TAG_MPEG4_SBMuscle, TAG_MPEG4_SBSegment, TAG_MPEG4_SBSite, TAG_MPEG4_SBSkinnedModel, TAG_MPEG4_SBVCAnimation, TAG_MPEG4_ScalarAnimator, TAG_MPEG4_SimpleTexture, TAG_MPEG4_SolidRep, TAG_MPEG4_SubdivisionSurface, TAG_MPEG4_SubdivSurfaceSector, TAG_MPEG4_WaveletSubdivisionSurface
\r
435 #define SF3DNode_V5_NUMBITS 5
\r
436 #define SF3DNode_V5_Count 17
\r
438 static const u32 SF3DNode_V5_TypeToTag[17] = {
\r
439 TAG_MPEG4_BitWrapper, TAG_MPEG4_CoordinateInterpolator4D, TAG_MPEG4_DepthImage, TAG_MPEG4_FFD, TAG_MPEG4_OctreeImage, TAG_MPEG4_XXParticles, TAG_MPEG4_PositionAnimator, TAG_MPEG4_PositionAnimator2D, TAG_MPEG4_PositionInterpolator4D, TAG_MPEG4_SBBone, TAG_MPEG4_SBMuscle, TAG_MPEG4_SBSegment, TAG_MPEG4_SBSite, TAG_MPEG4_SBSkinnedModel, TAG_MPEG4_SBVCAnimation, TAG_MPEG4_ScalarAnimator, TAG_MPEG4_WaveletSubdivisionSurface
\r
442 #define SF2DNode_V5_NUMBITS 4
\r
443 #define SF2DNode_V5_Count 9
\r
445 static const u32 SF2DNode_V5_TypeToTag[9] = {
\r
446 TAG_MPEG4_BitWrapper, TAG_MPEG4_PositionAnimator2D, TAG_MPEG4_SBBone, TAG_MPEG4_SBMuscle, TAG_MPEG4_SBSegment, TAG_MPEG4_SBSite, TAG_MPEG4_SBSkinnedModel, TAG_MPEG4_SBVCAnimation, TAG_MPEG4_ScalarAnimator
\r
449 #define SFAppearanceNode_V5_NUMBITS 1
\r
450 #define SFAppearanceNode_V5_Count 1
\r
452 static const u32 SFAppearanceNode_V5_TypeToTag[1] = {
\r
453 TAG_MPEG4_XXLFM_Appearance
\r
456 #define SFGeometryNode_V5_NUMBITS 4
\r
457 #define SFGeometryNode_V5_Count 10
\r
459 static const u32 SFGeometryNode_V5_TypeToTag[10] = {
\r
460 TAG_MPEG4_BitWrapper, TAG_MPEG4_Implicit, TAG_MPEG4_MeshGrid, TAG_MPEG4_NonLinearDeformer, TAG_MPEG4_NurbsCurve, TAG_MPEG4_NurbsCurve2D, TAG_MPEG4_NurbsSurface, TAG_MPEG4_Quadric, TAG_MPEG4_SolidRep, TAG_MPEG4_SubdivisionSurface
\r
463 #define SFTextureNode_V5_NUMBITS 1
\r
464 #define SFTextureNode_V5_Count 1
\r
466 static const u32 SFTextureNode_V5_TypeToTag[1] = {
\r
467 TAG_MPEG4_ProceduralTexture
\r
470 #define SFDepthImageNode_V5_NUMBITS 1
\r
471 #define SFDepthImageNode_V5_Count 1
\r
473 static const u32 SFDepthImageNode_V5_TypeToTag[1] = {
\r
474 TAG_MPEG4_DepthImage
\r
477 #define SFBlendListNode_V5_NUMBITS 1
\r
478 #define SFBlendListNode_V5_Count 1
\r
480 static const u32 SFBlendListNode_V5_TypeToTag[1] = {
\r
481 TAG_MPEG4_XXLFM_BlendList
\r
484 #define SFFrameListNode_V5_NUMBITS 1
\r
485 #define SFFrameListNode_V5_Count 1
\r
487 static const u32 SFFrameListNode_V5_TypeToTag[1] = {
\r
488 TAG_MPEG4_XXLFM_FrameList
\r
491 #define SFLightMapNode_V5_NUMBITS 1
\r
492 #define SFLightMapNode_V5_Count 1
\r
494 static const u32 SFLightMapNode_V5_TypeToTag[1] = {
\r
495 TAG_MPEG4_XXLFM_LightMap
\r
498 #define SFSurfaceMapNode_V5_NUMBITS 1
\r
499 #define SFSurfaceMapNode_V5_Count 1
\r
501 static const u32 SFSurfaceMapNode_V5_TypeToTag[1] = {
\r
502 TAG_MPEG4_XXLFM_SurfaceMapList
\r
505 #define SFViewMapNode_V5_NUMBITS 1
\r
506 #define SFViewMapNode_V5_Count 1
\r
508 static const u32 SFViewMapNode_V5_TypeToTag[1] = {
\r
509 TAG_MPEG4_XXLFM_ViewMapList
\r
512 #define SFParticleInitializerNode_V5_NUMBITS 1
\r
513 #define SFParticleInitializerNode_V5_Count 1
\r
515 static const u32 SFParticleInitializerNode_V5_TypeToTag[1] = {
\r
516 TAG_MPEG4_XXParticleInitBox
\r
519 #define SFInfluenceNode_V5_NUMBITS 2
\r
520 #define SFInfluenceNode_V5_Count 2
\r
522 static const u32 SFInfluenceNode_V5_TypeToTag[2] = {
\r
523 TAG_MPEG4_XXPlanarObstacle, TAG_MPEG4_XXPointAttractor
\r
526 #define SFDepthTextureNode_V5_NUMBITS 2
\r
527 #define SFDepthTextureNode_V5_Count 2
\r
529 static const u32 SFDepthTextureNode_V5_TypeToTag[2] = {
\r
530 TAG_MPEG4_PointTexture, TAG_MPEG4_SimpleTexture
\r
533 #define SFSBBoneNode_V5_NUMBITS 1
\r
534 #define SFSBBoneNode_V5_Count 1
\r
536 static const u32 SFSBBoneNode_V5_TypeToTag[1] = {
\r
540 #define SFSBMuscleNode_V5_NUMBITS 1
\r
541 #define SFSBMuscleNode_V5_Count 1
\r
543 static const u32 SFSBMuscleNode_V5_TypeToTag[1] = {
\r
547 #define SFSBSegmentNode_V5_NUMBITS 1
\r
548 #define SFSBSegmentNode_V5_Count 1
\r
550 static const u32 SFSBSegmentNode_V5_TypeToTag[1] = {
\r
551 TAG_MPEG4_SBSegment
\r
554 #define SFSBSiteNode_V5_NUMBITS 1
\r
555 #define SFSBSiteNode_V5_Count 1
\r
557 static const u32 SFSBSiteNode_V5_TypeToTag[1] = {
\r
561 #define SFBaseMeshNode_V5_NUMBITS 1
\r
562 #define SFBaseMeshNode_V5_Count 1
\r
564 static const u32 SFBaseMeshNode_V5_TypeToTag[1] = {
\r
565 TAG_MPEG4_SubdivisionSurface
\r
568 #define SFSubdivSurfaceSectorNode_V5_NUMBITS 1
\r
569 #define SFSubdivSurfaceSectorNode_V5_Count 1
\r
571 static const u32 SFSubdivSurfaceSectorNode_V5_TypeToTag[1] = {
\r
572 TAG_MPEG4_SubdivSurfaceSector
\r
576 u32 NDT_V5_GetNumBits(u32 NDT_Tag);
\r
577 u32 NDT_V5_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
578 u32 NDT_V5_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
583 /* NDT BIFS Version 6 */
\r
585 #define SFWorldNode_V6_NUMBITS 4
\r
586 #define SFWorldNode_V6_Count 12
\r
588 static const u32 SFWorldNode_V6_TypeToTag[12] = {
\r
589 TAG_MPEG4_Clipper2D, TAG_MPEG4_ColorTransform, TAG_MPEG4_Ellipse, TAG_MPEG4_LinearGradient, TAG_MPEG4_PathLayout, TAG_MPEG4_RadialGradient, TAG_MPEG4_SynthesizedTexture, TAG_MPEG4_TransformMatrix2D, TAG_MPEG4_Viewport, TAG_MPEG4_XCurve2D, TAG_MPEG4_XFontStyle, TAG_MPEG4_XLineProperties
\r
592 #define SF3DNode_V6_NUMBITS 3
\r
593 #define SF3DNode_V6_Count 5
\r
595 static const u32 SF3DNode_V6_TypeToTag[5] = {
\r
596 TAG_MPEG4_Clipper2D, TAG_MPEG4_ColorTransform, TAG_MPEG4_PathLayout, TAG_MPEG4_TransformMatrix2D, TAG_MPEG4_Viewport
\r
599 #define SF2DNode_V6_NUMBITS 3
\r
600 #define SF2DNode_V6_Count 5
\r
602 static const u32 SF2DNode_V6_TypeToTag[5] = {
\r
603 TAG_MPEG4_Clipper2D, TAG_MPEG4_ColorTransform, TAG_MPEG4_PathLayout, TAG_MPEG4_TransformMatrix2D, TAG_MPEG4_Viewport
\r
606 #define SFGeometryNode_V6_NUMBITS 2
\r
607 #define SFGeometryNode_V6_Count 2
\r
609 static const u32 SFGeometryNode_V6_TypeToTag[2] = {
\r
610 TAG_MPEG4_Ellipse, TAG_MPEG4_XCurve2D
\r
613 #define SFTextureNode_V6_NUMBITS 2
\r
614 #define SFTextureNode_V6_Count 3
\r
616 static const u32 SFTextureNode_V6_TypeToTag[3] = {
\r
617 TAG_MPEG4_LinearGradient, TAG_MPEG4_RadialGradient, TAG_MPEG4_SynthesizedTexture
\r
620 #define SFFontStyleNode_V6_NUMBITS 1
\r
621 #define SFFontStyleNode_V6_Count 1
\r
623 static const u32 SFFontStyleNode_V6_TypeToTag[1] = {
\r
624 TAG_MPEG4_XFontStyle
\r
627 #define SFLinePropertiesNode_V6_NUMBITS 1
\r
628 #define SFLinePropertiesNode_V6_Count 1
\r
630 static const u32 SFLinePropertiesNode_V6_TypeToTag[1] = {
\r
631 TAG_MPEG4_XLineProperties
\r
634 #define SFTextureTransformNode_V6_NUMBITS 1
\r
635 #define SFTextureTransformNode_V6_Count 1
\r
637 static const u32 SFTextureTransformNode_V6_TypeToTag[1] = {
\r
638 TAG_MPEG4_TransformMatrix2D
\r
641 #define SFViewportNode_V6_NUMBITS 1
\r
642 #define SFViewportNode_V6_Count 1
\r
644 static const u32 SFViewportNode_V6_TypeToTag[1] = {
\r
649 u32 NDT_V6_GetNumBits(u32 NDT_Tag);
\r
650 u32 NDT_V6_GetNodeTag(u32 Context_NDT_Tag, u32 NodeType);
\r
651 u32 NDT_V6_GetNodeType(u32 NDT_Tag, u32 NodeTag);
\r
655 u32 NDT_GetChildTable(u32 NodeTag);
\r