00001 #ifndef __domInstance_physics_model_h__ 00002 #define __domInstance_physics_model_h__ 00003 00004 #include <dae/daeDocument.h> 00005 #include <dom/domTypes.h> 00006 #include <dom/domElements.h> 00007 00008 #include <dom/domInstance_force_field.h> 00009 #include <dom/domInstance_rigid_body.h> 00010 #include <dom/domInstance_rigid_constraint.h> 00011 #include <dom/domExtra.h> 00012 class DAE; 00013 00018 class domInstance_physics_model : public daeElement 00019 { 00020 public: 00021 virtual COLLADA_TYPE::TypeEnum getElementType() const { return COLLADA_TYPE::INSTANCE_PHYSICS_MODEL; } 00022 static daeInt ID() { return 410; } 00023 virtual daeInt typeID() const { return ID(); } 00024 protected: // Attributes 00031 xsAnyURI attrUrl; 00037 domSid attrSid; 00041 xsToken attrName; 00048 xsAnyURI attrParent; 00049 00050 protected: // Elements 00055 domInstance_force_field_Array elemInstance_force_field_array; 00060 domInstance_rigid_body_Array elemInstance_rigid_body_array; 00065 domInstance_rigid_constraint_Array elemInstance_rigid_constraint_array; 00069 domExtra_Array elemExtra_array; 00070 00071 public: //Accessors and Mutators 00076 xsAnyURI &getUrl() { return attrUrl; } 00081 const xsAnyURI &getUrl() const { return attrUrl; } 00086 void setUrl( const xsAnyURI &atUrl ) { attrUrl = atUrl; } 00091 void setUrl( xsString atUrl ) { attrUrl = atUrl; } 00092 00097 domSid getSid() const { return attrSid; } 00102 void setSid( domSid atSid ) { *(daeStringRef*)&attrSid = atSid;} 00103 00108 xsToken getName() const { return attrName; } 00113 void setName( xsToken atName ) { *(daeStringRef*)&attrName = atName;} 00114 00119 xsAnyURI &getParent() { return attrParent; } 00124 const xsAnyURI &getParent() const { return attrParent; } 00129 void setParent( const xsAnyURI &atParent ) { attrParent = atParent; } 00134 void setParent( xsString atParent ) { attrParent = atParent; } 00135 00140 domInstance_force_field_Array &getInstance_force_field_array() { return elemInstance_force_field_array; } 00145 const domInstance_force_field_Array &getInstance_force_field_array() const { return elemInstance_force_field_array; } 00150 domInstance_rigid_body_Array &getInstance_rigid_body_array() { return elemInstance_rigid_body_array; } 00155 const domInstance_rigid_body_Array &getInstance_rigid_body_array() const { return elemInstance_rigid_body_array; } 00160 domInstance_rigid_constraint_Array &getInstance_rigid_constraint_array() { return elemInstance_rigid_constraint_array; } 00165 const domInstance_rigid_constraint_Array &getInstance_rigid_constraint_array() const { return elemInstance_rigid_constraint_array; } 00170 domExtra_Array &getExtra_array() { return elemExtra_array; } 00175 const domExtra_Array &getExtra_array() const { return elemExtra_array; } 00176 protected: 00180 domInstance_physics_model(DAE& dae) : daeElement(dae), attrUrl(dae, *this), attrSid(), attrName(), attrParent(dae, *this), elemInstance_force_field_array(), elemInstance_rigid_body_array(), elemInstance_rigid_constraint_array(), elemExtra_array() {} 00184 virtual ~domInstance_physics_model() {} 00188 virtual domInstance_physics_model &operator=( const domInstance_physics_model &cpy ) { (void)cpy; return *this; } 00189 00190 public: // STATIC METHODS 00195 static DLLSPEC daeElementRef create(DAE& dae); 00201 static DLLSPEC daeMetaElement* registerElement(DAE& dae); 00202 }; 00203 00204 00205 #endif