
Control may be user input, network messages, AI or any other governing instance that extends the Controller class. Controlled objects may be controlled by multiple Controller s. This class extends the ControlListener interface. Subclasses must implement that interfaces process function in order to react to controls.
Public Types | |
| typedef ControlDispatcher | Controller |
defines the Controller class | |
| typedef Controller * | CP |
pointer to Controller | |
Public Member Functions | |
| void | addController (const CP &) |
| adds a controller | |
| void | clearControllers () |
| registers this from all controllers. | |
| Controlled (const CP &ctrl=0) | |
| creates a controlled object | |
| virtual void | processControlEvent (ControlEvent &)=0 |
| void | removeController (const CP &) |
| removes a controller | |
| void | shareControllers (Controlled *peer) |
shares the Controller s controlling this object with peer | |
| void | transferControllers (Controlled *peer) |
transfers the Controller s controlling this object to peer | |
| virtual | ~Controlled () |
| de-registers this object from all controllers. | |
|
|
defines the
|
|
|
pointer to
|
|
|
creates a controlled object
If not |
|
|
de-registers this object from all controllers.
|
|
|
adds a controller This object is automatically registered with the controller. |
|
|
registers this from all controllers.
|
|
|
Implemented in ONE::network::Client, ONE::scene::ActorEntity, ONE::scene::CameraManager, ONE::scene::User, and ONE::util::FPController. |
|
|
removes a controller Tis object is automatically de-registered from the controller. |
|
|
shares the The controllers stay in control of this object. |
|
|
transfers the The controllers no longer control this object. |
1.4.3