00001 /* 00002 Copyright (C) 2005-2006 Feeling Software Inc. 00003 MIT License: http://www.opensource.org/licenses/mit-license.php 00004 */ 00005 00006 #ifndef _FCD_PHYSICS_MODEL_ENTITY_H_ 00007 #define _FCD_PHYSICS_MODEL_ENTITY_H_ 00008 00009 #include "FCDocument/FCDEntityInstance.h" 00010 00011 class FCDocument; 00012 00013 typedef vector<FCDEntityInstance*> FCDEntityInstanceList; 00014 00015 class FCOLLADA_EXPORT FCDPhysicsModelInstance : public FCDEntityInstance 00016 { 00017 private: 00018 DeclareObjectType; 00019 FCDEntityInstanceList instances; 00020 00021 public: 00022 FCDPhysicsModelInstance(FCDocument* document, FCDEntity* entity); 00023 virtual ~FCDPhysicsModelInstance(); 00024 00025 FCDEntityInstanceList& GetInstances() {return instances;} 00026 00027 // FCDEntity override for RTTI-like 00028 virtual Type GetType() const { return PHYSICS_MODEL; } 00029 00030 // Load the geometry instance from the COLLADA document 00031 virtual FUStatus LoadFromXML(xmlNode* instanceNode); 00032 00033 // Write out the instantiation information to the xml node tree 00034 virtual xmlNode* WriteToXML(xmlNode* parentNode) const; 00035 }; 00036 00037 #endif // _FCD_PHYSICS_MODEL_ENTITY_H_