Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

ONE::util::Controlled Class Reference

Inheritance diagram for ONE::util::Controlled:

Inheritance graph
[legend]
List of all members.

Detailed Description

Abstract base class for objects that are under some form of control.

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.

Author:
Daniel Seibert


Public Types

typedef ControlDispatcher Controller
 defines the Controller class
typedef ControllerCP
 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.


Member Typedef Documentation

typedef ControlDispatcher ONE::util::Controlled::Controller
 

defines the Controller class

typedef Controller* ONE::util::Controlled::CP
 

pointer to Controller


Constructor & Destructor Documentation

ONE::util::Controlled::Controlled const CP ctrl = 0  ) 
 

creates a controlled object

If not 0, ctrl is added to the list of controllers.

virtual ONE::util::Controlled::~Controlled  )  [virtual]
 

de-registers this object from all controllers.


Member Function Documentation

void ONE::util::Controlled::addController const CP  ) 
 

adds a controller

This object is automatically registered with the controller.

void ONE::util::Controlled::clearControllers  ) 
 

registers this from all controllers.

virtual void ONE::util::ControlListener::processControlEvent ControlEvent  )  [pure virtual, inherited]
 

Implemented in ONE::network::Client, ONE::scene::ActorEntity, ONE::scene::CameraManager, ONE::scene::User, and ONE::util::FPController.

void ONE::util::Controlled::removeController const CP  ) 
 

removes a controller

Tis object is automatically de-registered from the controller.

void ONE::util::Controlled::shareControllers Controlled peer  ) 
 

shares the Controller s controlling this object with peer

The controllers stay in control of this object.

void ONE::util::Controlled::transferControllers Controlled peer  ) 
 

transfers the Controller s controlling this object to peer

The controllers no longer control this object.


Generated on Wed Sep 7 19:03:30 2005 for ONEngine by  doxygen 1.4.3