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