Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
TCLAP::CmdLine Class Reference

#include <CmdLine.h>

Inheritance diagram for TCLAP::CmdLine:
Inheritance graph
[legend]

Public Member Functions

void add (Arg &a)
 
void add (Arg *a)
 
 CmdLine (const std::string &message, const char delimiter= ' ', const std::string &version="none", bool helpAndVersion=true)
 
std::list< Arg * > & getArgList ()
 
char getDelimiter ()
 
bool getExceptionHandling () const
 
std::stringgetMessage ()
 
CmdLineOutputgetOutput ()
 
std::stringgetProgramName ()
 
std::stringgetVersion ()
 
XorHandlergetXorHandler ()
 
bool hasHelpAndVersion ()
 
void parse (int argc, const char *const *argv)
 
void parse (std::vector< std::string > &args)
 
void reset ()
 
void setExceptionHandling (const bool state)
 
void setOutput (CmdLineOutput *co)
 
void xorAdd (Arg &a, Arg &b)
 
void xorAdd (std::vector< Arg * > &xors)
 
virtual ~CmdLine ()
 
- Public Member Functions inherited from TCLAP::CmdLineInterface
void parse (std::vector< std::string > &args)
 
virtual ~CmdLineInterface ()
 

Protected Member Functions

bool _emptyCombined (const std::string &s)
 
void deleteOnExit (Arg *ptr)
 
void deleteOnExit (Visitor *ptr)
 
void missingArgsException ()
 

Protected Attributes

std::list< Arg * > _argDeleteOnExitList
 
std::list< Arg * > _argList
 
char _delimiter
 
bool _handleExceptions
 
std::string _message
 
int _numRequired
 
CmdLineOutput_output
 
std::string _progName
 
std::string _version
 
std::list< Visitor * > _visitorDeleteOnExitList
 
XorHandler _xorHandler
 

Private Member Functions

void _constructor ()
 
 CmdLine (const CmdLine &rhs)
 
CmdLineoperator= (const CmdLine &rhs)
 

Private Attributes

bool _helpAndVersion
 
bool _userSetOutput
 

Detailed Description

The base class that manages the command line definition and passes along the parsing to the appropriate Arg classes.

Definition at line 70 of file CmdLine.h.

Constructor & Destructor Documentation

TCLAP::CmdLine::CmdLine ( const CmdLine rhs)
private

Prevent accidental copying.

TCLAP::CmdLine::CmdLine ( const std::string message,
const char  delimiter = ' ',
const std::string version = "none",
bool  helpAndVersion = true 
)
inline

Command line constructor. Defines how the arguments will be parsed.

Parameters
message- The message to be used in the usage output.
delimiter- The character that is used to separate the argument flag/name from the value. Defaults to ' ' (space).
version- The version number to be used in the –version switch.
helpAndVersion- Whether or not to create the Help and Version switches. Defaults to true.

Definition at line 323 of file CmdLine.h.

TCLAP::CmdLine::~CmdLine ( )
inlinevirtual

Deletes any resources allocated by a CmdLine object.

Definition at line 345 of file CmdLine.h.

Member Function Documentation

void TCLAP::CmdLine::_constructor ( )
inlineprivate

Encapsulates the code common to the constructors (which is all of it).

Definition at line 356 of file CmdLine.h.

bool TCLAP::CmdLine::_emptyCombined ( const std::string s)
inlineprotected

Checks whether a name/flag string matches entirely matches the Arg::blankChar. Used when multiple switches are combined into a single argument.

Parameters
s- The message to be used in the usage.

Definition at line 511 of file CmdLine.h.

void TCLAP::CmdLine::add ( Arg a)
inlinevirtual

Adds an argument to the list of arguments to be parsed.

Parameters
a- Argument to be added.

Implements TCLAP::CmdLineInterface.

Definition at line 413 of file CmdLine.h.

void TCLAP::CmdLine::add ( Arg a)
inlinevirtual

An alternative add. Functionally identical.

Parameters
a- Argument to be added.

Implements TCLAP::CmdLineInterface.

Definition at line 418 of file CmdLine.h.

void TCLAP::CmdLine::deleteOnExit ( Arg ptr)
inlineprotected

Perform a delete ptr; operation on ptr when this object is deleted.

Definition at line 550 of file CmdLine.h.

void TCLAP::CmdLine::deleteOnExit ( Visitor ptr)
inlineprotected

Perform a delete ptr; operation on ptr when this object is deleted.

Definition at line 555 of file CmdLine.h.

std::list< Arg * > & TCLAP::CmdLine::getArgList ( )
inlinevirtual

Returns the argList.

Implements TCLAP::CmdLineInterface.

Definition at line 583 of file CmdLine.h.

char TCLAP::CmdLine::getDelimiter ( )
inlinevirtual

Returns the delimiter string.

Implements TCLAP::CmdLineInterface.

Definition at line 593 of file CmdLine.h.

bool TCLAP::CmdLine::getExceptionHandling ( ) const
inline

Returns the current state of the internal exception handling.

Return values
trueParsing exceptions are handled internally.
falseParsing exceptions are propagated to the caller.

Definition at line 613 of file CmdLine.h.

std::string & TCLAP::CmdLine::getMessage ( )
inlinevirtual

Returns the message string.

Implements TCLAP::CmdLineInterface.

Definition at line 598 of file CmdLine.h.

CmdLineOutput * TCLAP::CmdLine::getOutput ( )
inlinevirtual

