|
LTL
2.0.x
|
Generic parser object for options. More...
Public Member Functions | |
| OptionParser (OptionReader *reader) | |
construct using an OptionReader, i.e. either a CommandLineReader or a ConfigFileReader. More... | |
| virtual | ~OptionParser () |
| OptionParser (const OptionParser &other) | |
| copy ctor. More... | |
| void | deleteOptions (void) |
delete all the Option objects we are holding. More... | |
| void | changeReader (OptionReader *reader) |
| void | addOption (Option *option) |
| add an option to our list of accepted options. More... | |
| Option * | getOption (const string &name) |
| retrieve an option by its name. More... | |
| const list< string > | getOptionNames () const |
| retrieve a list of the option names. More... | |
| void | parseOptions () throw ( UException ) |
| read the options, parse them, and set their values. More... | |
| void | printUsage (ostream &os) const |
| void | writeConfig (const string &filename, const bool withComment=true, const bool order_by_n=true) const throw ( UException ) |
| string | toString (const bool withComment=false) const throw ( UException ) |
| get a string representation. More... | |
Protected Types | |
| typedef map< string, Option * > | omap |
| typedef map< int, Option * > | onmap |
Protected Attributes | |
| OptionReader * | reader_ |
the OptionReader object we will use to read-in the options, either a CommandLineReader or a ConfigFileReader More... | |
| omap | options_ |
| holds all options we know of indexed by name More... | |
| omap | cmd_options_ |
| index of options by command line character More... | |
| onmap | n_options_ |
| holds options indexed by order of definition More... | |
| int | nopts_ |
| number of options More... | |
Friends | |
| ostream & | operator<< (ostream &os, const OptionParser &op) |
Related Functions | |
(Note that these are not member functions.) | |
| ostream & | operator<< (ostream &os, const OptionParser &op) |
Generic parser object for options.
Uses an object of type util::OptionReader to retrieve the options from whereever (config file, command-line, etc.)
|
protected |
|
protected |
| util::OptionParser::OptionParser | ( | OptionReader * | reader | ) |
construct using an OptionReader, i.e. either a CommandLineReader or a ConfigFileReader.
|
virtual |
| util::OptionParser::OptionParser | ( | const OptionParser & | other | ) |
copy ctor.
| void util::OptionParser::deleteOptions | ( | void | ) |
delete all the Option objects we are holding.
| void util::OptionParser::changeReader | ( | OptionReader * | reader | ) |
switch the OptionReader to a different one, used when first reading a config file and then allowing to override option on the command line.
| void util::OptionParser::addOption | ( | Option * | option | ) |
add an option to our list of accepted options.
| Option* util::OptionParser::getOption | ( | const string & | name | ) |
retrieve an option by its name.
| const list<string> util::OptionParser::getOptionNames | ( | ) | const |
retrieve a list of the option names.
| void util::OptionParser::parseOptions | ( | ) | ||
| throw | ( | UException | ||
| ) | ||||
read the options, parse them, and set their values.
| void util::OptionParser::printUsage | ( | ostream & | os | ) | const |
pretty-print the options, their descriptions, and default values in a format similar to man pages. automatic formatting and line-breaking. very nice!
| void util::OptionParser::writeConfig | ( | const string & | filename, |
| const bool | withComment = true, |
||
| const bool | order_by_n = true |
||
| ) | const | ||
| throw | ( | UException | |
| ) | |||
write out the options in a format compatible with the ConfigFileReader. Convenient way to create a default config file. order_by_n specifies the order the options were added, otherwise alphabetic by name.
| string util::OptionParser::toString | ( | const bool | withComment = false | ) | const |
| throw | ( | UException | |||
| ) | |||||
get a string representation.
|
friend |
|
protected |
the OptionReader object we will use to read-in the options, either a CommandLineReader or a ConfigFileReader
|
protected |
holds all options we know of indexed by name
|
protected |
index of options by command line character
|
protected |
holds options indexed by order of definition
|
protected |
number of options
1.8.5