Orxonox  0.0.5 Codename: Arcturus
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
orxonox::BaseObject Class Reference

The BaseObject is the parent of all classes representing an instance in the game. More...

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/libraries/core/BaseObject.h>

Inheritance diagram for orxonox::BaseObject:
orxonox::OrxonoxClass orxonox::Configurable orxonox::Destroyable orxonox::Listable orxonox::Identifiable orxonox::Answer orxonox::AnswerId orxonox::BarColour orxonox::CollisionShape orxonox::Controller orxonox::CreateStars orxonox::DefaultWeaponmodeLink orxonox::Dialog orxonox::DockingAnimation orxonox::DockingEffect orxonox::EffectContainer orxonox::EventDispatcher orxonox::EventFilter orxonox::EventListener orxonox::EventName orxonox::EventTarget orxonox::Gametype orxonox::GlobalShader orxonox::GUISheet orxonox::Info orxonox::Item orxonox::Level orxonox::LevelInfo orxonox::MeshLodInformation orxonox::MultiTriggerContainer orxonox::Munition orxonox::MunitionContainer orxonox::Namespace orxonox::NotificationDispatcher orxonox::NotificationQueue orxonox::OrxonoxOverlay orxonox::OverlayGroup orxonox::Pickup orxonox::PickupCollection orxonox::PickupRepresentation orxonox::PortalLink orxonox::QuestDescription orxonox::QuestEffect orxonox::Question orxonox::QuestItem orxonox::QuestListener orxonox::ResourceCollection orxonox::ResourceLocation orxonox::Scene orxonox::Script orxonox::SpaceRaceManager orxonox::SpicedAsteroidBelt orxonox::SpicedAsteroidField orxonox::Template orxonox::Test orxonox::WeaponMode orxonox::WeaponPack orxonox::WeaponSet orxonox::WeaponSystem orxonox::WorldAmbientSound orxonox::WorldEntity

Classes

class  StrongOrWeakPtr
 

Public Member Functions

 BaseObject (Context *context)
 Constructor: Registers the object in the BaseObject-list. More...
 
virtual ~BaseObject ()
 Destructor. More...
 
void addEventListener (BaseObject *listener)
 Adds an object which listens to the events of this object. More...
 
void addEventSource (BaseObject *source, const std::string &state)
 Adds a new event source for a specific state. More...
 
void addTemplate (const std::string &name)
 Adds a Template to the object. More...
 
void addTemplate (Template *temp)
 Adds a Template to the object. More...
 
virtual void changedActivity ()
 This function gets called if the activity of the object changes. More...
 
virtual void changedMainStateName ()
 This function gets called if the main state name of the object changes. More...
 
virtual void changedName ()
 This function gets called if the name of the object changes. More...
 
virtual void changedVisibility ()
 This function gets called if the visibility of the object changes. More...
 
void fireEvent (const std::string &name="")
 Fires an event (without a state). More...
 
void fireEvent (bool activate, const std::string &name="")
 Fires an event which activates or deactivates a state. More...
 
void fireEvent (bool activate, BaseObject *originator, const std::string &name="")
 Fires an event which activates or deactivates a state with agiven originator (the object which triggered the event). More...
 
void fireEvent (Event &event)
 Fires an event, using the Event struct. More...
 
BaseObjectgetCreator () const
 
BaseObjectgetEventListener (unsigned int index) const
 Returns an event listener with a given index. More...
 
BaseObjectgetEventSource (unsigned int index, const std::string &state) const
 Returns an eventsource with a given index. More...
 
const XMLFilegetFile () const
 Returns a pointer to the XMLFile that loaded this object. More...
 
const std::string & getFilename () const
 Returns the levelfile that loaded this object. More...
 
GametypegetGametype () const
 
LevelgetLevel () const
 
const std::string & getLoaderIndentation () const
 Returns the indentation of the debug output in the Loader. More...
 
const std::string & getMainStateName () const
 Returns the name of the main state. More...
 
const std::string & getName () const
 Returns the name of the object. More...
 
NamespacegetNamespace () const
 
const std::string & getOldName () const
 Returns the old name of the object. More...
 
ScenegetScene () const
 
virtual uint32_t getSceneID () const
 
