990c2c7bc7220dc8b0af561d20d5a602c11a83ef
[physics.git] / src / Entities / PhysicsEntity.h
1 #ifndef PHYSICS_H
2 #define PHYSICS_H
3
4 #include "Entity.h"
5 #include "../Vector2.h"
6
7
8 /// ***** Header Class *****
9
10 class PhysicsEntity: public Entity
11 {
12   protected:
13     PhysicsEntity(const Vector2&);
14
15   public:
16     virtual ~PhysicsEntity();
17
18     virtual void update(float);
19
20     virtual Vector2 positionAt(float) const;
21     virtual Vector2 velocityAt(float) const;
22
23     virtual void applyForce(const Vector2&);
24     virtual void applyImpulse(const Vector2&);
25
26   protected:
27     Vector2 force;
28
29     float mass;
30
31     // Coefficient of Restitution
32     float CoR;
33 };
34
35 #endif // PHYSICS_H