FCDocument/FCDPhysicsRigidConstraintInstance.h

Go to the documentation of this file.
00001 /*
00002     Copyright (C) 2005-2007 Feeling Software Inc.
00003     Portions of the code are:
00004     Copyright (C) 2005-2007 Sony Computer Entertainment America
00005     
00006     MIT License: http://www.opensource.org/licenses/mit-license.php
00007 */
00008 
00014 #ifndef _FCD_PHYSICS_RIGID_CONSTRAINT_INSTANCE_H_
00015 #define _FCD_PHYSICS_RIGID_CONSTRAINT_INSTANCE_H_
00016 
00017 #ifndef _FCD_ENTITY_INSTANCE_H_
00018 #include "FCDocument/FCDEntityInstance.h"
00019 #endif // _FCD_ENTITY_INSTANCE_H_
00020 
00021 class FCDocument;
00022 class FCDEntity;
00023 class FCDSceneNode;
00024 class FCDPhysicsModel;
00025 class FCDPhysicsModelInstance;
00026 class FCDPhysicsRigidConstraint;
00027 
00036 class FCOLLADA_EXPORT FCDPhysicsRigidConstraintInstance : public FCDEntityInstance
00037 {
00038 private:
00039     DeclareObjectType(FCDEntityInstance);
00040     FCDPhysicsModelInstance* parent;
00041 
00042 public:
00052     FCDPhysicsRigidConstraintInstance(FCDocument* document, FCDPhysicsModelInstance* parent, FCDPhysicsRigidConstraint* constraint);
00053 
00055     virtual ~FCDPhysicsRigidConstraintInstance();
00056 
00060     virtual Type GetType() const { return PHYSICS_RIGID_CONSTRAINT; }
00061 
00065     FCDPhysicsModelInstance* GetParent() { return parent; }
00066     const FCDPhysicsModelInstance* GetParent() const { return parent; } 
00070     inline FCDPhysicsRigidConstraint* GetRigidConstraint() { return (FCDPhysicsRigidConstraint*) GetEntity(); }
00071 
00077     virtual FCDEntityInstance* Clone(FCDEntityInstance* clone = NULL) const;
00078 
00082     FCDPhysicsModelInstance* GetModelParentInstance(){ return parent; }
00083 
00087     void SetRigidConstraint(FCDPhysicsRigidConstraint* constraint);
00088 };
00089 
00090 #endif // _FCD_PHYSICS_RIGID_CONSTRAINT_INSTANCE_H_

Generated on Thu Feb 14 16:58:34 2008 for FCollada by  doxygen 1.4.6-NO