MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | List of all members
Mezzanine::Physics::CollisionShapeDeSerializer Class Reference

A tool to aid in deserialization for the specific instances that DeSerialization CollisionShapes other ways does not make sense. More...

#include <collisionshape.h>

+ Inheritance diagram for Mezzanine::Physics::CollisionShapeDeSerializer:
+ Collaboration diagram for Mezzanine::Physics::CollisionShapeDeSerializer:

Public Member Functions

virtual String ContainerName () const
 This will return the Name of the element that Contains multiple of the items to be DeSerialized. More...
 
virtual std::istream & DeSerialize (std::istream &Stream)
 Create a collision shape from the serialized version in a stream. More...
 
virtual CollisionShapeDeSerializeAndRetrieve (std::istream &Stream)
 Create a collision shape from the serialized version in a stream. More...
 
virtual CollisionShapeProtoDeSerialize (const XML::Node &OneNode)
 Convert An XML Node containing and one collision shape into a CollisionShape of the corresponding type. More...
 
- Public Member Functions inherited from Mezzanine::DeSerializer< CollisionShape >
virtual std::istream & DeSerializeAll (std::istream &Stream)
 Get One node that has several of the appropriate kinds of nodes as children and deserialize all of them. More...
 
virtual void ProtoDeSerializeAll (const XML::Node &OneNode)
 Convert An XML Node into a complete series of live class instances. More...
 

Protected Member Functions

virtual CollisionShapePerformDeSerialization (std::istream &Stream)
 This Performs the work of Deserializing that DeSerialize and DeSerializeAndRetrieve need to do. More...
 

Detailed Description

A tool to aid in deserialization for the specific instances that DeSerialization CollisionShapes other ways does not make sense.

Definition at line 185 of file collisionshape.h.

Member Function Documentation

String Mezzanine::Physics::CollisionShapeDeSerializer::ContainerName ( ) const
virtual

This will return the Name of the element that Contains multiple of the items to be DeSerialized.

Returns
A String containing "Shapes"

Implements Mezzanine::DeSerializer< CollisionShape >.

Definition at line 406 of file collisionshape.cpp.

std::istream & Mezzanine::Physics::CollisionShapeDeSerializer::DeSerialize ( std::istream &  Stream)
virtual

Create a collision shape from the serialized version in a stream.

Parameters
StreamThe std::istream to get the data from.

This performs less checking than the original to allow for DeSerialization of multiple kinds of xml elements. Rather all the specific checking is done closer to the actual instantion of classes. This add the DeSerialized shape to the collsion shape manager.

Returns
This returns the input stream after the xml document has been extracted from it.

Reimplemented from Mezzanine::DeSerializer< CollisionShape >.

Definition at line 397 of file collisionshape.cpp.

CollisionShape * Mezzanine::Physics::CollisionShapeDeSerializer::DeSerializeAndRetrieve ( std::istream &  Stream)
virtual

Create a collision shape from the serialized version in a stream.

Parameters
StreamThe std::istream to get the data from.

This adds the DeSerialized shape to the collsion shape manager.

Returns
This returns a pointer to the freshly created collsion shape

Definition at line 403 of file collisionshape.cpp.

CollisionShape * Mezzanine::Physics::CollisionShapeDeSerializer::PerformDeSerialization ( std::istream &  Stream)
protectedvirtual

This Performs the work of Deserializing that DeSerialize and DeSerializeAndRetrieve need to do.

Parameters
Streamthe stream to deserialize from.
Returns
a pointer to the shape just created, this may or may not be added to the collision shape manager depending on implementation details

Definition at line 379 of file collisionshape.cpp.

CollisionShape * Mezzanine::Physics::CollisionShapeDeSerializer::ProtoDeSerialize ( const XML::Node OneNode)
virtual

Convert An XML Node containing and one collision shape into a CollisionShape of the corresponding type.

Parameters
OneNodeA reference to the XML node to reconstitute into a live class instance.

All items deserialized here will be added to the collision shape manager.

Returns
A pointer to the freshly deserialized and created class instance.

Implements Mezzanine::DeSerializer< CollisionShape >.

Definition at line 394 of file collisionshape.cpp.


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