VISR  0.11.8
Versatile Interactive Scene Renderer
visr::objectmodel::ObjectParser Class Referenceabstract

#include <object_parser.hpp>

Inheritance diagram for visr::objectmodel::ObjectParser:
visr::objectmodel::ChannelObjectParser visr::objectmodel::DiffuseSourceParser visr::objectmodel::HoaSourceParser visr::objectmodel::PlaneWaveParser visr::objectmodel::PointSourceParser visr::objectmodel::PointSourceWithDiffusenessParser visr::objectmodel::PointSourceWithReverbParser visr::objectmodel::PointSourceExtentParser

Public Member Functions

 ObjectParser ()
 
virtual ~ObjectParser ()
 
virtual void parse (boost::property_tree::ptree const &tree, Object &obj) const =0
 
virtual void write (Object const &obj, boost::property_tree::ptree &tree) const =0
 

Detailed Description

Todo:
revise class hierarchy (does it make sense to let the base of the parser object hierarchy to perform actual work, or should there be an abstract interface class on top of it?

Constructor & Destructor Documentation

visr::objectmodel::ObjectParser::ObjectParser ( )
default

Default constructor.

visr::objectmodel::ObjectParser::~ObjectParser ( )
virtualdefault

Destructor (virtual). Virtual destructor is required since this objects are used polymorphically.

Member Function Documentation

void visr::objectmodel::ObjectParser::parse ( boost::property_tree::ptree const &  tree,
Object obj 
) const
pure virtual

Parse an object from a property node.

Parameters
treeThe property tree node containing the object information.
[out]objThe object to which the parsed values are set.
Note
: This function is marked as pure virtual, thus making the class abstract (non-instantiable). However, it has an implementation which performs sensible work.

Implemented in visr::objectmodel::PointSourceWithReverbParser, visr::objectmodel::PointSourceParser, visr::objectmodel::ChannelObjectParser, visr::objectmodel::PlaneWaveParser, visr::objectmodel::PointSourceExtentParser, visr::objectmodel::PointSourceWithDiffusenessParser, visr::objectmodel::DiffuseSourceParser, and visr::objectmodel::HoaSourceParser.

void visr::objectmodel::ObjectParser::write ( Object const &  obj,
boost::property_tree::ptree &  tree 
) const
pure virtual

Serialize an object itno a property tree node.

Parameters
objThe audio object to be serialised.
[out]treeThe property tree subtree to where the object information is written to.
Note
This method is pure virtual, because his class does not correspond to an instantiable audio object type. Nonetheless, it has an implementation which is called by derived classes.

Implemented in visr::objectmodel::PointSourceWithReverbParser, visr::objectmodel::PointSourceParser, visr::objectmodel::ChannelObjectParser, visr::objectmodel::PlaneWaveParser, visr::objectmodel::PointSourceExtentParser, visr::objectmodel::PointSourceWithDiffusenessParser, visr::objectmodel::DiffuseSourceParser, and visr::objectmodel::HoaSourceParser.


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