const std::set< Template * > & getTemplates () const
 Returns the set of all aplied templates. More...
 
const mboolisActive () const
 Returns the state of the objects activity. More...
 
bool isInitialized () const
 Returns if the object was initialized (passed the object registration). More...
 
const mboolisVisible () const
 Returns the state of the objects visibility. More...
 
virtual void processEvent (Event &event)
 Processing an event by calling the right main state. More...
 
void removeEventSource (BaseObject *source)
 Removes an eventsource (but doesn't unregister itself at the source). More...
 
void setActive (bool bActive)
 Sets the state of the objects activity. More...
 
void setCreator (BaseObject *creator)
 
void setFile (const XMLFile *file)
 Sets a pointer to the xml file that loaded this object. More...
 
void setGametype (const StrongOrWeakPtr< Gametype > &gametype)
 
void setLevel (const StrongOrWeakPtr< Level > &level)
 
void setLoaderIndentation (const std::string &indentation)
 Sets the indentation of the debug output in the Loader. More...
 
void setMainState (bool state)
 Sets the main state of the object to a given boolean value. More...
 
void setMainStateName (const std::string &name)
 Sets the name of the main state (used for event reactions). More...
 
void setName (const std::string &name)
 Sets the name of the object. More...
 
void setNamespace (const StrongOrWeakPtr< Namespace > &ns)
 
void setScene (const StrongOrWeakPtr< Scene > &scene, uint32_t sceneID)
 
void setVisible (bool bVisible)
 Sets the state of the objects visibility. More...
 
virtual void XMLEventPort (Element &xmlelement, XMLPort::Mode mode)
 Defines the possible event states of this object and parses eventsources from an XML file. More...
 
virtual void XMLPort (Element &xmlelement, XMLPort::Mode mode)
 XML loading and saving. More...
 
- Public Member Functions inherited from orxonox::OrxonoxClass
 OrxonoxClass ()
 
OrxonoxClassoperator= (const OrxonoxClass &)=default
 
- Public Member Functions inherited from orxonox::Configurable
 Configurable ()
 
void setConfigValues ()
 Function to collect the SetConfigValue-macro calls. More...
 
- Public Member Functions inherited from orxonox::Listable
 Listable ()
 Constructor: Allocates space in the element list. More...
 
 Listable (Context *context)
 Constructor: Allocates space in the element list and assigns the context. More...
 
virtual ~Listable ()
 Destructor: Removes the object from the object-lists. More...
 
ContextgetContext () const
 
void setContext (Context *context)
 Changes the context. More...
 
void unregisterObject ()
 Removes this object from the object-lists. More...
 
- Public Member Functions inherited from orxonox::Identifiable
 Identifiable ()
 Constructor: Sets the default values. More...
 
virtual ~Identifiable ()
 
ORX_FORCEINLINE voidgetDerivedPointer (unsigned int classID)
 Returns a valid pointer of any derived type that is registered in the class hierarchy. More...
 
template<class T >
ORX_FORCEINLINE T * getDerivedPointer (unsigned int classID)
 Version of getDerivedPointer with template. More...
 
template<class T >
ORX_FORCEINLINE const T * getDerivedPointer (unsigned int classID) const
 Const version of getDerivedPointer with template. More...
 
IdentifiergetIdentifier () const
 Returns the Identifier of the object. More...
 
bool isA (const Identifier *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
template<class B >
bool isA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isA (const Identifiable *object)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isChildOf (const Identifier *identifier)
 Returns true if the object's class is a child of the given type. More...
 
template<class B >
bool isChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a child of the given type. More...
 
bool isChildOf (const Identifiable *object)
 Returns true if the object's class is a child of the given type. More...
 
bool isDirectChildOf (const Identifier *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
template<class B >
bool isDirectChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectChildOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectParentOf (const Identifier *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
template<class B >
bool isDirectParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
bool isDirectParentOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isExactlyA (const Identifier *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
template<class B >
bool isExactlyA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
bool isExactlyA (const Identifiable *object)
 Returns true if the object's class is exactly of the given type. More...
 
bool isParentOf (const Identifier *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
template<class B >
bool isParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
bool isParentOf (const Identifiable *object)
 Returns true if the object's class is a parent of the given type. More...
 
- Public Member Functions inherited from orxonox::Destroyable
 Destroyable ()
 Constructor: Sets the default values. More...
 
virtual ~Destroyable ()
 Destructor: Notifies all DestructionListener (for example weak pointers) that this object is being deleted. More...
 
void destroy ()
 Deletes the object if no strong pointers point to this object. More...
 
void destroyLater ()
 Works like destroy() but doesn't destroy the object until the current tick has ended. More...
 
unsigned int getReferenceCount () const
 Returns the number of strong pointers that point to this object. More...
 

Static Public Member Functions

static void loadAllEventStates (Element &xmlelement, XMLPort::Mode mode, BaseObject *object, Identifier *identifier)
 Manually loads all event states, even if the class doesn't officially support them. More...
 

Protected Member Functions

void addEventState (const std::string &name, EventState *container)
 Adds a new event-state to the object. More...
 
EventStategetEventState (const std::string &name) const
 Returns the event-state with the given name. More...
 
- Protected Member Functions inherited from orxonox::Destroyable
virtual void preDestroy ()
 This virtual function is called if destroy() is called and no StrongPtr points to this object. More...
 

Protected Attributes

mbool bActive_
 True = the object is active. More...
 
mbool bVisible_
 True = the object is visible. More...
 
FunctorPtr mainStateFunctor_
 
std::string mainStateName_
 
std::string name_
 The name of the object. More...
 
std::set< std::string > networkTemplateNames_
 
std::string oldName_
 The old name of the object. More...
 

Private Member Functions

const std::string & getSingleTemplate (void) const
 Returns the name of the first Template. More...
 
TemplategetTemplate (unsigned int index) const
 Returns the Template with the given index. More...
 
void registerEventListener (BaseObject *object)
 Adds an object which listens to the events of this object. More...
 
void registerEventStates ()
 Calls XMLEventPort with an empty XML-element to register the event states if necessary. More...
 
void setXMLName (const std::string &name)
 Loads the name of the object through XML and calls all XMLNameListener. More...
 
void unregisterEventListener (BaseObject *object)
 Removes an event listener from this object. More...
 

Private Attributes

bool bInitialized_
 True if the object was initialized (passed the object registration) More...
 
bool bRegisteredEventStates_
 Becomes true after the object registered its event states (with XMLEventPort) More...
 
BaseObjectcreator_
 
std::set< BaseObject * > eventListeners_
 List of objects which listen to the events of this object. More...
 
std::set< BaseObject * > eventListenersXML_
 List of objects which listen to the events of this object through the "eventlisteners" subsection in XML. More...
 
std::map< BaseObject *, std::string > eventSources_
 List of objects which send events to this object, mapped to the state which they affect. More...
 
std::map< std::string, EventState * > eventStates_
 Maps the name of the event states to their helper objects. More...
 
const XMLFilefile_
 The XMLFile that loaded this object. More...
 
StrongOrWeakPtr< Gametypegametype_
 
Element * lastLoadedXMLElement_
 Non nullptr if the TinyXML attributes have already been copied to our own lowercase map. More...
 
StrongOrWeakPtr< Levellevel_
 
std::string loaderIndentation_
 Indentation of the debug output in the Loader. More...
 
StrongOrWeakPtr< Namespacenamespace_
 
StrongOrWeakPtr< Scenescene_
 
uint32_t sceneID_
 
std::set< Template * > templates_
 
std::map< std::string, std::string > xmlAttributes_
 Lowercase XML attributes. More...
 

Friends

template<class T >
class XMLPortClassParamContainer
 

Detailed Description

The BaseObject is the parent of all classes representing an instance in the game.

Constructor & Destructor Documentation

orxonox::BaseObject::BaseObject ( Context context)

Constructor: Registers the object in the BaseObject-list.

orxonox::BaseObject::~BaseObject ( )
virtual

Destructor.

Member Function Documentation

void orxonox::BaseObject::addEventListener ( BaseObject listener)

Adds an object which listens to the events of this object.

The events are sent to the other objects mainstate.

void orxonox::BaseObject::addEventSource ( BaseObject source,
const std::string &  state 
)

Adds a new event source for a specific state.

Parameters
sourceThe object which sends events to this object
stateThe state of this object which will be affected by the events
void orxonox::BaseObject::addEventState ( const std::string &  name,
EventState state 
)
protected

Adds a new event-state to the object.

Event-states are states which can be changed by events.

Parameters
nameThe name of the event
stateThe object containing information about the event-state
void orxonox::BaseObject::addTemplate ( const std::string &  name)

Adds a Template to the object.

Parameters
nameThe name of the Template
void orxonox::BaseObject::addTemplate ( Template temp)

Adds a Template to the object.

Parameters
tempThe Template
virtual void orxonox::BaseObject::changedActivity ( void  )
inlinevirtual
void orxonox::BaseObject::changedMainStateName ( )
virtual

This function gets called if the main state name of the object changes.

virtual void orxonox::BaseObject::changedName ( void  )
inlinevirtual
virtual void orxonox::BaseObject::changedVisibility ( void  )
inlinevirtual
void orxonox::BaseObject::fireEvent ( const std::string &  name = "")

Fires an event (without a state).

void orxonox::BaseObject::fireEvent ( bool  activate,
const std::string &  name = "" 
)

Fires an event which activates or deactivates a state.

void orxonox::BaseObject::fireEvent ( bool  activate,
BaseObject originator,
const std::string &  name = "" 
)

Fires an event which activates or deactivates a state with agiven originator (the object which triggered the event).

void orxonox::BaseObject::fireEvent ( Event event)

Fires an event, using the Event struct.

BaseObject* orxonox::BaseObject::getCreator ( ) const
inline
BaseObject * orxonox::BaseObject::getEventListener ( unsigned int  index) const

Returns an event listener with a given index.

BaseObject * orxonox::BaseObject::getEventSource ( unsigned int  index,
const std::string &  state 
) const

Returns an eventsource with a given index.

EventState * orxonox::BaseObject::getEventState ( const std::string &  name) const
protected

Returns the event-state with the given name.

const XMLFile* orxonox::BaseObject::getFile ( ) const
inline

Returns a pointer to the XMLFile that loaded this object.

Returns
The XMLFile
const std::string & orxonox::BaseObject::getFilename ( ) const

Returns the levelfile that loaded this object.

Returns
The levelfile
Gametype* orxonox::BaseObject::getGametype ( ) const
inline
Level* orxonox::BaseObject::getLevel ( ) const
inline
const std::string& orxonox::BaseObject::getLoaderIndentation ( ) const
inline

Returns the indentation of the debug output in the Loader.

Returns
The indentation
const std::string& orxonox::BaseObject::getMainStateName ( ) const
inline

Returns the name of the main state.

const std::string& orxonox::BaseObject::getName ( void  ) const
inline

Returns the name of the object.

Namespace* orxonox::BaseObject::getNamespace ( ) const
inline
const std::string& orxonox::BaseObject::getOldName ( ) const
inline

Returns the old name of the object.

Scene* orxonox::BaseObject::getScene ( ) const
inline
virtual uint32_t orxonox::BaseObject::getSceneID ( ) const
inlinevirtual

Reimplemented in orxonox::Scene.

const std::string & orxonox::BaseObject::getSingleTemplate ( void  ) const
private

Returns the name of the first Template.

Returns
The name as string.
Template * orxonox::BaseObject::getTemplate ( unsigned int  index) const
private

Returns the Template with the given index.

Parameters
indexThe index
const std::set<Template*>& orxonox::BaseObject::getTemplates ( ) const
inline

Returns the set of all aplied templates.

const mbool& orxonox::BaseObject::isActive ( void  ) const
inline

Returns the state of the objects activity.

Returns
The state of the activity
bool orxonox::BaseObject::isInitialized ( ) const
inline

Returns if the object was initialized (passed the object registration).

Returns
True was the object is initialized
const mbool& orxonox::BaseObject::isVisible ( ) const
inline

Returns the state of the objects visibility.

Returns
The state of the visibility
void orxonox::BaseObject::loadAllEventStates ( Element &  xmlelement,
XMLPort::Mode  mode,
BaseObject object,
Identifier identifier 
)
static

Manually loads all event states, even if the class doesn't officially support them.

This is needed by some classes like EventDispatcher or EventTarget.

void orxonox::BaseObject::processEvent ( Event event)
virtual

Processing an event by calling the right main state.

Parameters
eventThe event struct which contains the information about the event

Reimplemented in orxonox::Attacher, orxonox::EventListener, orxonox::EventDispatcher, orxonox::EventFilter, and orxonox::EventTarget.

void orxonox::BaseObject::registerEventListener ( BaseObject object)
private

Adds an object which listens to the events of this object.

void orxonox::BaseObject::registerEventStates ( )
private

Calls XMLEventPort with an empty XML-element to register the event states if necessary.

void orxonox::BaseObject::removeEventSource ( BaseObject source)

Removes an eventsource (but doesn't unregister itself at the source).

void orxonox::BaseObject::setActive ( bool  bActive)
inline

Sets the state of the objects activity.

Parameters
bActiveTrue = active
void orxonox::BaseObject::setCreator ( BaseObject creator)
inline
void orxonox::BaseObject::setFile ( const XMLFile file)
inline

Sets a pointer to the xml file that loaded this object.

Parameters
fileThe pointer to the XMLFile
void orxonox::BaseObject::setGametype ( const StrongOrWeakPtr< Gametype > &  gametype)
inline
void orxonox::BaseObject::setLevel ( const StrongOrWeakPtr< Level > &  level)
inline
void orxonox::BaseObject::setLoaderIndentation ( const std::string &  indentation)
inline

Sets the indentation of the debug output in the Loader.

Parameters
indentationThe indentation
void orxonox::BaseObject::setMainState ( bool  state)

Sets the main state of the object to a given boolean value.

Note: The main state of an object can be set with the setMainStateName function. It's part of the eventsystem and used for event forwarding (when the target object can't specify a specific state, the main state is used by default).

void orxonox::BaseObject::setMainStateName ( const std::string &  name)
inline

Sets the name of the main state (used for event reactions).

void orxonox::BaseObject::setName ( const std::string &  name)
inline

Sets the name of the object.

Parameters
nameThe name
void orxonox::BaseObject::setNamespace ( const StrongOrWeakPtr< Namespace > &  ns)
inline
void orxonox::BaseObject::setScene ( const StrongOrWeakPtr< Scene > &  scene,
uint32_t  sceneID 
)
inline
void orxonox::BaseObject::setVisible ( bool  bVisible)
inline

Sets the state of the objects visibility.

Parameters
bVisibleTrue = visible
void orxonox::BaseObject::setXMLName ( const std::string &  name)
private

Loads the name of the object through XML and calls all XMLNameListener.

Parameters
nameThe name of the object
void orxonox::BaseObject::unregisterEventListener ( BaseObject object)
inlineprivate

Removes an event listener from this object.

void orxonox::BaseObject::XMLEventPort ( Element &  xmlelement,
XMLPort::Mode  mode 
)
virtual

Defines the possible event states of this object and parses eventsources from an XML file.

Parameters
xmlelementThe XML-element
modeThe mode defines the operation that is being executed: loading or saving the object (from or to XML respectively)

Reimplemented in orxonox::Script, orxonox::QuestEffectBeacon, orxonox::NotificationDispatcher, orxonox::EventMultiTrigger, orxonox::EventTrigger, orxonox::PortalEndPoint, orxonox::Dock, orxonox::Pawn, orxonox::Dialog, orxonox::MineProjectile, orxonox::WorldAmbientSound, orxonox::WorldSound, orxonox::ControllerDirector, and orxonox::ParticleSpawner.

void orxonox::BaseObject::XMLPort ( Element &  xmlelement,
XMLPort::Mode  mode 
)
virtual

XML loading and saving.

Parameters
xmlelementThe XML-element
modeThe mode defines the operation that is being executed: loading or saving the object (from or to XML respectively)

Reimplemented in orxonox::LevelInfo, orxonox::LensFlare, orxonox::PongCenterpoint, orxonox::ModularSpaceShip, orxonox::MultiTrigger, orxonox::PartDestructionEvent, orxonox::NotificationQueue, orxonox::PickupRepresentation, orxonox::Actionpoint, orxonox::DistanceTrigger, orxonox::Pickup, orxonox::WorldEntity, orxonox::Script, orxonox::DistanceMultiTrigger, orxonox::SpaceShip, orxonox::SpaceBoundaries, orxonox::GlobalQuest, orxonox::QuestEffectBeacon, orxonox::HealthPickup, orxonox::OrxonoxOverlay, orxonox::ForceField, orxonox::MetaPickup, orxonox::AsteroidMinable, orxonox::LocalQuest, orxonox::QuestListener, orxonox::PickupSpawner, orxonox::Quest, orxonox::QuestHint, orxonox::NotificationDispatcher, orxonox::ShieldPickup, orxonox::ActionpointController, orxonox::SpeedPickup, orxonox::FlappyOrxShip, orxonox::EventMultiTrigger, orxonox::ShrinkPickup, orxonox::TriggerBase, orxonox::CommandNotification, orxonox::NotificationQueueCEGUI, orxonox::InvisiblePickup, orxonox::PickupCollection, orxonox::HUDBar, orxonox::SimpleNotification, orxonox::Turret, orxonox::DronePickup, orxonox::AddReward, orxonox::QuestDescription, orxonox::Munition, orxonox::Dock, orxonox::PongBall, orxonox::AddQuestHint, orxonox::Scene, orxonox::SpicedAsteroidBelt, orxonox::PortalEndPoint, orxonox::QuestItem, orxonox::WeaponSlot, orxonox::Pawn, orxonox::AddQuest, orxonox::CompleteQuest, orxonox::FailQuest, orxonox::TetrisCenterpoint, orxonox::PongScore, orxonox::TowerDefenseField, orxonox::CollisionShape, orxonox::CompoundCollisionShape, orxonox::DockToShip, orxonox::BoxCollisionShape, orxonox::PlaneCollisionShape, orxonox::MunitionPickup, orxonox::ChangeQuestStatus, orxonox::EnergyDrink, orxonox::MineGun, orxonox::Model, orxonox::Engine, orxonox::Dialog, orxonox::SpaceRaceManager, orxonox::CheckPoint, orxonox::OverlayGroup, orxonox::SpicedAsteroidField, orxonox::SphereCollisionShape, orxonox::HsW01, orxonox::MobileEntity, orxonox::PortalLink, orxonox::Light, orxonox::FlyingController, orxonox::Template, orxonox::Question, orxonox::Planet, orxonox::FlameGun, orxonox::IceGun, orxonox::RocketFire, orxonox::SplitGun, orxonox::ReplenishingMunition, orxonox::ControllableEntity, orxonox::AbstractRadiusHeightCollisionShape, orxonox::MunitionContainer, orxonox::TowerDefenseHUDController, orxonox::WeaponMode, orxonox::HUDWeapon, orxonox::OverlayText, orxonox::BoostPickup, orxonox::DamageBoostPickup, orxonox::MultiStateEngine, orxonox::AutonomousDrone, orxonox::ScriptableControllerDrone, orxonox::Attacher, orxonox::BarColour, orxonox::HUDNavigation, orxonox::TowerDefenseCenterpoint, orxonox::ExplosionPart, orxonox::Namespace, orxonox::Answer, orxonox::AnswerId, orxonox::EventListener, orxonox::HUDRadar, orxonox::FormationController, orxonox::MeshLodInformation, orxonox::Level, orxonox::WorldAmbientSound, orxonox::Weapon, orxonox::Drone, orxonox::SpaceRaceController, orxonox::HoverOrigin, orxonox::EventDispatcher, orxonox::EventFilter, orxonox::EventTarget, orxonox::OrxoKartOrigin, orxonox::HUDWeaponSystem, orxonox::SOBFireball, orxonox::SOBTube, orxonox::WagnisHUD, orxonox::RaceCheckPoint, orxonox::JumpItem, orxonox::JumpEnemy, orxonox::JumpPlatform, orxonox::JumpPlatformTimer, orxonox::OrxyRoadHUDinfo, orxonox::StoryModeHUD, orxonox::SOBFlagstone, orxonox::Billboard, orxonox::ShipPart, orxonox::WorldSound, orxonox::ResourceLocation, orxonox::Asteroids2DCenterPoint, orxonox::SOBCoin, orxonox::SOBGumba, orxonox::SOBItem, orxonox::SOBMushroom, orxonox::MovableEntity, orxonox::FpsPlayer, orxonox::DodgeRaceHUDinfo, orxonox::JumpCenterpoint, orxonox::JumpScore, orxonox::HUDHealthBar, orxonox::SOBCenterpoint, orxonox::Controller, orxonox::FadingBillboard, orxonox::ResourceCollection, orxonox::Asteroids2DHUDinfo, orxonox::HoverShip, orxonox::OrxoKartKart, orxonox::FadeoutText, orxonox::GUIOverlay, orxonox::CountDown, orxonox::LastManStandingInfos, orxonox::LastTeamStandingInfos, orxonox::TeamBaseMatchScore, orxonox::PacmanGhost, orxonox::PacmanPointAfraid, orxonox::PacmanPointSphere, orxonox::ArrowController, orxonox::AnimatedModel, orxonox::Backlight, orxonox::BlinkingBillboard, orxonox::GlobalShader, orxonox::GUISheet, orxonox::WeaponPack, orxonox::WeaponSet, orxonox::NameableStaticEntity, orxonox::SpawnPoint, orxonox::CreateStars, orxonox::PacmanHUDinfo, orxonox::ControllerDirector, orxonox::WaypointPatrolController, orxonox::ParticleEmitter, orxonox::ParticleSpawner, orxonox::EffectContainer, orxonox::TeamSpawnPoint, orxonox::FlappyOrxHUDinfo, orxonox::ArtificialController, orxonox::DefaultWeaponmodeLink, orxonox::InvaderHUDinfo, orxonox::SOBHUDInfo, orxonox::SOBQBlock, orxonox::CameraPosition, orxonox::JumpFigure, orxonox::ShootableObstacle, orxonox::WagnisGameboard, orxonox::WagnisProvince, and orxonox::WagnisGun.

Friends And Related Function Documentation

template<class T >
friend class XMLPortClassParamContainer
friend

Member Data Documentation

mbool orxonox::BaseObject::bActive_
protected

True = the object is active.

bool orxonox::BaseObject::bInitialized_
private

True if the object was initialized (passed the object registration)

bool orxonox::BaseObject::bRegisteredEventStates_
private

Becomes true after the object registered its event states (with XMLEventPort)

mbool orxonox::BaseObject::bVisible_
protected

True = the object is visible.

BaseObject* orxonox::BaseObject::creator_
private
std::set<BaseObject*> orxonox::BaseObject::eventListeners_
private

List of objects which listen to the events of this object.

std::set<BaseObject*> orxonox::BaseObject::eventListenersXML_
private

List of objects which listen to the events of this object through the "eventlisteners" subsection in XML.

std::map<BaseObject*, std::string> orxonox::BaseObject::eventSources_
private

List of objects which send events to this object, mapped to the state which they affect.

std::map<std::string, EventState*> orxonox::BaseObject::eventStates_
private

Maps the name of the event states to their helper objects.

const XMLFile* orxonox::BaseObject::file_
private

The XMLFile that loaded this object.

StrongOrWeakPtr<Gametype> orxonox::BaseObject::gametype_
private
Element* orxonox::BaseObject::lastLoadedXMLElement_
private

Non nullptr if the TinyXML attributes have already been copied to our own lowercase map.

StrongOrWeakPtr<Level> orxonox::BaseObject::level_
private
std::string orxonox::BaseObject::loaderIndentation_
private

Indentation of the debug output in the Loader.

FunctorPtr orxonox::BaseObject::mainStateFunctor_
protected
std::string orxonox::BaseObject::mainStateName_
protected
std::string orxonox::BaseObject::name_
protected

The name of the object.

StrongOrWeakPtr<Namespace> orxonox::BaseObject::namespace_
private
std::set<std::string> orxonox::BaseObject::networkTemplateNames_
protected
std::string orxonox::BaseObject::oldName_
protected

The old name of the object.

StrongOrWeakPtr<Scene> orxonox::BaseObject::scene_
private
uint32_t orxonox::BaseObject::sceneID_
private
std::set<Template*> orxonox::BaseObject::templates_
private
std::map<std::string, std::string> orxonox::BaseObject::xmlAttributes_
private

Lowercase XML attributes.


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