COOLFluiD  Release kernel
COOLFluiD is a Collaborative Simulation Environment (CSE) focused on complex MultiPhysics simulations.
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
OptionFactory Class Reference

Factory class to buikd options dynamically. More...

#include <OptionFactory.hpp>

Public Member Functions

void register_builder (const std::string &type, const boost::shared_ptr< OptionBuilder > &builder)
 Register a builder with the given type. More...
 
boost::shared_ptr< Optioncreate_option (const std::string &name, const std::string &type, const boost::any &default_value)
 Create an option with the given type and default value, passed as a string or vector of strings. More...
 

Static Public Member Functions

static OptionFactoryinstance ()
 Singleton instance. More...
 

Private Member Functions

 OptionFactory ()
 

Private Attributes

std::map< std::string, boost::shared_ptr< OptionBuilder > > m_builders
 

Detailed Description

Factory class to buikd options dynamically.

Definition at line 34 of file OptionFactory.hpp.

Constructor & Destructor Documentation

OptionFactory ( )
private

Definition at line 44 of file OptionFactory.cpp.

Member Function Documentation

boost::shared_ptr< Option > create_option ( const std::string &  name,
const std::string &  type,
const boost::any &  default_value 
)

Create an option with the given type and default value, passed as a string or vector of strings.

Definition at line 28 of file OptionFactory.cpp.

OptionFactory & instance ( )
static

Singleton instance.

Definition at line 22 of file OptionFactory.cpp.

void register_builder ( const std::string &  type,
const boost::shared_ptr< OptionBuilder > &  builder 
)

Register a builder with the given type.

Definition at line 37 of file OptionFactory.cpp.

Member Data Documentation

std::map< std::string, boost::shared_ptr<OptionBuilder> > m_builders
private

Definition at line 50 of file OptionFactory.hpp.


The documentation for this class was generated from the following files:
Send comments to:
COOLFluiD Web Admin