1 #include <dae.h>
2 #include <dae/daeDom.h>
3 #include <1.5/dom/domInstance_rigid_body.h>
4 #include <dae/daeMetaCMPolicy.h>
5 #include <dae/daeMetaSequence.h>
6 #include <dae/daeMetaChoice.h>
7 #include <dae/daeMetaGroup.h>
8 #include <dae/daeMetaAny.h>
9 #include <dae/daeMetaElementAttribute.h>
10 
11 
12 namespace ColladaDOM150 {
13 daeElementRef
create(DAE & dae)14 domInstance_rigid_body::create(DAE& dae)
15 {
16 	domInstance_rigid_bodyRef ref = new domInstance_rigid_body(dae);
17 	ref->attrTarget.setContainer( (domInstance_rigid_body*)ref );
18 	return ref;
19 }
20 
21 
22 daeMetaElement *
registerElement(DAE & dae)23 domInstance_rigid_body::registerElement(DAE& dae)
24 {
25 	daeMetaElement* meta = dae.getMeta(ID());
26 	if ( meta != NULL ) return meta;
27 
28 	meta = new daeMetaElement(dae);
29 	dae.setMeta(ID(), *meta);
30 	meta->setName( "instance_rigid_body" );
31 	meta->registerClass(domInstance_rigid_body::create);
32 
33 	daeMetaCMPolicy *cm = NULL;
34 	daeMetaElementAttribute *mea = NULL;
35 	cm = new daeMetaSequence( meta, cm, 0, 1, 1 );
36 
37 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
38 	mea->setName( "technique_common" );
39 	mea->setOffset( daeOffsetOf(domInstance_rigid_body,elemTechnique_common) );
40 	mea->setElementType( domInstance_rigid_body::domTechnique_common::registerElement(dae) );
41 	cm->appendChild( mea );
42 
43 	mea = new daeMetaElementArrayAttribute( meta, cm, 1, 0, -1 );
44 	mea->setName( "technique" );
45 	mea->setOffset( daeOffsetOf(domInstance_rigid_body,elemTechnique_array) );
46 	mea->setElementType( domTechnique::registerElement(dae) );
47 	cm->appendChild( mea );
48 
49 	mea = new daeMetaElementArrayAttribute( meta, cm, 2, 0, -1 );
50 	mea->setName( "extra" );
51 	mea->setOffset( daeOffsetOf(domInstance_rigid_body,elemExtra_array) );
52 	mea->setElementType( domExtra::registerElement(dae) );
53 	cm->appendChild( mea );
54 
55 	cm->setMaxOrdinal( 2 );
56 	meta->setCMRoot( cm );
57 
58 	//	Add attribute: body
59 	{
60 		daeMetaAttribute *ma = new daeMetaAttribute;
61 		ma->setName( "body" );
62 		ma->setType( dae.getAtomicTypes().get("xsNCName"));
63 		ma->setOffset( daeOffsetOf( domInstance_rigid_body , attrBody ));
64 		ma->setContainer( meta );
65 		ma->setIsRequired( true );
66 
67 		meta->appendAttribute(ma);
68 	}
69 
70 	//	Add attribute: sid
71 	{
72 		daeMetaAttribute *ma = new daeMetaAttribute;
73 		ma->setName( "sid" );
74 		ma->setType( dae.getAtomicTypes().get("Sid"));
75 		ma->setOffset( daeOffsetOf( domInstance_rigid_body , attrSid ));
76 		ma->setContainer( meta );
77 
78 		meta->appendAttribute(ma);
79 	}
80 
81 	//	Add attribute: name
82 	{
83 		daeMetaAttribute *ma = new daeMetaAttribute;
84 		ma->setName( "name" );
85 		ma->setType( dae.getAtomicTypes().get("xsToken"));
86 		ma->setOffset( daeOffsetOf( domInstance_rigid_body , attrName ));
87 		ma->setContainer( meta );
88 
89 		meta->appendAttribute(ma);
90 	}
91 
92 	//	Add attribute: target
93 	{
94 		daeMetaAttribute *ma = new daeMetaAttribute;
95 		ma->setName( "target" );
96 		ma->setType( dae.getAtomicTypes().get("xsAnyURI"));
97 		ma->setOffset( daeOffsetOf( domInstance_rigid_body , attrTarget ));
98 		ma->setContainer( meta );
99 		ma->setIsRequired( true );
100 
101 		meta->appendAttribute(ma);
102 	}
103 
104 	meta->setElementSize(sizeof(domInstance_rigid_body));
105 	meta->validate();
106 
107 	return meta;
108 }
109 
110 daeElementRef
create(DAE & dae)111 domInstance_rigid_body::domTechnique_common::create(DAE& dae)
112 {
113 	domInstance_rigid_body::domTechnique_commonRef ref = new domInstance_rigid_body::domTechnique_common(dae);
114 	return ref;
115 }
116 
117 
118 daeMetaElement *
registerElement(DAE & dae)119 domInstance_rigid_body::domTechnique_common::registerElement(DAE& dae)
120 {
121 	daeMetaElement* meta = dae.getMeta(ID());
122 	if ( meta != NULL ) return meta;
123 
124 	meta = new daeMetaElement(dae);
125 	dae.setMeta(ID(), *meta);
126 	meta->setName( "technique_common" );
127 	meta->registerClass(domInstance_rigid_body::domTechnique_common::create);
128 
129 	meta->setIsInnerClass( true );
130 	daeMetaCMPolicy *cm = NULL;
131 	daeMetaElementAttribute *mea = NULL;
132 	cm = new daeMetaSequence( meta, cm, 0, 1, 1 );
133 
134 	mea = new daeMetaElementAttribute( meta, cm, 0, 0, 1 );
135 	mea->setName( "angular_velocity" );
136 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemAngular_velocity) );
137 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domAngular_velocity::registerElement(dae) );
138 	cm->appendChild( mea );
139 
140 	mea = new daeMetaElementAttribute( meta, cm, 1, 0, 1 );
141 	mea->setName( "velocity" );
142 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemVelocity) );
143 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domVelocity::registerElement(dae) );
144 	cm->appendChild( mea );
145 
146 	mea = new daeMetaElementAttribute( meta, cm, 2, 0, 1 );
147 	mea->setName( "dynamic" );
148 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemDynamic) );
149 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domDynamic::registerElement(dae) );
150 	cm->appendChild( mea );
151 
152 	mea = new daeMetaElementAttribute( meta, cm, 3, 0, 1 );
153 	mea->setName( "mass" );
154 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemMass) );
155 	mea->setElementType( domTargetable_float::registerElement(dae) );
156 	cm->appendChild( mea );
157 
158 	mea = new daeMetaElementAttribute( meta, cm, 4, 0, 1 );
159 	mea->setName( "mass_frame" );
160 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemMass_frame) );
161 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domMass_frame::registerElement(dae) );
162 	cm->appendChild( mea );
163 
164 	mea = new daeMetaElementAttribute( meta, cm, 5, 0, 1 );
165 	mea->setName( "inertia" );
166 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemInertia) );
167 	mea->setElementType( domTargetable_float3::registerElement(dae) );
168 	cm->appendChild( mea );
169 
170 	cm = new daeMetaChoice( meta, cm, 0, 6, 0, 1 );
171 
172 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
173 	mea->setName( "instance_physics_material" );
174 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemInstance_physics_material) );
175 	mea->setElementType( domInstance_physics_material::registerElement(dae) );
176 	cm->appendChild( mea );
177 
178 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
179 	mea->setName( "physics_material" );
180 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemPhysics_material) );
181 	mea->setElementType( domPhysics_material::registerElement(dae) );
182 	cm->appendChild( mea );
183 
184 	cm->setMaxOrdinal( 0 );
185 	cm->getParent()->appendChild( cm );
186 	cm = cm->getParent();
187 
188 	mea = new daeMetaElementArrayAttribute( meta, cm, 7, 0, -1 );
189 	mea->setName( "shape" );
190 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common,elemShape_array) );
191 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domShape::registerElement(dae) );
192 	cm->appendChild( mea );
193 
194 	cm->setMaxOrdinal( 7 );
195 	meta->setCMRoot( cm );
196 	// Ordered list of sub-elements
197 	meta->addContents(daeOffsetOf(domInstance_rigid_body::domTechnique_common,_contents));
198 	meta->addContentsOrder(daeOffsetOf(domInstance_rigid_body::domTechnique_common,_contentsOrder));
199 
200 	meta->addCMDataArray(daeOffsetOf(domInstance_rigid_body::domTechnique_common,_CMData), 1);
201 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common));
202 	meta->validate();
203 
204 	return meta;
205 }
206 
207 daeElementRef
create(DAE & dae)208 domInstance_rigid_body::domTechnique_common::domAngular_velocity::create(DAE& dae)
209 {
210 	domInstance_rigid_body::domTechnique_common::domAngular_velocityRef ref = new domInstance_rigid_body::domTechnique_common::domAngular_velocity(dae);
211 	return ref;
212 }
213 
214 
215 daeMetaElement *
registerElement(DAE & dae)216 domInstance_rigid_body::domTechnique_common::domAngular_velocity::registerElement(DAE& dae)
217 {
218 	daeMetaElement* meta = dae.getMeta(ID());
219 	if ( meta != NULL ) return meta;
220 
221 	meta = new daeMetaElement(dae);
222 	dae.setMeta(ID(), *meta);
223 	meta->setName( "angular_velocity" );
224 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domAngular_velocity::create);
225 
226 	meta->setIsInnerClass( true );
227 	//	Add attribute: _value
228 	{
229 		daeMetaAttribute *ma = new daeMetaArrayAttribute;
230 		ma->setName( "_value" );
231 		ma->setType( dae.getAtomicTypes().get("Float3"));
232 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domAngular_velocity , _value ));
233 		ma->setContainer( meta );
234 		meta->appendAttribute(ma);
235 	}
236 
237 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domAngular_velocity));
238 	meta->validate();
239 
240 	return meta;
241 }
242 
243 daeElementRef
create(DAE & dae)244 domInstance_rigid_body::domTechnique_common::domVelocity::create(DAE& dae)
245 {
246 	domInstance_rigid_body::domTechnique_common::domVelocityRef ref = new domInstance_rigid_body::domTechnique_common::domVelocity(dae);
247 	return ref;
248 }
249 
250 
251 daeMetaElement *
registerElement(DAE & dae)252 domInstance_rigid_body::domTechnique_common::domVelocity::registerElement(DAE& dae)
253 {
254 	daeMetaElement* meta = dae.getMeta(ID());
255 	if ( meta != NULL ) return meta;
256 
257 	meta = new daeMetaElement(dae);
258 	dae.setMeta(ID(), *meta);
259 	meta->setName( "velocity" );
260 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domVelocity::create);
261 
262 	meta->setIsInnerClass( true );
263 	//	Add attribute: _value
264 	{
265 		daeMetaAttribute *ma = new daeMetaArrayAttribute;
266 		ma->setName( "_value" );
267 		ma->setType( dae.getAtomicTypes().get("Float3"));
268 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domVelocity , _value ));
269 		ma->setContainer( meta );
270 		meta->appendAttribute(ma);
271 	}
272 
273 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domVelocity));
274 	meta->validate();
275 
276 	return meta;
277 }
278 
279 daeElementRef
create(DAE & dae)280 domInstance_rigid_body::domTechnique_common::domDynamic::create(DAE& dae)
281 {
282 	domInstance_rigid_body::domTechnique_common::domDynamicRef ref = new domInstance_rigid_body::domTechnique_common::domDynamic(dae);
283 	return ref;
284 }
285 
286 
287 daeMetaElement *
registerElement(DAE & dae)288 domInstance_rigid_body::domTechnique_common::domDynamic::registerElement(DAE& dae)
289 {
290 	daeMetaElement* meta = dae.getMeta(ID());
291 	if ( meta != NULL ) return meta;
292 
293 	meta = new daeMetaElement(dae);
294 	dae.setMeta(ID(), *meta);
295 	meta->setName( "dynamic" );
296 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domDynamic::create);
297 
298 	meta->setIsInnerClass( true );
299 	//	Add attribute: _value
300 	{
301 		daeMetaAttribute *ma = new daeMetaAttribute;
302 		ma->setName( "_value" );
303 		ma->setType( dae.getAtomicTypes().get("xsBoolean"));
304 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domDynamic , _value ));
305 		ma->setContainer( meta );
306 		meta->appendAttribute(ma);
307 	}
308 
309 	//	Add attribute: sid
310 	{
311 		daeMetaAttribute *ma = new daeMetaAttribute;
312 		ma->setName( "sid" );
313 		ma->setType( dae.getAtomicTypes().get("Sid"));
314 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domDynamic , attrSid ));
315 		ma->setContainer( meta );
316 
317 		meta->appendAttribute(ma);
318 	}
319 
320 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domDynamic));
321 	meta->validate();
322 
323 	return meta;
324 }
325 
326 daeElementRef
create(DAE & dae)327 domInstance_rigid_body::domTechnique_common::domMass_frame::create(DAE& dae)
328 {
329 	domInstance_rigid_body::domTechnique_common::domMass_frameRef ref = new domInstance_rigid_body::domTechnique_common::domMass_frame(dae);
330 	return ref;
331 }
332 
333 
334 daeMetaElement *
registerElement(DAE & dae)335 domInstance_rigid_body::domTechnique_common::domMass_frame::registerElement(DAE& dae)
336 {
337 	daeMetaElement* meta = dae.getMeta(ID());
338 	if ( meta != NULL ) return meta;
339 
340 	meta = new daeMetaElement(dae);
341 	dae.setMeta(ID(), *meta);
342 	meta->setName( "mass_frame" );
343 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domMass_frame::create);
344 
345 	meta->setIsInnerClass( true );
346 	daeMetaCMPolicy *cm = NULL;
347 	daeMetaElementAttribute *mea = NULL;
348 	cm = new daeMetaChoice( meta, cm, 0, 0, 1, -1 );
349 
350 	mea = new daeMetaElementArrayAttribute( meta, cm, 0, 1, 1 );
351 	mea->setName( "translate" );
352 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domMass_frame,elemTranslate_array) );
353 	mea->setElementType( domTranslate::registerElement(dae) );
354 	cm->appendChild( mea );
355 
356 	mea = new daeMetaElementArrayAttribute( meta, cm, 0, 1, 1 );
357 	mea->setName( "rotate" );
358 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domMass_frame,elemRotate_array) );
359 	mea->setElementType( domRotate::registerElement(dae) );
360 	cm->appendChild( mea );
361 
362 	cm->setMaxOrdinal( 3000 );
363 	meta->setCMRoot( cm );
364 	// Ordered list of sub-elements
365 	meta->addContents(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domMass_frame,_contents));
366 	meta->addContentsOrder(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domMass_frame,_contentsOrder));
367 
368 	meta->addCMDataArray(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domMass_frame,_CMData), 1);
369 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domMass_frame));
370 	meta->validate();
371 
372 	return meta;
373 }
374 
375 daeElementRef
create(DAE & dae)376 domInstance_rigid_body::domTechnique_common::domShape::create(DAE& dae)
377 {
378 	domInstance_rigid_body::domTechnique_common::domShapeRef ref = new domInstance_rigid_body::domTechnique_common::domShape(dae);
379 	return ref;
380 }
381 
382 
383 daeMetaElement *
registerElement(DAE & dae)384 domInstance_rigid_body::domTechnique_common::domShape::registerElement(DAE& dae)
385 {
386 	daeMetaElement* meta = dae.getMeta(ID());
387 	if ( meta != NULL ) return meta;
388 
389 	meta = new daeMetaElement(dae);
390 	dae.setMeta(ID(), *meta);
391 	meta->setName( "shape" );
392 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domShape::create);
393 
394 	meta->setIsInnerClass( true );
395 	daeMetaCMPolicy *cm = NULL;
396 	daeMetaElementAttribute *mea = NULL;
397 	cm = new daeMetaSequence( meta, cm, 0, 1, 1 );
398 
399 	mea = new daeMetaElementAttribute( meta, cm, 0, 0, 1 );
400 	mea->setName( "hollow" );
401 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemHollow) );
402 	mea->setElementType( domInstance_rigid_body::domTechnique_common::domShape::domHollow::registerElement(dae) );
403 	cm->appendChild( mea );
404 
405 	mea = new daeMetaElementAttribute( meta, cm, 1, 0, 1 );
406 	mea->setName( "mass" );
407 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemMass) );
408 	mea->setElementType( domTargetable_float::registerElement(dae) );
409 	cm->appendChild( mea );
410 
411 	mea = new daeMetaElementAttribute( meta, cm, 2, 0, 1 );
412 	mea->setName( "density" );
413 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemDensity) );
414 	mea->setElementType( domTargetable_float::registerElement(dae) );
415 	cm->appendChild( mea );
416 
417 	cm = new daeMetaChoice( meta, cm, 0, 3, 0, 1 );
418 
419 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
420 	mea->setName( "instance_physics_material" );
421 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemInstance_physics_material) );
422 	mea->setElementType( domInstance_physics_material::registerElement(dae) );
423 	cm->appendChild( mea );
424 
425 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
426 	mea->setName( "physics_material" );
427 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemPhysics_material) );
428 	mea->setElementType( domPhysics_material::registerElement(dae) );
429 	cm->appendChild( mea );
430 
431 	cm->setMaxOrdinal( 0 );
432 	cm->getParent()->appendChild( cm );
433 	cm = cm->getParent();
434 
435 	cm = new daeMetaChoice( meta, cm, 1, 4, 1, 1 );
436 
437 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
438 	mea->setName( "instance_geometry" );
439 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemInstance_geometry) );
440 	mea->setElementType( domInstance_geometry::registerElement(dae) );
441 	cm->appendChild( mea );
442 
443 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
444 	mea->setName( "plane" );
445 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemPlane) );
446 	mea->setElementType( domPlane::registerElement(dae) );
447 	cm->appendChild( mea );
448 
449 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
450 	mea->setName( "box" );
451 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemBox) );
452 	mea->setElementType( domBox::registerElement(dae) );
453 	cm->appendChild( mea );
454 
455 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
456 	mea->setName( "sphere" );
457 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemSphere) );
458 	mea->setElementType( domSphere::registerElement(dae) );
459 	cm->appendChild( mea );
460 
461 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
462 	mea->setName( "cylinder" );
463 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemCylinder) );
464 	mea->setElementType( domCylinder::registerElement(dae) );
465 	cm->appendChild( mea );
466 
467 	mea = new daeMetaElementAttribute( meta, cm, 0, 1, 1 );
468 	mea->setName( "capsule" );
469 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemCapsule) );
470 	mea->setElementType( domCapsule::registerElement(dae) );
471 	cm->appendChild( mea );
472 
473 	cm->setMaxOrdinal( 0 );
474 	cm->getParent()->appendChild( cm );
475 	cm = cm->getParent();
476 
477 	cm = new daeMetaChoice( meta, cm, 2, 5, 0, -1 );
478 
479 	mea = new daeMetaElementArrayAttribute( meta, cm, 0, 1, 1 );
480 	mea->setName( "translate" );
481 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemTranslate_array) );
482 	mea->setElementType( domTranslate::registerElement(dae) );
483 	cm->appendChild( mea );
484 
485 	mea = new daeMetaElementArrayAttribute( meta, cm, 0, 1, 1 );
486 	mea->setName( "rotate" );
487 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemRotate_array) );
488 	mea->setElementType( domRotate::registerElement(dae) );
489 	cm->appendChild( mea );
490 
491 	cm->setMaxOrdinal( 0 );
492 	cm->getParent()->appendChild( cm );
493 	cm = cm->getParent();
494 
495 	mea = new daeMetaElementArrayAttribute( meta, cm, 3006, 0, -1 );
496 	mea->setName( "extra" );
497 	mea->setOffset( daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,elemExtra_array) );
498 	mea->setElementType( domExtra::registerElement(dae) );
499 	cm->appendChild( mea );
500 
501 	cm->setMaxOrdinal( 3006 );
502 	meta->setCMRoot( cm );
503 	// Ordered list of sub-elements
504 	meta->addContents(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,_contents));
505 	meta->addContentsOrder(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,_contentsOrder));
506 
507 	meta->addCMDataArray(daeOffsetOf(domInstance_rigid_body::domTechnique_common::domShape,_CMData), 3);
508 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domShape));
509 	meta->validate();
510 
511 	return meta;
512 }
513 
514 daeElementRef
create(DAE & dae)515 domInstance_rigid_body::domTechnique_common::domShape::domHollow::create(DAE& dae)
516 {
517 	domInstance_rigid_body::domTechnique_common::domShape::domHollowRef ref = new domInstance_rigid_body::domTechnique_common::domShape::domHollow(dae);
518 	return ref;
519 }
520 
521 
522 daeMetaElement *
registerElement(DAE & dae)523 domInstance_rigid_body::domTechnique_common::domShape::domHollow::registerElement(DAE& dae)
524 {
525 	daeMetaElement* meta = dae.getMeta(ID());
526 	if ( meta != NULL ) return meta;
527 
528 	meta = new daeMetaElement(dae);
529 	dae.setMeta(ID(), *meta);
530 	meta->setName( "hollow" );
531 	meta->registerClass(domInstance_rigid_body::domTechnique_common::domShape::domHollow::create);
532 
533 	meta->setIsInnerClass( true );
534 	//	Add attribute: _value
535 	{
536 		daeMetaAttribute *ma = new daeMetaAttribute;
537 		ma->setName( "_value" );
538 		ma->setType( dae.getAtomicTypes().get("xsBoolean"));
539 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domShape::domHollow , _value ));
540 		ma->setContainer( meta );
541 		meta->appendAttribute(ma);
542 	}
543 
544 	//	Add attribute: sid
545 	{
546 		daeMetaAttribute *ma = new daeMetaAttribute;
547 		ma->setName( "sid" );
548 		ma->setType( dae.getAtomicTypes().get("Sid"));
549 		ma->setOffset( daeOffsetOf( domInstance_rigid_body::domTechnique_common::domShape::domHollow , attrSid ));
550 		ma->setContainer( meta );
551 
552 		meta->appendAttribute(ma);
553 	}
554 
555 	meta->setElementSize(sizeof(domInstance_rigid_body::domTechnique_common::domShape::domHollow));
556 	meta->validate();
557 
558 	return meta;
559 }
560 
561 } // ColladaDOM150
562