mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-08-13 17:38:59 +00:00
merged new xmlrpc-c revision 1472 from https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/trunk
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@8545 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
59
libs/xmlrpc-c/lib/util/include/cmdline_parser.hpp
Normal file
59
libs/xmlrpc-c/lib/util/include/cmdline_parser.hpp
Normal file
@@ -0,0 +1,59 @@
|
||||
#ifndef CMDLINE_PARSER_HPP_INCLUDED
|
||||
#define CMDLINE_PARSER_HPP_INCLUDED
|
||||
|
||||
#include <string>
|
||||
|
||||
struct cmdlineParserCtl;
|
||||
|
||||
class CmdlineParser {
|
||||
public:
|
||||
CmdlineParser();
|
||||
|
||||
~CmdlineParser();
|
||||
|
||||
enum optType {FLAG, INT, UINT, STRING, BINUINT, FLOAT};
|
||||
|
||||
void
|
||||
defineOption(std::string const optionName,
|
||||
optType const optionType);
|
||||
|
||||
void
|
||||
processOptions(int const argc,
|
||||
const char ** const argv);
|
||||
|
||||
bool
|
||||
optionIsPresent(std::string const optionName) const;
|
||||
|
||||
int
|
||||
getOptionValueInt(std::string const optionName) const;
|
||||
|
||||
unsigned int
|
||||
getOptionValueUint(std::string const optionName) const;
|
||||
|
||||
std::string
|
||||
getOptionValueString(std::string const optionName) const;
|
||||
|
||||
unsigned long long
|
||||
getOptionValueBinUint(std::string const optionName) const;
|
||||
|
||||
double
|
||||
getOptionValueFloat(std::string const optionName) const;
|
||||
|
||||
unsigned int
|
||||
argumentCount() const;
|
||||
|
||||
std::string
|
||||
getArgument(unsigned int const argNumber) const;
|
||||
|
||||
private:
|
||||
struct cmdlineParserCtl * cp;
|
||||
|
||||
// Make sure no one can copy this object, because if there are two
|
||||
// copies, there will be two attempts to destroy *cp.
|
||||
CmdlineParser(CmdlineParser const&) {};
|
||||
|
||||
CmdlineParser&
|
||||
operator=(CmdlineParser const&) {return *this;}
|
||||
};
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user