source:
orxonox.OLD/trunk/src/lib/physics/physics_connection.h
@
9023
Last change on this file since 9023 was 7221, checked in by bensch, 19 years ago | |
---|---|
File size: 1.2 KB |
Rev | Line | |
---|---|---|
[4597] | 1 | /*! |
[5039] | 2 | * @file physics_connection.h |
[5257] | 3 | * Definition of The Physical Connection Class. |
4 | * @todo | |
[3245] | 5 | */ |
[1853] | 6 | |
[4597] | 7 | #ifndef _PHYSICS_CONNECTION_H |
[4181] | 8 | #define _PHYSICS_CONNECTION_H |
[1853] | 9 | |
[4381] | 10 | #include "base_object.h" |
[4375] | 11 | // Forward Declaration |
12 | class PhysicsInterface; | |
13 | class ParticleSystem; | |
14 | class Field; | |
[4183] | 15 | |
[4181] | 16 | //! An enumerator for different ConnectionTypes |
[4597] | 17 | typedef enum PCON_Type |
18 | { | |
19 | PCON_PhysIPhysI = 1, | |
20 | PCON_PhysIField = 2 | |
21 | }; | |
[3543] | 22 | |
23 | ||
[4181] | 24 | // Forward Declaration |
[2036] | 25 | |
[4731] | 26 | //! A class that Handles Physical Connection between different subjects |
[4394] | 27 | class PhysicsConnection : public BaseObject |
[4381] | 28 | { |
[1853] | 29 | |
[4182] | 30 | public: |
[4377] | 31 | PhysicsConnection(PhysicsInterface* subject, Field* field); |
[4480] | 32 | // PhysicsConnection(PhysicsInterface* partnerOne, PhysicsInterface* partnerTwo); |
[4728] | 33 | PhysicsConnection(const TiXmlElement* root); |
[4182] | 34 | |
35 | virtual ~PhysicsConnection(); | |
36 | ||
[7221] | 37 | void setSubject(const std::string& subjectName); |
38 | void setField(const std::string& fieldName); | |
[4728] | 39 | |
[4746] | 40 | void apply() const; |
[4182] | 41 | |
42 | private: | |
[4181] | 43 | PCON_Type type; //!< What kind of connection this is. |
[4597] | 44 | |
[4375] | 45 | PhysicsInterface* subject; //!< The main Subject of this Connection. |
46 | PhysicsInterface* partner2; //!< The second partner of this Connection. | |
[4597] | 47 | |
[4181] | 48 | Field* field; //!< The field to connect either subject of ParticleSystem to. |
49 | }; | |
50 | ||
51 | #endif /* _PHYSICS_CONNECTION_H */ |
Note: See TracBrowser
for help on using the repository browser.