IComponent Class Reference

#include <trilobot.h>

Inheritance diagram for IComponent:

Inheritance graph
[legend]
Collaboration diagram for IComponent:

Collaboration graph
[legend]

List of all members.


Detailed Description

Trilobot component interface

Definition at line 163 of file trilobot.h.


Public Member Functions

std::string Id () const
 Gets the component ID.
IComponentHandle (ICommand &command)
virtual ~IComponent ()
double Speed ()
double Speed (const DateTime &at)
double Radius ()
double Radius (const DateTime &at)
struct Position Position ()
struct Position Position (const DateTime &at)
double Size ()
double Size (const DateTime &at)
IObjectSerialize (std::ostream &output)
IObjectDeserialize (std::istream &input)

Protected Member Functions

virtual std::string ImplId () const =0
virtual void ImplHandle (ICommand &command)=0
virtual double ImplSpeed (const DateTime &)=0
virtual double ImplRadius (const DateTime &)=0
virtual struct Position ImplPosition (const DateTime &)=0
virtual double ImplSize (const DateTime &)=0
virtual void ImplSerialize (std::ostream &)=0
virtual void ImplDeserialize (std::istream &)=0

Constructor & Destructor Documentation

virtual ~IComponent (  )  [inline, virtual]

Definition at line 183 of file trilobot.h.


Member Function Documentation

std::string Id (  )  const [inline]

Gets the component ID.

Definition at line 167 of file trilobot.h.

References ImplId().

Here is the call graph for this function:

IComponent& Handle ( ICommand command  )  [inline]

Tries handle command. If can handle and do this the set command value Handled to true

Returns:
Selfrence

Definition at line 178 of file trilobot.h.

References ImplHandle().

Referenced by Core::dispatch().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual std::string ImplId (  )  const [protected, pure virtual]

Implemented in BaseComponent, Compass, and SoundSensor.

Referenced by Id().

Here is the caller graph for this function:

virtual void ImplHandle ( ICommand command  )  [protected, pure virtual]

Implemented in Compass, SoundSensor, and Trilobot.

Referenced by Handle().

Here is the caller graph for this function:

double Speed (  )  [inline, inherited]

Gets the object speed

Definition at line 101 of file physics.h.

References DateTime::Now().

Referenced by readCoreInfo().

Here is the call graph for this function:

Here is the caller graph for this function:

double Speed ( const DateTime at  )  [inline, inherited]

Definition at line 107 of file physics.h.

double Radius (  )  [inline, inherited]

Gets the object turn angle

Definition at line 113 of file physics.h.

References DateTime::Now().

Referenced by readCoreInfo().

Here is the call graph for this function:

Here is the caller graph for this function:

double Radius ( const DateTime at  )  [inline, inherited]

Definition at line 119 of file physics.h.

virtual double ImplSpeed ( const DateTime  )  [protected, pure virtual, inherited]

Implemented in BaseMovingObject, Compass, SoundSensor, and Trilobot.

virtual double ImplRadius ( const DateTime  )  [protected, pure virtual, inherited]

Implemented in BaseMovingObject, Compass, SoundSensor, and Trilobot.

struct Position Position (  )  [inline, read, inherited]

Gets the object center

Definition at line 40 of file physics.h.

References IObject::ImplPosition(), and DateTime::Now().

Referenced by Core::dispatch(), Arena::Private::drawCircle(), and readCoreInfo().

Here is the call graph for this function:

Here is the caller graph for this function:

struct Position Position ( const DateTime at  )  [inline, read, inherited]

Definition at line 46 of file physics.h.

References IObject::ImplPosition().

Here is the call graph for this function:

double Size (  )  [inline, inherited]

Gets the object radius

Definition at line 52 of file physics.h.

References IObject::ImplSize(), and DateTime::Now().

Referenced by Arena::Private::drawCircle(), and Arena::Private::renderBot().

Here is the call graph for this function:

Here is the caller graph for this function:

double Size ( const DateTime at  )  [inline, inherited]

Definition at line 58 of file physics.h.

References IObject::ImplSize().

Here is the call graph for this function:

IObject& Serialize ( std::ostream &  output  )  [inline, inherited]

Definition at line 63 of file physics.h.

References IObject::ImplSerialize().

Referenced by Core::Export().

Here is the call graph for this function:

Here is the caller graph for this function:

IObject& Deserialize ( std::istream &  input  )  [inline, inherited]

Definition at line 68 of file physics.h.

References IObject::ImplDeserialize().

Referenced by Core::Import().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual struct Position ImplPosition ( const DateTime  )  [read, protected, pure virtual, inherited]

Implemented in BaseObject, Compass, SoundSensor, and Trilobot.

Referenced by IObject::Position().

Here is the caller graph for this function:

virtual double ImplSize ( const DateTime  )  [protected, pure virtual, inherited]

Implemented in BaseObject, Compass, SoundSensor, and Trilobot.

Referenced by IObject::Size().

Here is the caller graph for this function:

virtual void ImplSerialize ( std::ostream &   )  [protected, pure virtual, inherited]

Implemented in BaseObject, BaseMovingObject, State, BaseComponent, SimpleComponent, Compass, SoundSensor, and Trilobot.

Referenced by IObject::Serialize().

Here is the caller graph for this function:

virtual void ImplDeserialize ( std::istream &   )  [protected, pure virtual, inherited]

Implemented in BaseObject, BaseMovingObject, State, BaseComponent, SimpleComponent, Compass, SoundSensor, and Trilobot.

Referenced by IObject::Deserialize().

Here is the caller graph for this function:


The documentation for this class was generated from the following file:
Generated on Fri Jul 10 22:42:12 2009 for rob08 by  doxygen 1.5.4