VISR  0.11.1
Versatile Interactive Scene Renderer
visr::apps::gain_matrix::Options Class Reference

#include <options.hpp>

Public Types

enum  ParseResult { ParseResult::Success, ParseResult::Failure, ParseResult::Version, ParseResult::Help }
 

Public Member Functions

 Options ()
 
 ~Options ()
 
ParseResult parse (int argc, char const *const *argv, std::ostream &errMsg)
 
bool hasOption (char const *optionName) const
 
template<typename DataType >
DataType getOption (char const *optionName) const
 
template<typename DataType >
DataType getDefaultedOption (char const *optionName, DataType const &defaultValue) const
 
void printDescription (std::ostream &out)
 

Protected Member Functions

template<typename DataType >
void registerOption (char const *optionName, char const *description)
 
template<typename DataType >
void registerPositionalOption (char const *optionName, int position, char const *description)
 
template<>
void registerOption (char const *optionName, char const *description)
 

Protected Attributes

boost::program_options::options_description mDescription
 
boost::program_options::positional_options_description mPositionalDescription
 
boost::program_options::variables_map mVariablesMap
 

Detailed Description

Gerneric option class to makee boost::program_options more useable.

Todo:
Move to a library, replace several instances (e.g., in apps::baseline_renderer)

Member Enumeration Documentation

Enumerator
Success 
Failure 
Version 
Help 

Constructor & Destructor Documentation

visr::apps::gain_matrix::Options::Options ( )
visr::apps::gain_matrix::Options::~Options ( )

Member Function Documentation

template<typename DataType >
DataType visr::apps::gain_matrix::Options::getDefaultedOption ( char const *  optionName,
DataType const &  defaultValue 
) const
inline
template<typename DataType >
DataType visr::apps::gain_matrix::Options::getOption ( char const *  optionName) const
inline
bool visr::apps::gain_matrix::Options::hasOption ( char const *  optionName) const
Options::ParseResult visr::apps::gain_matrix::Options::parse ( int  argc,
char const *const *  argv,
std::ostream &  errMsg 
)
void visr::apps::gain_matrix::Options::printDescription ( std::ostream &  out)

Print the option description.

Parameters
outThe output stream to which the description is written to.
template<typename DataType >
void visr::apps::gain_matrix::Options::registerOption ( char const *  optionName,
char const *  description 
)
inlineprotected
template<>
void visr::apps::gain_matrix::Options::registerOption ( char const *  optionName,
char const *  description 
)
inlineprotected
template<typename DataType >
void visr::apps::gain_matrix::Options::registerPositionalOption ( char const *  optionName,
int  position,
char const *  description 
)
inlineprotected

Member Data Documentation

boost::program_options::options_description visr::apps::gain_matrix::Options::mDescription
protected
boost::program_options::positional_options_description visr::apps::gain_matrix::Options::mPositionalDescription
protected
boost::program_options::variables_map visr::apps::gain_matrix::Options::mVariablesMap
protected

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