se_core::Component Class Reference

Base class for functionality composites. More...

#include <Component.hpp>

Inheritance diagram for se_core::Component:

se_client::CameraComponent se_client::PlayerComponent se_core::ActionComponent se_core::Actor se_core::Area se_core::NodeComponent se_core::PosComponent se_core::ScriptComponent se_core::SpawnComponent se_core::StatComponent List of all members.

Public Member Functions

 Component (int type, Composite *owner, const ComponentFactory *factory=0)
 Construct unnamed Component.
virtual const char * name () const
 By default returns name of composite, which returns name of composite factory.
virtual ~Component ()
 Destructor.
Compositeowner ()
const Compositeowner () const
 Component type.
Componentcomponent (int type)
const Componentcomponent (int type) const
int type () const
const ComponentFactoryfactory ()
bool isActive ()
bool isDead () const

Protected Member Functions

virtual void setActive (bool state)
 Called by Composite.
virtual void setDead ()
 Called by Composite.
virtual void parentChanged (Composite *newParent, Composite *oldParent)
 Called by Composite.
virtual void zoneChanged (int type, Composite *newArea, Composite *oldArea)
 Called by Composite.
virtual void init ()
 Called by Composite.
virtual void cleanup ()
 Called by Composite.

Protected Attributes

int type_
 The type of Component.
Compositeowner_
const ComponentFactoryfactory_

Friends

class Composite

Detailed Description

Base class for functionality composites.

Definition at line 34 of file Component.hpp.


Constructor & Destructor Documentation

se_core::Component::Component int  type,
Composite owner,
const ComponentFactory factory = 0
 

Construct unnamed Component.

Parameters:
type The type of Component.

Definition at line 6 of file Component.cpp.

se_core::Component::~Component  )  [virtual]
 

Destructor.

Definition at line 13 of file Component.cpp.


Member Function Documentation

void se_core::Component::cleanup  )  [protected, virtual]
 

Called by Composite.

Reimplemented in se_core::NodeComponent, se_core::RootComponent, se_core::ActionComponent, se_core::CutsceneComponent, se_core::PosComponent, se_core::ScriptComponent, se_core::SignalAreaComponent, se_core::SignalComponent, se_core::SpawnComponent, se_ogre::O3dAreaComponent, se_ogre::O3dThingComponent, and se_basic::NavMeshComponent.

Definition at line 47 of file Component.cpp.

Referenced by se_core::Composite::cleanup().

const Component* se_core::Component::component int  type  )  const [inline]
 

Definition at line 71 of file Component.hpp.

References component().

Component* se_core::Component::component int  type  )  [inline]
 

Definition at line 67 of file Component.hpp.

References se_core::Composite::component().

Referenced by component(), se_core::Component::ComponentPtr< T, type >::ComponentPtr(), se_ogre::O3dThingComponent::get(), se_ogre::O3dNodeComponent::get(), and se_ogre::O3dAreaComponent::get().

const ComponentFactory* se_core::Component::factory  )  [inline]
 

Definition at line 81 of file Component.hpp.

Referenced by se_core::Composite::releaseComponents().

void se_core::Component::init  )  [protected, virtual]
 

Called by Composite.

Reimplemented in se_core::RootComponent, se_core::SignalAreaComponent, se_ogre::O3dAreaComponent, and se_ogre::O3dThingComponent.

Definition at line 42 of file Component.cpp.

Referenced by se_core::Composite::init().

bool se_core::Component::isActive  ) 
 

Definition at line 26 of file Component.cpp.

bool se_core::Component::isDead  )  const
 

Definition at line 31 of file Component.cpp.

Referenced by se_core::Actor::affect().

const char * se_core::Component::name  )  const [virtual]
 

By default returns name of composite, which returns name of composite factory.

Reimplemented in se_core::CutsceneAreaComponent, se_core::CutsceneComponent, se_core::CutsceneManager, se_core::CollisionAreaComponent, se_core::SignalAreaComponent, se_core::SignalComponent, se_core::SpawnAreaComponent, se_core::SpawnManager, se_core::ZoneAreaComponent, se_core::ZoneComponent, se_core::ZoneManager, se_basic::NavMeshAreaComponent, se_basic::NavMeshComponent, and se_basic::NavMeshManager.

Definition at line 21 of file Component.cpp.

Referenced by se_core::Area::addNeighbour(), se_core::DefaultTC::collide(), se_core::CoDefault::collide(), se_basic::Say::perform(), and se_ogre::SpeechBubble::speechEvent().

