MezzanineEngine March 18, 2012

Todo List

Page Main Loop Structure and Flow
create a lighting manager and put this in there

page Mezzanine
Fill out the Simple Data Types with all the enumerations.

Member Mezzanine::ActorRigid::_NotifyCollisionState (Collision *Col, const Collision::CollisionState &State)
Update this to be workable with other objects that have rigid bodies internally, and maybe soft bodies.

Member Mezzanine::ActorRigidDeSerializer::ProtoDeSerialize (const xml::Node &OneNode)
TODO: Why is gravity done here, can it be done elsewhere? Apparently the addind to the world removed what is deserialized here and this should how be used if it is different from the default

Member Mezzanine::ActorRigidPhysicsSettings::~ActorRigidPhysicsSettings ()
Occasionally a SIGTRAP occurs here without any breakpoint set while debugging. Needs to be fixed. on Linux it is a SIGSEGV.

Class Mezzanine::Camera
Fix all the extra occurences of the word Camera in Function names on the camera.

Member Mezzanine::CreateShape (xml::Node OneNode)

Complete CreateShape function once DynamicMeshCollisionShape can be deserialized

Complete CreateShape function once ActorSoftCollisionShape can be deserialized

Complete CreateShape function once StaticMeshCollisionShape can be deserialized

Complete CreateShape function once ActorSoftCollisionShape can be deserialized

Complete CreateShape function once StaticMeshCollisionShape can be deserialized

Complete CreateShape function once ActorSoftCollisionShape can be deserialized

Complete CreateShape function once StaticMeshCollisionShape can be deserialized

Member Mezzanine::EventManager::EventManager ()
TODO: Make the EventManager completely thread safe. IF this is completely thread safe, we can spawn numerous individual thread each accessing this and and the performance gain would almost scale directly with cpu core count increases. Look at boost scoped_lock

Member Mezzanine::Int8

Verify that these "fixed-width" type-defs work on mobiles and tablets.

Member Mezzanine::internal::Line3D::drawLine (const Vector3 &start, const Vector3 &end)
TODO: when using this function there should be a break in the line segment rendering. Not sure abot the best way to implement that, but it should happen

Member Mezzanine::LineGroup::drawLine (const Vector3 &start, const Vector3 &end)
TODO: In the future we will add a break in the line segment chain when this is called.

Member Mezzanine::LineGroup::drawLines (void)
TODO: PrepareForRendering should be rolled into drawLines, but this cannot happen until the physics debug rendererin gets more attention.

Member Mezzanine::LineGroup::LineGroup (World *Parent_)
TODO: This class really should support rotation, the underlying implementation does.

Member Mezzanine::Matrix3x3::Transpose () const
I'm not gonna lie, I have no idea what the hell the Transpose of a 3x3 Matrix is or what it is used for...this doc could use a touchup. In fact most of the doc's on this class could use a review.

Member Mezzanine::Matrix4x4::Transpose () const
I'm not gonna lie, I have no idea what the hell the Transpose of a 4x4 Matrix is or what it is used for...this doc could use a touchup. In fact most of the doc's on this class could use a review.

Member Mezzanine::MeshManager::CreateCylinderMesh (const String &MeshName, const String &MaterialName, const Vector3 &HalfExtents, const Vector3 &AxisOrientation, const Whole &CircleRes=16, const Whole &Segments=1)
These if/elses aren't really a long term solution as they won't work for any more then 1 segment. This needs to be addressed.

Member Mezzanine::Point2PointConstraint::SetTAU (Real TAU)
Research this more carefully

Member Mezzanine::Ray::GetNormal () const
discuss the merits throwing an error here.

Member Mezzanine::RayQueryTool::GetFirstActorOnRayByAABB (Ray ActorRay, Whole ObjectFlags)

TODO: The function WorldQueryTool::GetFirstActorOnRayByAABB does not return an valid offset. This needs to be calculated somehow.

TODO: The function WorldQueryTool::GetFirstActorOnRayByAABB has not been tested and needs to be tested

TODO: The function WorldQueryTool::GetFirstActorOnRayByAABB does not take other obstructions into account

Member Mezzanine::Resource::TextSettingsFile::Load (const String &Filename, const String &Group, const String &Separators=" \t:=", bool TrimWhitespace=true)
Once the resource system has been updated to be independant of Ogre's, this function needs to be updated to access our methods instead of theirs.

Member Mezzanine::ResourceManager::DestroyResourceGroup (const String &GroupName)
This is a bit of a hack, but needs to be here until we can upgrade our resource system.

Member Mezzanine::StaticMeshCollisionShape::StaticMeshCollisionShape (const String &Name, btBvhTriangleMeshShape *BulletShape)
May need to create a btScaledBvhTriangleMeshShape for scaling this shape appropriately.

Member Mezzanine::TerrainManager::RemoveAllTerrains ()
When adding more types of terrains, it should be remembered that code should be added to clear the extra vectors.

