This is the base class for proxy objects belonging to the various 3D subsystems. More...
#include <worldproxy.h>
Inheritance diagram for Mezzanine::WorldProxy:
Collaboration diagram for Mezzanine::WorldProxy:Public Member Functions | |
| WorldProxy () | |
| Blank constructor. | |
| WorldProxy (const UInt32 ID) | |
| Normal/ID constructor. More... | |
| virtual | ~WorldProxy () |
| Class destructor. | |
| void | _Bind (WorldObject *NewParent) |
| Binds this proxy to a WorldObject. More... | |
| virtual void | AddToWorld ()=0 |
| Performs all the necessary task to ensure this object is connected to it's respective world and ready for use. | |
| virtual WorldManager * | GetCreator () const =0 |
| Gets a pointer to this proxies creator. More... | |
| virtual String | GetDerivedSerializableName () const |
| Gets the most derived serializable name of this WorldProxy. More... | |
| virtual Vector3 | GetLocation () const =0 |
| Gets this objects current location. More... | |
| virtual Quaternion | GetOrientation () const =0 |
| Gets this objects current orientation. More... | |
| virtual WorldObject * | GetParentObject () const |
| Gets a pointer to the parent object controlling this proxy. More... | |
| virtual UInt32 | GetProxyID () const |
| Gets the unique ID of this proxy. More... | |
| virtual Mezzanine::ProxyType | GetProxyType () const =0 |
| Accessor for the type of proxy. More... | |
| virtual Vector3 | GetScale () const =0 |
| Gets the scaling currently being applied to this object. More... | |
| virtual Boole | IsInWorld () const =0 |
| Gets whether or not this object is inside of it's world. More... | |
| virtual void | Pitch (const Real Angle)=0 |
| Rotate the object around the X axis. More... | |
| virtual void | ProtoDeSerialize (const XML::Node &SelfRoot) |
| Take the data stored in an XML Node and overwrite this object with it. More... | |
| virtual void | ProtoDeSerializeProperties (const XML::Node &SelfRoot) |
| Take the data stored in an XML Node and overwrite the properties of this object with it. More... | |
| virtual void | ProtoSerialize (XML::Node &ParentNode) const |
| Convert this class to an XML::Node ready for serialization. More... | |
| virtual void | ProtoSerializeProperties (XML::Node &SelfRoot) const |
| Convert the properties of this class to an XML::Node ready for serialization. More... | |
| virtual void | RemoveFromWorld ()=0 |
| Unhooks this proxy from it's respective world. | |
| virtual void | Roll (const Real Angle)=0 |
| Rotate the object around the Z axis. More... | |
| virtual void | Rotate (const Vector3 &Axis, const Real Angle)=0 |
| Rotates the object from it's existing rotation. More... | |
| virtual void | Rotate (const Quaternion &Rotation)=0 |
| Rotates the object from it's existing rotation. More... | |
| virtual void | Scale (const Vector3 &Scale)=0 |
| Scales the object from it's current size. More... | |
| virtual void | Scale (const Real X, const Real Y, const Real Z)=0 |
| Scales the object from it's current size. More... | |
| virtual void | SetLocation (const Vector3 &Loc)=0 |
| Sets the location of this object in parent space. More... | |
| virtual void | SetLocation (const Real X, const Real Y, const Real Z)=0 |
| Sets the location of this object in parent space via Reals. More... | |
| virtual void | SetOrientation (const Quaternion &Ori)=0 |
| Sets the orientation of this object in parent space. More... | |
| virtual void | SetOrientation (const Real X, const Real Y, const Real Z, const Real W)=0 |
| Sets the orientation of this object in parent space via Reals. More... | |
| virtual void | SetScale (const Vector3 &Sc)=0 |
| Sets the scaling to be applied to this object. More... | |
| virtual void | SetScale (const Real X, const Real Y, const Real Z)=0 |
| Sets the scaling to be applied to this object via Reals. More... | |
| virtual void | Translate (const Vector3 &Trans)=0 |
| Moves this object from it's current location. More... | |
| virtual void | Translate (const Real X, const Real Y, const Real Z)=0 |
| Moves this object from it's current location. More... | |
| virtual void | Yaw (const Real Angle)=0 |
| Rotate the object around the Y axis. More... | |
Public Member Functions inherited from Mezzanine::TransformableObject | |
| virtual | ~TransformableObject () |
| Class Destructor. | |
| virtual Vector3 | ConvertGlobalToLocal (const Vector3 &Location) const |
| Converts a point in global space to the same point in local space. More... | |
| virtual Quaternion | ConvertGlobalToLocal (const Quaternion &Orientation) const |
| Converts a rotation in global space to the same rotation in local space. More... | |
| virtual Vector3 | ConvertLocalToGlobal (const Vector3 &Location) const |
| Converts a point in local space to the same point in global space. More... | |
| virtual Quaternion | ConvertLocalToGlobal (const Quaternion &Orientation) const |
| Converts a rotation in local space to the same rotation in global space. More... | |
Static Public Member Functions | |
| static String | GetSerializableName () |
| Get the name of the the XML tag the proxy class will leave behind as its instances are serialized. More... | |
Protected Member Functions | |
| virtual void | ProtoDeSerializeImpl (const XML::Node &SelfRoot) |
| Implementation method for deseriailizing additional sets of data. More... | |
| virtual void | ProtoSerializeImpl (XML::Node &SelfRoot) const |
| Implementation method for serializing additional sets of data. More... | |
Protected Attributes | |
| WorldObject * | ParentObject |
| Pointer to the Object this proxy belongs to. More... | |
| UInt32 | ProxyID |
| The unique ID assigned to the type of proxy an instance is. More... | |
This is the base class for proxy objects belonging to the various 3D subsystems.
Definition at line 53 of file worldproxy.h.
| Mezzanine::WorldProxy::WorldProxy | ( | const UInt32 | ID | ) |
Normal/ID constructor.
| ID | The unique ID assigned to the type of proxy an instance is. |
Definition at line 58 of file worldproxy.cpp.
| void Mezzanine::WorldProxy::_Bind | ( | WorldObject * | NewParent | ) |
Binds this proxy to a WorldObject.
| NewParent | A pointer to the WorldObject taking possession of this proxy. |
Definition at line 174 of file worldproxy.cpp.
|
pure virtual |
Gets a pointer to this proxies creator.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
virtual |
Gets the most derived serializable name of this WorldProxy.
Reimplemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Physics::RigidProxy, Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Graphics::CameraProxy, Mezzanine::Graphics::BillboardSetProxy, Mezzanine::Graphics::RenderableProxy, Mezzanine::Graphics::EntityProxy, Mezzanine::Graphics::LightProxy, Mezzanine::Physics::SoftProxy, and Mezzanine::Physics::GhostProxy.
Definition at line 165 of file worldproxy.cpp.
|
pure virtual |
Gets this objects current location.
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Gets this objects current orientation.
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
virtual |
Gets a pointer to the parent object controlling this proxy.
Definition at line 75 of file worldproxy.cpp.
|
virtual |
Gets the unique ID of this proxy.
Definition at line 78 of file worldproxy.cpp.
|
pure virtual |
Accessor for the type of proxy.
Implemented in Mezzanine::Physics::RigidProxy, Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Graphics::EntityProxy, Mezzanine::Graphics::CameraProxy, Mezzanine::Graphics::BillboardSetProxy, Mezzanine::Graphics::LightProxy, Mezzanine::Physics::GhostProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Gets the scaling currently being applied to this object.
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
static |
Get the name of the the XML tag the proxy class will leave behind as its instances are serialized.
Definition at line 168 of file worldproxy.cpp.
|
pure virtual |
Gets whether or not this object is inside of it's world.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Audio::SoundProxy.
|
pure virtual |
Rotate the object around the X axis.
| Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
virtual |
Take the data stored in an XML Node and overwrite this object with it.
| SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::Physics::SoftProxy.
Definition at line 114 of file worldproxy.cpp.
|
protectedvirtual |
Implementation method for deseriailizing additional sets of data.
| SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::EntityProxy, and Mezzanine::Graphics::BillboardSetProxy.
Definition at line 69 of file worldproxy.cpp.
|
virtual |
Take the data stored in an XML Node and overwrite the properties of this object with it.
| SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Physics::RigidProxy, Mezzanine::Graphics::CameraProxy, Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Graphics::BillboardSetProxy, Mezzanine::Graphics::RenderableProxy, Mezzanine::Graphics::LightProxy, Mezzanine::Graphics::EntityProxy, Mezzanine::Physics::SoftProxy, and Mezzanine::Physics::GhostProxy.
Definition at line 129 of file worldproxy.cpp.
|
virtual |
Convert this class to an XML::Node ready for serialization.
| ParentNode | The point in the XML hierarchy that all this renderable should be appended to. |
Reimplemented in Mezzanine::Physics::SoftProxy.
Definition at line 84 of file worldproxy.cpp.
|
protectedvirtual |
Implementation method for serializing additional sets of data.
| SelfRoot | The root node containing all the serialized data for this instance. |
Reimplemented in Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::EntityProxy, and Mezzanine::Graphics::BillboardSetProxy.
Definition at line 66 of file worldproxy.cpp.
|
virtual |
Convert the properties of this class to an XML::Node ready for serialization.
| SelfRoot | The root node containing all the serialized data for this instance. |
Reimplemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Physics::RigidProxy, Mezzanine::Graphics::CameraProxy, Mezzanine::Graphics::BillboardSetProxy, Mezzanine::Graphics::ParticleSystemProxy, Mezzanine::Graphics::RenderableProxy, Mezzanine::Graphics::LightProxy, Mezzanine::Graphics::EntityProxy, Mezzanine::Physics::SoftProxy, and Mezzanine::Physics::GhostProxy.
Definition at line 94 of file worldproxy.cpp.
|
pure virtual |
Rotate the object around the Z axis.
| Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
Rotates the object from it's existing rotation.
| Axis | The axis on which this object will be rotated. |
| Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
pure virtual |
Rotates the object from it's existing rotation.
| Rotation | The rotation to apply to this object. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
pure virtual |
Scales the object from it's current size.
| Scale | A Vector3 representing the scaling to apply to this object. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
Scales the object from it's current size.
| X | The scaling factor to apply on the X axis. |
| Y | The scaling factor to apply on the Y axis. |
| Z | The scaling factor to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
pure virtual |
Sets the location of this object in parent space.
| Loc | A Vector3 representing the location this object is to be set to. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Sets the location of this object in parent space via Reals.
| X | The position on the X axis where this object is to be set. |
| Y | The position on the Y axis where this object is to be set. |
| Z | The position on the Z axis where this object is to be set. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Sets the orientation of this object in parent space.
| Ori | A Quaternion representing the rotation this object is to be set to. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Sets the orientation of this object in parent space via Reals.
| X | The X component of the Axis. |
| Y | The Y component of the Axis. |
| Z | The Z component of the Axis. |
| W | Rotation on the Axis X, Y and Z defined. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Sets the scaling to be applied to this object.
| Sc | A Vector3 representing the amount of scaling to apply to this object. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Sets the scaling to be applied to this object via Reals.
| X | The scaling factor to apply on the X axis. |
| Y | The scaling factor to apply on the Y axis. |
| Z | The scaling factor to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, Mezzanine::Graphics::RenderableProxy, and Mezzanine::Physics::SoftProxy.
|
pure virtual |
Moves this object from it's current location.
| Trans | A Vector3 representing the amount of movement to apply to this object. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
pure virtual |
Moves this object from it's current location.
| X | The amount of movement to apply on the X axis. |
| Y | The amount of movement to apply on the Y axis. |
| Z | The amount of movement to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
pure virtual |
Rotate the object around the Y axis.
| Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Implemented in Mezzanine::Physics::CollidableProxy, and Mezzanine::Graphics::RenderableProxy.
|
protected |
Pointer to the Object this proxy belongs to.
Definition at line 58 of file worldproxy.h.
|
protected |
The unique ID assigned to the type of proxy an instance is.
Definition at line 61 of file worldproxy.h.
1.8.9.1. Thanks to the
Open Icon Library
for help with some of the icons.