Base class for objects that can have attachables attached to them. More...
#include <attachable.h>
Public Types | |
typedef std::vector < AttachableChild * > | AttachableContainer |
Basic container type for AttachableChild storage by this class. | |
typedef AttachableContainer::iterator | AttachableIterator |
Iterator type for AttachableChild instances stored by this class. | |
typedef AttachableContainer::const_iterator | ConstAttachableIterator |
Const Iterator type for AttachableChild instances stored by this class. | |
Public Member Functions | |
AttachableParent () | |
Class constructor. | |
virtual | ~AttachableParent () |
Class destructor. | |
void | _RecalculateAllChildTransforms () |
Recalculates the transforms of all children of this attachable. | |
virtual void | AttachObject (AttachableChild *Target) |
Attaches an attachable element to this object. More... | |
AttachableIterator | BeginChild () |
Get an AttachableIterator to the first object. More... | |
ConstAttachableIterator | BeginChild () const |
Get a ConstAttachableIterator to the first object. More... | |
virtual void | DetachAllChildren () |
Detaches all attachables currently attached. | |
virtual void | DetachObject (AttachableChild *Target) |
Detaches an attachable element from this object. More... | |
AttachableIterator | EndChild () |
Get an AttachableIterator to one past the last object. More... | |
ConstAttachableIterator | EndChild () const |
Get a ConstAttachableIterator to one past the last object. More... | |
virtual AttachableChild * | GetAttached (const Whole &Index) const |
Get a specific attached Item. More... | |
virtual Whole | GetNumAttached () const |
Gets the number of elements attached to this object. More... | |
Public Member Functions inherited from Mezzanine::AttachableBase | |
AttachableBase () | |
Class constructor. | |
virtual | ~AttachableBase () |
Class destructor. | |
Vector3 | ConvertGlobalToLocal (const Vector3 &Location) const |
Converts a point in global space to the same point in local space. More... | |
Quaternion | ConvertGlobalToLocal (const Quaternion &Orientation) const |
Converts a rotation in global space to the same rotation in local space. More... | |
Vector3 | ConvertLocalToGlobal (const Vector3 &Location) const |
Converts a point in local space to the same point in global space. More... | |
Quaternion | ConvertLocalToGlobal (const Quaternion &Orientation) const |
Converts a rotation in local space to the same rotation in global space. More... | |
virtual Vector3 | GetLocation () const =0 |
Gets the Location of this object. More... | |
virtual ConstString & | GetName () const =0 |
Gets the name of this attachable. More... | |
virtual Quaternion | GetOrientation () const =0 |
Gets the orientation of this object. More... | |
virtual Vector3 | GetScaling () const =0 |
Gets the scale of this object. More... | |
virtual WorldObjectType | GetType () const =0 |
Gets the type of World or Scene object this attachable is. More... | |
virtual void | SetLocation (const Vector3 &Location)=0 |
Sets the Location of this object. More... | |
virtual void | SetOrientation (const Quaternion &Orientation)=0 |
Sets the orientation of this object. More... | |
virtual void | SetScaling (const Vector3 &Scale)=0 |
Sets the scale of this object. More... | |
Protected Attributes | |
AttachableContainer | Attached |
A container storing all of the other attachable objects connected to this attachable. More... | |
Protected Attributes inherited from Mezzanine::AttachableBase | |
bool | Updating |
Additional Inherited Members | |
Protected Member Functions inherited from Mezzanine::AttachableBase | |
bool | GetUpdating (AttachableBase *AB) const |
Gets the update status of another attachable. More... | |
Base class for objects that can have attachables attached to them.
Definition at line 133 of file attachable.h.
|
virtual |
Attaches an attachable element to this object.
Target | The Attachable to be attached. |
Definition at line 94 of file attachable.cpp.
AttachableParent::AttachableIterator Mezzanine::AttachableParent::BeginChild | ( | ) |
Get an AttachableIterator to the first object.
Definition at line 136 of file attachable.cpp.
AttachableParent::ConstAttachableIterator Mezzanine::AttachableParent::BeginChild | ( | ) | const |
Get a ConstAttachableIterator to the first object.
Definition at line 142 of file attachable.cpp.
|
virtual |
Detaches an attachable element from this object.
Target | The Attachable to be detached. |
Detach an item is done in linear time relative to the amount of attached items.
Definition at line 114 of file attachable.cpp.
AttachableParent::AttachableIterator Mezzanine::AttachableParent::EndChild | ( | ) |
Get an AttachableIterator to one past the last object.
Definition at line 139 of file attachable.cpp.
AttachableParent::ConstAttachableIterator Mezzanine::AttachableParent::EndChild | ( | ) | const |
Get a ConstAttachableIterator to one past the last object.
Definition at line 145 of file attachable.cpp.
|
virtual |
Get a specific attached Item.
Index | A number indicating which Attachable you want a pointer to. The WorldNode is like an Array starts at 0 and goes to WorldNode::GetNumAttached() - 1. |
This | can throw an out of bounds std::exception if used incorrectly. |
Definition at line 133 of file attachable.cpp.
|
virtual |
Gets the number of elements attached to this object.
Definition at line 130 of file attachable.cpp.
|
protected |
A container storing all of the other attachable objects connected to this attachable.
Definition at line 145 of file attachable.h.