Member Mezzanine::UI::Button::BindActivationKeyOrButton (const MetaCode::InputCode &Code)
Throw an error?

Member Mezzanine::UI::Caption::SetGlyphIndex (const Whole &GlyphIndex)
Throw an error?

Member Mezzanine::UI::Caption::SetGlyphIndex (const Whole &GlyphIndex, const String &Atlas)
Throw an error?

Member Mezzanine::UI::ListBox::ListBox (ConstString &name, const RenderableRect &Rect, const UI::ScrollbarStyle &ScrollStyle, Layer *PLayer)
Currently this class has little support for a border around the selections. Ideally when the UI system is more complete we'll be able to seemlessly move objects around different layers and thus have more control over z-order. When that happens we should add a rect to this class be be placed over the selections for use with a border or other kind of decoration.

Member Mezzanine::UI::ListBox::SetSelected (Caption *ToBeSelected)
Maybe add a checker to verify the caption belongs to this widget?

Member Mezzanine::UI::MarkupText::SetDefaultGlyphIndex (const Whole &DefaultGlyphIndex)
Throw an error?

Member Mezzanine::UI::MarkupText::SetDefaultGlyphIndex (const Whole &DefaultGlyphIndex, const String &Atlas)
Throw an error?

Member Mezzanine::UI::Screen::CreateLayer (const String &Name, const Whole &Zorder)
add an exception here or maybe log entry, some notification it failed.

Member Mezzanine::UI::ScrolledCellGrid::SetVisibleImpl (bool visible)
Currently this disregards auto-hides. Something should be implemented to account for that.

Member Mezzanine::UI::TextButton::SetGlyphIndex (const Whole &GlyphIndex, const String &Atlas)
Throw an error?

Member Mezzanine::UI::TextButton::SetGlyphIndex (const Whole &GlyphIndex)
Throw an error?

Member Mezzanine::UIManager::GetAtlas (const String &AtlasName)
These NULL returns should probably be exceptions.

Member Mezzanine::WorldNode::SetAutoTracking (AttachableBase *Target, const Vector3 &LocalDirection=Vector3::Neg_Unit_Z(), const Vector3 &Offset=Vector3())
TODO: The WorldNode Does not Correctly Serialize AutoTracking.

Member Mezzanine::WorldNode::SetDirection (const Vector3 &Direction, const Mezzanine::TransformSpace &TS=Mezzanine::TS_World, const Vector3 &LocalAxis=Vector3::Neg_Unit_Z())
May want to change this to an exception, maybe.

Member Mezzanine::xml::Attribute::AsDouble () const
Update Attribute::AsDouble() to check errno and throw exceptions were appropriate, and throw a exception on failure instead of producing a valid return value.

Member Mezzanine::xml::Attribute::AsFloat () const
Update Attribute::AsFloat() to check errno and throw exceptions were appropriate, and throw a exception on failure instead of producing a valid return value.

Member Mezzanine::xml::Attribute::AsInt () const
Update Attribute::AsInt() to check errno and throw exceptions were appropriate, and throw a exception on failure instead of producing a valid return value.

Member Mezzanine::xml::Attribute::AsUint () const
Update Attribute::AsUint() to check errno and throw exceptions were appropriate, and throw a exception on failure instead of producing a valid return value.

Member Mezzanine::xml::Attribute::SetValue (T rhs)
Strip ">" automatically and provide a method to reconsitute it.

Member Mezzanine::xml::Attribute::SetValue (bool rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Member Mezzanine::xml::Attribute::SetValue (int rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Member Mezzanine::xml::Attribute::SetValue (const char_t *rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Member Mezzanine::xml::Attribute::SetValue (double rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Member Mezzanine::xml::Attribute::SetValue (unsigned int rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Member Mezzanine::xml::Node::FirstElementByPath (const char_t *Path, char_t delimiter= '/') const
Investigate this more deeply.

Member Mezzanine::xml::Node::InsertChildAfter (NodeType Type, const Node &node)

Not all nodes can be added to other nodes, we need to figure it out and put it here.

Not all nodes can be added to other nodes, we need to figure it out and put it here.

Member Mezzanine::xml::Node::InsertChildBefore (NodeType Type, const Node &node)
Not all nodes can be added to other nodes, we need to figure it out and put it here.

Member Mezzanine::xml::Node::SetValue (const char_t *rhs)

update this to make the error return code redundant and use an exception instead.

Review for possiblity of buffer overflow.

Namespace Ogre
Make main page in documentation with wiki link and listing of required steps (build target and OS define), and dependencies required to build this.

Member operator>> (const Mezzanine::xml::Node &OneNode, Mezzanine::WorldNode &Ev)
This doesn't account for other objects aside from world nodes to be attached. Additional checks that fetch other types by name in the case of a null pointer should be implemented.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines