Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/lib/physics/physics_connection.h @ 4375

Last change on this file since 4375 was 4375, checked in by bensch, 19 years ago

orxonox/trunk: renamed iphysics to physics_interface

File size: 1.2 KB
Line 
1/*!
2    \file physics_connection.h
3    \brief Definition of The Physical Connection Class.
4*/
5
6#ifndef _PHYSICS_CONNECTION_H
7#define _PHYSICS_CONNECTION_H
8
9// Forward Declaration
10class PhysicsInterface;
11class ParticleSystem;
12class Field;
13
14//! An enumerator for different ConnectionTypes
15typedef enum PCON_Type { PCON_PhysIPhysI = 0,
16                         PCON_PhysIField = 1,
17                         PCON_ParticlesField = 2 };
18
19
20// Forward Declaration
21
22//! A class that Handles Physical Connection between subjects
23class PhysicsConnection {
24
25 public:
26  PhysicsConnection(PhysicsInterface* partnerOne, PhysicsInterface* partnerTwo);
27  PhysicsConnection(PhysicsInterface* subject, Field* field);
28  PhysicsConnection(ParticleSystem* particleSystem, Field* field);
29
30  virtual ~PhysicsConnection();
31
32  void apply(const float& dt) const;
33
34 private:
35  PCON_Type type;                    //!< What kind of connection this is.
36 
37  PhysicsInterface* subject;         //!< The main Subject of this Connection.
38  PhysicsInterface* partner2;        //!< The second partner of this Connection.
39 
40  ParticleSystem* particleSystem;    //!< A ParticleSystem in this Connection
41 
42  Field* field;                      //!< The field to connect either subject of ParticleSystem to.
43};
44
45#endif /* _PHYSICS_CONNECTION_H */
Note: See TracBrowser for help on using the repository browser.