Public Member Functions
TCmdOption< T > Class Template Reference

Templated version based on CCmdOptionValue for values that can be converted to and from strings by stream operators. More...

#include <mia/core/cmdlineparser.hh>

Inheritance diagram for TCmdOption< T >:
CCmdOption

Public Member Functions

 TCmdOption (T &val, char short_opt, const char *long_opt, const char *long_help, const char *short_help, bool flags=false)
- Public Member Functions inherited from CCmdOption
void add_option (CShortoptionMap &sm, CLongoptionMap &lm)
 CCmdOption (char short_opt, const char *long_opt, const char *long_help, const char *short_help, bool required)
void get_long_help (std::ostream &os) const
std::string get_long_help_xml (xmlpp::Element &parent, HandlerHelpMap &handler_map) const
const char * get_long_option () const
size_t get_needed_args () const
void get_opt_help (std::ostream &os) const
char get_short_option () const
const std::string get_value_as_string () const
bool is_required () const
const char * long_help () const
void post_set ()
void print_short_help (std::ostream &os) const
void set_value (const char *str_value)
void write_value (std::ostream &os) const
virtual ~CCmdOption ()
 ensure virtual destruction

Additional Inherited Members

- Static Public Attributes inherited from CCmdOption
static const bool not_required
 readability constant to show that an option is not required
static const bool required
 readability constant to show that an option is required
- Protected Member Functions inherited from CCmdOption
void clear_required ()
 clear the "required" flag
virtual void do_get_long_help (std::ostream &os) const

Detailed Description

template<typename T>
class TCmdOption< T >

Templated version based on CCmdOptionValue for values that can be converted to and from strings by stream operators.

Templated implementation of a command line option to hold a value of type T.

Template Parameters
Tvalue parameter, the type T has to support the operators "std::ostream& operator << (std::ostream& os, T x)" and "std::istream& operator >> (std::istream& os, T x)" must be defined. f the string passed to the option for translation can not be translation to a value of type T, the set_value method will throw a std::invalid_argument exception If T is of type template < typename R > std::vector < R >, the list of N values needs to be given like value1,value2,...,valueN.

Definition at line 104 of file cmdlineparser.hh.

Constructor & Destructor Documentation

template<typename T >
TCmdOption< T >::TCmdOption ( T &  val,
char  short_opt,
const char *  long_opt,
const char *  long_help,
const char *  short_help,
bool  flags = false 
)

Constructor of the command option

Parameters
[in,out]valvariable to hold the parsed option value - pass in the default value - exception: bool values always default to false
short_optshort option name (or 0)
long_optlong option name (must not be NULL)
long_helplong help string (must not be NULL)
short_helpshort help string
flagssupport options like required

Definition at line 536 of file cmdlineparser.hh.


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