Urho3D::Context Class Reference
Public Member Functions |
Private Member Functions |
Private Attributes |
Friends |
List of all members
Urho3D::Context Class Reference
Urho3D execution context. Provides access to subsystems, object factories and attributes, and event receivers. More...
#include <Urho3D/Core/Context.h>
Inheritance diagram for Urho3D::Context:
Collaboration diagram for Urho3D::Context:
Public Member Functions | |
| Context () | |
| Construct. | |
| ~Context () | |
| Destruct. More... | |
| template<class T > | |
| SharedPtr< T > | CreateObject () |
| Create an object by type. Return pointer to it or null if no factory found. | |
| SharedPtr< Object > | CreateObject (StringHash objectType) |
| Create an object by type hash. Return pointer to it or null if no factory found. | |
| void | RegisterFactory (ObjectFactory *factory) |
| Register a factory for an object type. | |
| void | RegisterFactory (ObjectFactory *factory, const char *category) |
| Register a factory for an object type and specify the object category. | |
| void | RegisterSubsystem (Object *subsystem) |
| Register a subsystem. | |
| void | RemoveSubsystem (StringHash objectType) |
| Remove a subsystem. | |
| void | RegisterAttribute (StringHash objectType, const AttributeInfo &attr) |
| Register object attribute. | |
| void | RemoveAttribute (StringHash objectType, const char *name) |
| Remove object attribute. | |
| void | UpdateAttributeDefaultValue (StringHash objectType, const char *name, const Variant &defaultValue) |
| Update object attribute's default value. | |
| VariantMap & | GetEventDataMap () |
| Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps. | |
| void | CopyBaseAttributes (StringHash baseType, StringHash derivedType) |
| Copy base class attributes to derived class. | |
| template<class T > | |
| void | RegisterFactory () |
| Template version of registering an object factory. | |
| template<class T > | |
| void | RegisterFactory (const char *category) |
| Template version of registering an object factory with category. | |
| template<class T > | |
| void | RemoveSubsystem () |
| Template version of removing a subsystem. | |
| template<class T > | |
| void | RegisterAttribute (const AttributeInfo &attr) |
| Template version of registering an object attribute. | |
| template<class T > | |
| void | RemoveAttribute (const char *name) |
| Template version of removing an object attribute. | |
| template<class T , class U > | |
| void | CopyBaseAttributes () |
| Template version of copying base class attributes to derived class. | |
| template<class T > | |
| void | UpdateAttributeDefaultValue (const char *name, const Variant &defaultValue) |
| Template version of updating an object attribute's default value. | |
| Object * | GetSubsystem (StringHash type) const |
| Return subsystem by type. | |
| const Variant & | GetGlobalVar (StringHash key) const |
| Return global variable based on key. | |
| const VariantMap & | GetGlobalVars () const |
| Return all global variables. | |
| void | SetGlobalVar (StringHash key, const Variant &value) |
| Set global variable with the respective key and value. | |
|
const HashMap< StringHash, SharedPtr< Object > > & | GetSubsystems () const |
| Return all subsystems. | |
|
const HashMap< StringHash, SharedPtr< ObjectFactory > > & | GetObjectFactories () const |
| Return all object factories. | |
|
const HashMap< String, Vector < StringHash > > & | GetObjectCategories () const |
| Return all object categories. | |
| Object * | GetEventSender () const |
| Return active event sender. Null outside event handling. | |
| EventHandler * | GetEventHandler () const |
| Return active event handler. Set by Object. Null outside event handling. | |
| const String & | GetTypeName (StringHash objectType) const |
| Return object type name from hash, or empty if unknown. | |
| AttributeInfo * | GetAttribute (StringHash objectType, const char *name) |
| Return a specific attribute description for an object, or null if not found. | |
| template<class T > | |
| T * | GetSubsystem () const |
| Template version of returning a subsystem. | |
| template<class T > | |
| AttributeInfo * | GetAttribute (const char *name) |
| Template version of returning a specific attribute description. | |
| const Vector< AttributeInfo > * | GetAttributes (StringHash type) const |
| Return attribute descriptions for an object type, or null if none defined. | |
| const Vector< AttributeInfo > * | GetNetworkAttributes (StringHash type) const |
| Return network replication attribute descriptions for an object type, or null if none defined. | |
|
const HashMap< StringHash, Vector< AttributeInfo > > & | GetAllAttributes () const |
| Return all registered attributes. | |
| HashSet< Object * > * | GetEventReceivers (Object *sender, StringHash eventType) |
| Return event receivers for a sender and event type, or null if they do not exist. | |
| HashSet< Object * > * | GetEventReceivers (StringHash eventType) |
| Return event receivers for an event type, or null if they do not exist. | |
Public Member Functions inherited from Urho3D::RefCounted | |
| RefCounted () | |
| Construct. Allocate the reference count structure and set an initial self weak reference. | |
| virtual | ~RefCounted () |
| Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist. | |
| void | AddRef () |
| Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting. | |
| void | ReleaseRef () |
| Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting. | |
| int | Refs () const |
| Return reference count. | |
| int | WeakRefs () const |
| Return weak reference count. | |
| RefCount * | RefCountPtr () |
| Return pointer to the reference count structure. | |
Private Member Functions | |
| void | AddEventReceiver (Object *receiver, StringHash eventType) |
| Add event receiver. | |
| void | AddEventReceiver (Object *receiver, Object *sender, StringHash eventType) |
| Add event receiver for specific event. | |
| void | RemoveEventSender (Object *sender) |
| Remove an event sender from all receivers. Called on its destruction. | |
| void | RemoveEventReceiver (Object *receiver, Object *sender, StringHash eventType) |
| Remove event receiver from specific events. | |
| void | RemoveEventReceiver (Object *receiver, StringHash eventType) |
| Remove event receiver from non-specific events. | |
| void | BeginSendEvent (Object *sender, StringHash eventType) |
| Begin event send. | |
| void | EndSendEvent () |
| End event send. Clean up event receivers removed in the meanwhile. | |
| void | SetEventHandler (EventHandler *handler) |
| Set current event handler. Called by Object. | |
Private Attributes | |
|
HashMap< StringHash, SharedPtr < ObjectFactory > > | factories_ |
| Object factories. | |
|
HashMap< StringHash, SharedPtr < Object > > | subsystems_ |
| Subsystems. | |
|
HashMap< StringHash, Vector < AttributeInfo > > | attributes_ |
| Attribute descriptions per object type. | |
|
HashMap< StringHash, Vector < AttributeInfo > > | networkAttributes_ |
| Network replication attribute descriptions per object type. | |
|
HashMap< StringHash, HashSet < Object * > > | eventReceivers_ |
| Event receivers for non-specific events. | |
|
HashMap< Object *, HashMap < StringHash, HashSet< Object * > > > | specificEventReceivers_ |
| Event receivers for specific senders' events. | |
| PODVector< Object * > | eventSenders_ |
| Event sender stack. | |
| PODVector< VariantMap * > | eventDataMaps_ |
| Event data stack. | |
| EventHandler * | eventHandler_ |
| Active event handler. Not stored in a stack for performance reasons; is needed only in esoteric cases. | |
|
HashMap< String, Vector < StringHash > > | objectCategories_ |
| Object categories. | |
| VariantMap | globalVars_ |
| Variant map for global variables that can persist throughout application execution. | |
Friends | |
| class | Object |
Detailed Description
Urho3D execution context. Provides access to subsystems, object factories and attributes, and event receivers.
Constructor & Destructor Documentation
| Urho3D::Context::~Context | ( | ) |
The documentation for this class was generated from the following files:
- Source/Urho3D/Core/Context.h
- Source/Urho3D/Core/Context.cpp

Public Member Functions inherited from