Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #ifndef __SP_PHYSICS_NEWTON_BASEOBJECT_H__
00009 #define __SP_PHYSICS_NEWTON_BASEOBJECT_H__
00010
00011
00012 #include "Base/spStandard.hpp"
00013
00014 #ifdef SP_COMPILE_WITH_NEWTON
00015
00016
00017 #include "Base/spDimension.hpp"
00018 #include "Framework/Physics/spPhysicsBaseObject.hpp"
00019
00020
00021 struct NewtonCollision;
00022 struct NewtonBody;
00023
00024 namespace sp
00025 {
00026 namespace physics
00027 {
00028
00029
00030 class SP_EXPORT NewtonBaseObject : virtual public PhysicsBaseObject
00031 {
00032
00033 public:
00034
00035 virtual ~NewtonBaseObject();
00036
00037
00038
00039 virtual void setTransformation(const dim::matrix4f &Transformation);
00040 virtual dim::matrix4f getTransformation() const;
00041
00042
00043
00045 inline NewtonCollision* getCollision() const
00046 {
00047 return NtCollision_;
00048 }
00050 inline NewtonBody* getBody() const
00051 {
00052 return NtBody_;
00053 }
00054
00055 protected:
00056
00057 friend class NewtonDynamicsJoint;
00058
00059
00060
00061 NewtonBaseObject();
00062
00063
00064
00065 NewtonCollision* NtCollision_;
00066 NewtonBody* NtBody_;
00067
00068 };
00069
00070
00071 }
00072
00073 }
00074
00075
00076 #endif
00077
00078 #endif
00079
00080
00081
00082