Public Types | |
typedef std::map< std::string, ErrorSeverity > | ErrorMessageMap |
BENIGN = 0 | |
CRITICAL = 1 | |
enum | ErrorSeverity { BENIGN = 0, CRITICAL = 1 } |
Public Member Functions | |
ArgumentParser (int *argc, char **argv) | |
void | setApplicationUsage (ApplicationUsage *usage) |
ApplicationUsage * | getApplicationUsage () |
const ApplicationUsage * | getApplicationUsage () const |
int & | argc () |
char ** | argv () |
char * | operator[] (int pos) |
const char * | operator[] (int pos) const |
std::string | getApplicationName () const |
int | find (const std::string &str) const |
bool | isOption (int pos) const |
bool | isString (int pos) const |
bool | isNumber (int pos) const |
bool | containsOptions () const |
void | remove (int pos, int num=1) |
bool | match (int pos, const std::string &str) const |
bool | read (const std::string &str) |
bool | read (const std::string &str, Parameter value1) |
bool | read (const std::string &str, Parameter value1, Parameter value2) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7) |
bool | read (const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7, Parameter value8) |
bool | read (int pos, const std::string &str) |
bool | read (int pos, const std::string &str, Parameter value1) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7) |
bool | read (int pos, const std::string &str, Parameter value1, Parameter value2, Parameter value3, Parameter value4, Parameter value5, Parameter value6, Parameter value7, Parameter value8) |
bool | errors (ErrorSeverity severity=BENIGN) const |
void | reportError (const std::string &message, ErrorSeverity severity=CRITICAL) |
void | reportRemainingOptionsAsUnrecognized (ErrorSeverity severity=BENIGN) |
ErrorMessageMap & | getErrorMessageMap () |
const ErrorMessageMap & | getErrorMessageMap () const |
void | writeErrorMessages (std::ostream &output, ErrorSeverity sevrity=BENIGN) |
Static Public Member Functions | |
static bool | isOption (const char *str) |
static bool | isString (const char *str) |
static bool | isNumber (const char *str) |
Protected Attributes | |
int * | _argc |
char ** | _argv |
ErrorMessageMap | _errorMessageMap |
ApplicationUsage * | _usage |
Classes | |
class | Parameter |
typedef std::map<std::string,ErrorSeverity> osg::ArgumentParser::ErrorMessageMap |
osg::ArgumentParser::ArgumentParser | ( | int * | argc, | |
char ** | argv | |||
) |
int& osg::ArgumentParser::argc | ( | ) | [inline] |
Return the argument count.
char** osg::ArgumentParser::argv | ( | ) | [inline] |
Return the argument array.
bool osg::ArgumentParser::containsOptions | ( | ) | const |
bool osg::ArgumentParser::errors | ( | ErrorSeverity | severity = BENIGN |
) | const |
Return the error flag, true if an error has occured when reading arguments.
int osg::ArgumentParser::find | ( | const std::string & | str | ) | const |
Return the position of an occurance of a string in the argument list. Return -1 if no string is found.
std::string osg::ArgumentParser::getApplicationName | ( | ) | const |
Return the application name, as specified by argv[0]
const ApplicationUsage* osg::ArgumentParser::getApplicationUsage | ( | ) | const [inline] |
ApplicationUsage* osg::ArgumentParser::getApplicationUsage | ( | ) | [inline] |
const ErrorMessageMap& osg::ArgumentParser::getErrorMessageMap | ( | ) | const [inline] |
Return the error message, if any has occured.
ErrorMessageMap& osg::ArgumentParser::getErrorMessageMap | ( | ) | [inline] |
Return the error message, if any has occured.
bool osg::ArgumentParser::isNumber | ( | int | pos | ) | const |
Return true if the specified parameter is a number.
static bool osg::ArgumentParser::isNumber | ( | const char * | str | ) | [static] |
Return true if specified parameter is a number.
bool osg::ArgumentParser::isOption | ( | int | pos | ) | const |
Return true if the specified parameter is an option in the form of -option or --option.
static bool osg::ArgumentParser::isOption | ( | const char * | str | ) | [static] |
Return true if the specified string is an option in the form -option or --option.
bool osg::ArgumentParser::isString | ( | int | pos | ) | const |
Return true if the specified parameter is a string not in the form of an option.
static bool osg::ArgumentParser::isString | ( | const char * | str | ) | [static] |
Return true if string is non-NULL and not an option in the form -option or --option.
bool osg::ArgumentParser::match | ( | int | pos, | |
const std::string & | str | |||
) | const |
Return true if the specified argument matches the given string.
const char* osg::ArgumentParser::operator[] | ( | int | pos | ) | const [inline] |
Return the const char* argument at the specified position.
char* osg::ArgumentParser::operator[] | ( | int | pos | ) | [inline] |
Return the char* argument at the specified position.
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6, | |||
Parameter | value7, | |||
Parameter | value8 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6, | |||
Parameter | value7 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1, | |||
Parameter | value2 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str, | |||
Parameter | value1 | |||
) |
bool osg::ArgumentParser::read | ( | int | pos, | |
const std::string & | str | |||
) |
If the argument value at the specified position matches the given string, and subsequent parameters are also matched, then set the parameter values, remove the arguments from the list, and return true. Otherwise, return false.
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6, | |||
Parameter | value7, | |||
Parameter | value8 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6, | |||
Parameter | value7 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5, | |||
Parameter | value6 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4, | |||
Parameter | value5 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3, | |||
Parameter | value4 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1, | |||
Parameter | value2, | |||
Parameter | value3 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str, | |
Parameter | value1 | |||
) |
bool osg::ArgumentParser::read | ( | const std::string & | str | ) |
Search for an occurance of a string in the argument list. If found, remove that occurance and return true. Otherwise, return false.
void osg::ArgumentParser::remove | ( | int | pos, | |
int | num = 1 | |||
) |
Remove one or more arguments from the argv argument list, and decrement the argc respectively.
void osg::ArgumentParser::reportError | ( | const std::string & | message, | |
ErrorSeverity | severity = CRITICAL | |||
) |
Report an error message by adding to the ErrorMessageMap.
void osg::ArgumentParser::reportRemainingOptionsAsUnrecognized | ( | ErrorSeverity | severity = BENIGN |
) |
For each remaining option, report it as unrecognized.
void osg::ArgumentParser::setApplicationUsage | ( | ApplicationUsage * | usage | ) | [inline] |
void osg::ArgumentParser::writeErrorMessages | ( | std::ostream & | output, | |
ErrorSeverity | sevrity = BENIGN | |||
) |
Write error messages to the given ostream, if at or above the given severiity.
int* osg::ArgumentParser::_argc [protected] |
char** osg::ArgumentParser::_argv [protected] |
ErrorMessageMap osg::ArgumentParser::_errorMessageMap [protected] |
ApplicationUsage* osg::ArgumentParser::_usage [protected] |