|
Exiv2
|
Parse the command line options of a program. More...
#include <utils.hpp>
Inheritance diagram for Util::Getopt:Public Member Functions | |
| Getopt () | |
| Default constructor. | |
| virtual | ~Getopt () |
| Destructor. | |
| int | getopt (int argc, char *const argv[], const std::string &optstring) |
| Parse command line arguments. More... | |
| virtual int | option (int opt, const std::string &optarg, int optopt)=0 |
| Callback used by getopt() to pass on each option and its argument (if any). More... | |
| virtual int | nonoption (const std::string &argv) |
| Callback used by getopt() to pass on each non-option parameter found on the command line. More... | |
| const std::string & | progname () const |
| Program name (argv[0]) | |
| int | errcnt () const |
| Total number of errors returned by calls to option() | |
Parse the command line options of a program.
A wrapper around the POSIX getopt(3) function. Parses the command line options and passes each option to virtual option(). A derived class implements this method to handle options as needed. Similarly, remaining non-option parameters are passed to the virtual nonoption() method.
| int Util::Getopt::getopt | ( | int | argc, |
| char *const | argv[], | ||
| const std::string & | optstring | ||
| ) |
Parse command line arguments.
Parses the command line arguments. Calls option() with the character value of the option and its argument (if any) for each recognized option and with ':' or '?' for unrecognized options. See the manual pages for getopt(3) for details. In addition, nonoption() is invoked for each remaining non-option parameter on the command line.
| argc | Argument count as passed to main() on program invocation. |
| argv | Argument array as passed to main() on program invocation. |
| optstring | String containing the legitimate option characters. |
References Util::basename(), nonoption(), and option().
Referenced by Params::getopt().
|
virtual |
Callback used by getopt() to pass on each non-option parameter found on the command line.
Implement this method in a derived class to handle the non-option parameters as needed. The default implementation ignores all non-option parameters.
| argv | The non-option parameter from the command line. |
Reimplemented in Params.
Referenced by getopt().
|
pure virtual |
Callback used by getopt() to pass on each option and its argument (if any).
Implement this method in a derived class to handle the options as needed. See the manual pages for getopt(3) for further details, in particular, the semantics of optarg and optopt.
| opt | Value of the option character as returned by getopt(3). |
| optarg | The corresponding option argument. |
| optopt | The actual option character in case of an unrecognized option or a missing option argument (opt is '?' or ':'). |
Implemented in Params.
Referenced by getopt().
1.8.13