World of Rigid Bodies (WoRB)
|
Represents a rigid body iterator for the WorldOfRigidBodies class. More...
Public Member Functions | |
RigidBodies (WorldOfRigidBodies *worb) | |
Constructs rigid body iterator for the given instance of WoRB. | |
RigidBodies & | operator++ () |
Advances to the next rigid body. | |
bool | Exists () |
Returns true if the current geometry is connected to a rigid body. | |
unsigned | Next (unsigned index) |
Locates next rigid body from the given location. | |
RigidBody * | operator-> () |
Gets the pointer to the current rigid body. | |
void | Clear () |
Removes all objects from the WoRB instance. | |
unsigned | Count () |
Removes all objects from the WoRB instance. | |
Private Attributes | |
WorldOfRigidBodies * | worb |
Holds an instance where we iterate. | |
unsigned | i |
The current geometry. |
Represents a rigid body iterator for the WorldOfRigidBodies class.
Iterates only through rigid bodies avoiding scenery geometries.
WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::RigidBodies | ( | WorldOfRigidBodies * | worb | ) | [inline] |
Constructs rigid body iterator for the given instance of WoRB.
Definition at line 44 of file WoRB.h.
References WoRB::Geometry::Body, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::Object, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount.
void WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Clear | ( | ) | [inline] |
Removes all objects from the WoRB instance.
Definition at line 86 of file WoRB.h.
References WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb.
{ worb->ObjectCount = 0; i = 0; }
unsigned WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Count | ( | ) | [inline] |
Removes all objects from the WoRB instance.
Definition at line 94 of file WoRB.h.
References WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb.
{ return worb->ObjectCount; }
bool WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Exists | ( | ) | [inline] |
Returns true if the current geometry is connected to a rigid body.
Definition at line 62 of file WoRB.h.
References WoRB::Geometry::Body, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::Object, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb.
unsigned WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Next | ( | unsigned | index | ) | [inline] |
Locates next rigid body from the given location.
Definition at line 69 of file WoRB.h.
References WoRB::Geometry::Body, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::Object, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb.
Referenced by WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator++().
{ while( index < worb->ObjectCount && worb->Object[index]->Body == 0 ) { ++index; } return index; }
RigidBodies& WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator++ | ( | ) | [inline] |
Advances to the next rigid body.
Definition at line 54 of file WoRB.h.
References WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Next().
RigidBody* WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator-> | ( | ) | [inline] |
Gets the pointer to the current rigid body.
Definition at line 79 of file WoRB.h.
References WoRB::Geometry::Body, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::Object, WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::ObjectCount, and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb.
unsigned WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::i [private] |
The current geometry.
Definition at line 38 of file WoRB.h.
Referenced by WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Clear(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Exists(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator++(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator->(), and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::RigidBodies().
WorldOfRigidBodies* WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::worb [private] |
Holds an instance where we iterate.
Definition at line 37 of file WoRB.h.
Referenced by WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Clear(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Count(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Exists(), WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::Next(), and WoRB::WorldOfRigidBodies< MaxObjects, MaxCollisions >::RigidBodies::operator->().