Returns the CmdLineOutput object.

Implements TCLAP::CmdLineInterface.

Definition at line 560 of file CmdLine.h.

std::string & TCLAP::CmdLine::getProgramName ( )
inlinevirtual

Returns the program name string.

Implements TCLAP::CmdLineInterface.

Definition at line 578 of file CmdLine.h.

std::string & TCLAP::CmdLine::getVersion ( )
inlinevirtual

Returns the version string.

Implements TCLAP::CmdLineInterface.

Definition at line 573 of file CmdLine.h.

XorHandler & TCLAP::CmdLine::getXorHandler ( )
inlinevirtual

Returns the XorHandler.

Implements TCLAP::CmdLineInterface.

Definition at line 588 of file CmdLine.h.

bool TCLAP::CmdLine::hasHelpAndVersion ( )
inlinevirtual

Indicates whether or not the help and version switches were created automatically.

Implements TCLAP::CmdLineInterface.

Definition at line 603 of file CmdLine.h.

void TCLAP::CmdLine::missingArgsException ( )
inlineprotected

Throws an exception listing the missing args.

Definition at line 523 of file CmdLine.h.

CmdLine& TCLAP::CmdLine::operator= ( const CmdLine rhs)
private
void TCLAP::CmdLine::parse ( int  argc,
const char *const *  argv 
)
inlinevirtual

Parses the command line.

Parameters
argc- Number of arguments.
argv- Array of arguments.

Implements TCLAP::CmdLineInterface.

Definition at line 433 of file CmdLine.h.

void TCLAP::CmdLine::parse ( std::vector< std::string > &  args)
inline

Parses the command line.

Parameters
args- A vector of strings representing the args. args[0] is still the program name.

Definition at line 444 of file CmdLine.h.

void TCLAP::CmdLine::reset ( void  )
inlinevirtual

Allows the CmdLine object to be reused.

Implements TCLAP::CmdLineInterface.

Definition at line 618 of file CmdLine.h.

void TCLAP::CmdLine::setExceptionHandling ( const bool  state)
inline

Disables or enables CmdLine's internal parsing exception handling.

Parameters
stateShould CmdLine handle parsing exceptions internally?

Definition at line 608 of file CmdLine.h.

void TCLAP::CmdLine::setOutput ( CmdLineOutput co)
inlinevirtual
Parameters
co- CmdLineOutput object that we want to use instead.

Implements TCLAP::CmdLineInterface.

Definition at line 565 of file CmdLine.h.

void TCLAP::CmdLine::xorAdd ( Arg a,
Arg b 
)
inlinevirtual

Add two Args that will be xor'd. If this method is used, add does not need to be called.

Parameters
a- Argument to be added and xor'd.
b- Argument to be added and xor'd.

Implements TCLAP::CmdLineInterface.

Definition at line 405 of file CmdLine.h.

void TCLAP::CmdLine::xorAdd ( std::vector< Arg * > &  xors)
inlinevirtual

Add a list of Args that will be xor'd. If this method is used, add does not need to be called.

Parameters
xors- List of Args to be added and xor'd.

Implements TCLAP::CmdLineInterface.

Definition at line 393 of file CmdLine.h.

Member Data Documentation

std::list<Arg*> TCLAP::CmdLine::_argDeleteOnExitList
protected

A list of Args to be explicitly deleted when the destructor is called. At the moment, this only includes the three default Args.

Definition at line 118 of file CmdLine.h.

std::list<Arg*> TCLAP::CmdLine::_argList
protected

The list of arguments that will be tested against the command line.

Definition at line 78 of file CmdLine.h.

char TCLAP::CmdLine::_delimiter
protected

The character that is used to separate the argument flag/name from the value. Defaults to ' ' (space).

Definition at line 106 of file CmdLine.h.

bool TCLAP::CmdLine::_handleExceptions
protected

Should CmdLine handle parsing exceptions internally?

Definition at line 135 of file CmdLine.h.

bool TCLAP::CmdLine::_helpAndVersion
private

Whether or not to automatically create help and version switches.

Definition at line 184 of file CmdLine.h.

std::string TCLAP::CmdLine::_message
protected

A message used to describe the program. Used in the usage output.

Definition at line 88 of file CmdLine.h.

int TCLAP::CmdLine::_numRequired
protected

The number of arguments that are required to be present on the command line. This is set dynamically, based on the Args added to the CmdLine object.

Definition at line 100 of file CmdLine.h.

CmdLineOutput* TCLAP::CmdLine::_output
protected

Object that handles all output for the CmdLine.

Definition at line 130 of file CmdLine.h.

std::string TCLAP::CmdLine::_progName
protected

The name of the program. Set to argv[0].

Definition at line 83 of file CmdLine.h.

bool TCLAP::CmdLine::_userSetOutput
private

Is set to true when a user sets the output object. We use this so that we don't delete objects that are created outside of this lib.

Definition at line 179 of file CmdLine.h.

std::string TCLAP::CmdLine::_version
protected

The version to be displayed with the –version switch.

Definition at line 93 of file CmdLine.h.

std::list<Visitor*> TCLAP::CmdLine::_visitorDeleteOnExitList
protected

A list of Visitors to be explicitly deleted when the destructor is called. At the moment, these are the Vistors created for the default Args.

Definition at line 125 of file CmdLine.h.

XorHandler TCLAP::CmdLine::_xorHandler
protected

The handler that manages xoring lists of args.

Definition at line 111 of file CmdLine.h.


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


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:43