xoreos  0.0.5
Public Member Functions | Static Public Member Functions | Private Types | Private Attributes | List of all members
Engines::DragonAge::ObjectContainer Class Reference

#include <objectcontainer.h>

Inheritance diagram for Engines::DragonAge::ObjectContainer:
Inheritance graph
[legend]
Collaboration diagram for Engines::DragonAge::ObjectContainer:
Collaboration graph
[legend]

Public Member Functions

 ObjectContainer ()
 
 ~ObjectContainer ()
 
void clearObjects ()
 
void addObject (DragonAge::Object &object)
 Add an object to this container. More...
 
void removeObject (DragonAge::Object &object)
 Remove an object from this container. More...
 
::Aurora::NWScript::ObjectgetFirstObjectByType (ObjectType type) const
 Return the first object of this type. More...
 
::Aurora::NWScript::ObjectSearchfindObjectsByType (ObjectType type) const
 Return a search context to iterate over all objects of this type. More...
 
- Public Member Functions inherited from Aurora::NWScript::ObjectContainer
 ObjectContainer ()
 
 ~ObjectContainer ()
 
void clearObjects ()
 
void addObject (Object &object)
 Add an object to this container. More...
 
void removeObject (Object &object)
 Remove an object from this container. More...
 
ObjectgetObjectByID (uint32 id) const
 Find a specific object by ID. More...
 
ObjectgetFirstObject () const
 Return the first object. More...
 
ObjectgetFirstObjectByTag (const Common::UString &tag) const
 Return the first object with this tag. More...
 
ObjectSearchfindObjects () const
 Return a search context to iterate over all objects. More...
 
ObjectSearchfindObjectsByTag (const Common::UString &tag) const
 Return a search context to iterate over all objects with this tag. More...
 

Static Public Member Functions

static DragonAge::ObjecttoObject (::Aurora::NWScript::Object *object)
 
static AreatoArea (Aurora::NWScript::Object *object)
 
static WaypointtoWaypoint (Aurora::NWScript::Object *object)
 
static PlaceabletoPlaceable (Aurora::NWScript::Object *object)
 
static CreaturetoCreature (Aurora::NWScript::Object *object)
 
static EventtoEvent (Aurora::NWScript::EngineType *engineType)
 

Private Types

typedef std::list< DragonAge::Object * > ObjectList
 
typedef std::map< ObjectType, ObjectListObjectMap
 

Private Attributes

ObjectMap _objects
 

Additional Inherited Members

- Protected Member Functions inherited from Aurora::NWScript::ObjectContainer
void lock ()
 
void unlock ()
 

Detailed Description

Definition at line 68 of file objectcontainer.h.

Member Typedef Documentation

◆ ObjectList

Definition at line 96 of file objectcontainer.h.

◆ ObjectMap

Definition at line 97 of file objectcontainer.h.

Constructor & Destructor Documentation

◆ ObjectContainer()

Engines::DragonAge::ObjectContainer::ObjectContainer ( )

Definition at line 66 of file objectcontainer.cpp.

◆ ~ObjectContainer()

Engines::DragonAge::ObjectContainer::~ObjectContainer ( )

Definition at line 69 of file objectcontainer.cpp.

Member Function Documentation

◆ addObject()

void Engines::DragonAge::ObjectContainer::addObject ( DragonAge::Object object)

Add an object to this container.

Definition at line 82 of file objectcontainer.cpp.

References _objects, Aurora::NWScript::ObjectContainer::addObject(), Aurora::NWScript::ObjectContainer::lock(), and Aurora::NWScript::ObjectContainer::unlock().

Referenced by Engines::DragonAge::Area::loadObject().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clearObjects()

void Engines::DragonAge::ObjectContainer::clearObjects ( )

Definition at line 72 of file objectcontainer.cpp.

References _objects, Aurora::NWScript::ObjectContainer::clearObjects(), Aurora::NWScript::ObjectContainer::lock(), and Aurora::NWScript::ObjectContainer::unlock().

Referenced by Engines::DragonAge::Campaign::unload(), and Engines::DragonAge::Campaign::unloadArea().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findObjectsByType()

Aurora::NWScript::ObjectSearch * Engines::DragonAge::ObjectContainer::findObjectsByType ( ObjectType  type) const

Return a search context to iterate over all objects of this type.

Definition at line 112 of file objectcontainer.cpp.

References _objects.

◆ getFirstObjectByType()

Aurora::NWScript::Object * Engines::DragonAge::ObjectContainer::getFirstObjectByType ( ObjectType  type) const

Return the first object of this type.

Definition at line 102 of file objectcontainer.cpp.

References _objects, and Aurora::NWScript::SearchRange< T >::get().

Referenced by Engines::DragonAge::Area::getEntryLocation().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeObject()

void Engines::DragonAge::ObjectContainer::removeObject ( DragonAge::Object object)

Remove an object from this container.

Definition at line 92 of file objectcontainer.cpp.

References _objects, Aurora::NWScript::ObjectContainer::lock(), Aurora::NWScript::ObjectContainer::removeObject(), and Aurora::NWScript::ObjectContainer::unlock().

Referenced by Engines::DragonAge::Area::clean().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toArea()

Area * Engines::DragonAge::ObjectContainer::toArea ( Aurora::NWScript::Object object)
static

Definition at line 126 of file objectcontainer.cpp.

◆ toCreature()

Creature * Engines::DragonAge::ObjectContainer::toCreature ( Aurora::NWScript::Object object)
static

Definition at line 138 of file objectcontainer.cpp.

◆ toEvent()

Event * Engines::DragonAge::ObjectContainer::toEvent ( Aurora::NWScript::EngineType engineType)
static

◆ toObject()

DragonAge::Object * Engines::DragonAge::ObjectContainer::toObject ( ::Aurora::NWScript::Object object)
static

◆ toPlaceable()

Placeable * Engines::DragonAge::ObjectContainer::toPlaceable ( Aurora::NWScript::Object object)
static

Definition at line 134 of file objectcontainer.cpp.

◆ toWaypoint()

Waypoint * Engines::DragonAge::ObjectContainer::toWaypoint ( Aurora::NWScript::Object object)
static

Definition at line 130 of file objectcontainer.cpp.

Member Data Documentation

◆ _objects

ObjectMap Engines::DragonAge::ObjectContainer::_objects
private

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