const Composite* se_core::Component::owner  )  const [inline]
 

Component type.

Definition at line 62 of file Component.hpp.

Composite* se_core::Component::owner  )  [inline]
 

Definition at line 54 of file Component.hpp.

Referenced by se_core::CollisionAreaComponent::_testCollisionCandidates(), se_core::CollisionAreaComponent::_testCollisionCandidates2(), se_core::HealthListeners::add(), se_core::ZoneAreaComponent::addNeighbour(), se_basic::PhTrackingCamera::affect(), se_core::HealthListeners::castHealthChangedEvent(), se_core::Component::ComponentPtr< T, type >::ComponentPtr(), se_ogre::ThingMOManager::create(), se_basic::SimpleAreaThingEncoder::encode(), se_core::SpawnComponent::get(), se_core::SignalComponent::get(), se_core::SignalAreaComponent::get(), se_core::ScriptComponent::get(), se_core::PosComponent::get(), se_core::PhysicsComponent::get(), se_core::StatComponent::get(), se_ogre::O3dThingComponent::get(), se_ogre::O3dNodeComponent::get(), se_ogre::O3dAreaComponent::get(), se_core::Pos::hasArea(), se_core::CollisionGrid::insert(), se_core::CollisionComponent::isCollideable(), se_core::ZoneComponent::name(), se_core::Component::ComponentPtr< T, type >::operator=(), se_core::DefaultTC::pop(), se_core::CoDefault::pop(), se_core::DefaultTC::popAndDie(), se_core::CoDefault::popAndDie(), se_core::CollisionAreaComponent::removeCollideable(), se_core::AreaManager::resetThings(), se_core::Actor::scheduleForDestruction(), se_core::AreaManager::setActive(), se_core::AreaManager::setInactive(), and se_ogre::O3dManager::updateStats().

virtual void se_core::Component::parentChanged Composite newParent,
Composite oldParent
[inline, protected, virtual]
 

Called by Composite.

Reimplemented in se_core::AreaChildComponent, and se_core::NodeComponent.

Definition at line 101 of file Component.hpp.

Referenced by se_core::Composite::resetParent(), and se_core::Composite::setParent().

virtual void se_core::Component::setActive bool  state  )  [inline, protected, virtual]
 

Called by Composite.

Reimplemented in se_core::RootChildComponent, se_core::ActionComponent, se_core::CutsceneAreaComponent, se_core::PhysicsAreaComponent, se_core::CollisionAreaComponent, se_core::ScriptComponent, se_core::SignalAreaComponent, se_core::SpawnAreaComponent, se_core::ZoneAreaComponent, se_client::CameraComponent, se_client::PlayerComponent, se_ogre::O3dAreaComponent, se_ogre::O3dThingComponent, and se_basic::NavMeshAreaComponent.

Definition at line 93 of file Component.hpp.

Referenced by se_core::Composite::setActive().

virtual void se_core::Component::setDead  )  [inline, protected, virtual]
 

Called by Composite.

Reimplemented in se_core::SignalComponent, and se_core::SpawnComponent.

Definition at line 97 of file Component.hpp.

Referenced by se_core::Composite::scheduleForDestruction().

int se_core::Component::type  )  const [inline]
 

Definition at line 76 of file Component.hpp.

Referenced by se_core::Composite::component().

void se_core::Component::zoneChanged int  type,
Composite newArea,
Composite oldArea
[protected, virtual]
 

Called by Composite.

Reimplemented in se_core::AreaChildComponent, se_core::CollisionComponent, and se_core::SignalComponent.

Definition at line 37 of file Component.cpp.

Referenced by se_core::Composite::zoneChanged().


Friends And Related Function Documentation

friend class Composite [friend]
 

Definition at line 89 of file Component.hpp.


Member Data Documentation

const ComponentFactory* se_core::Component::factory_ [protected]
 

Definition at line 120 of file Component.hpp.

Composite* se_core::Component::owner_ [protected]
 

Definition at line 118 of file Component.hpp.

int se_core::Component::type_ [protected]
 

The type of Component.

Definition at line 117 of file Component.hpp.


The documentation for this class was generated from the following files:

Home Page | SagaEngine trunk (updated nightly) reference generated Sun Dec 2 20:06:22 2007 by Doxygen version 1.3.9.1.

SourceForge.net Logo