Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
TCLAP::UnlabeledValueArg< T > Class Template Reference

Detailed Description

template<class T>
class TCLAP::UnlabeledValueArg< T >

The basic unlabeled argument that parses a value.

This is a template class, which means the type T defines the type that a given object will attempt to parse when an UnlabeledValueArg is reached in the list of args that the CmdLine iterates over.

Definition at line 69 of file UnlabeledValueArg.h.

#include <mrpt/otherlibs/tclap/UnlabeledValueArg.h>

Inheritance diagram for TCLAP::UnlabeledValueArg< T >:
Inheritance graph

Public Member Functions

 UnlabeledValueArg (const std::string &name, const std::string &desc, bool req, T value, const std::string &typeDesc, bool ignoreable=false, Visitor *v=NULL)
 UnlabeledValueArg constructor. More...
 
 UnlabeledValueArg (const std::string &name, const std::string &desc, bool req, T value, const std::string &typeDesc, CmdLineInterface &parser, bool ignoreable=false, Visitor *v=NULL)
 UnlabeledValueArg constructor. More...
 
 UnlabeledValueArg (const std::string &name, const std::string &desc, bool req, T value, Constraint< T > *constraint, bool ignoreable=false, Visitor *v=NULL)
 UnlabeledValueArg constructor. More...
 
 UnlabeledValueArg (const std::string &name, const std::string &desc, bool req, T value, Constraint< T > *constraint, CmdLineInterface &parser, bool ignoreable=false, Visitor *v=NULL)
 UnlabeledValueArg constructor. More...
 
virtual bool processArg (int *i, std::vector< std::string > &args)
 Handles the processing of the argument. More...
 
virtual std::string shortID (const std::string &val="val") const
 Overrides shortID for specific behavior. More...
 
virtual std::string longID (const std::string &val="val") const
 Overrides longID for specific behavior. More...
 
virtual bool operator== (const Arg &a) const
 Overrides operator== for specific behavior. More...
 
virtual void addToList (std::list< Arg * > &argList) const
 Instead of pushing to the front of list, push to the back. More...
 
T & getValue ()
 Returns the value of the argument. More...
 

Protected Member Functions

void _extractValue (const std::string &val)
 Extracts the value from the string. More...
 

Protected Attributes

_value
 The value parsed from the command line. More...
 
std::string _typeDesc
 A human readable description of the type to be parsed. More...
 
Constraint< T > * _constraint
 A Constraint this Arg must conform to. More...
 

Constructor & Destructor Documentation

◆ UnlabeledValueArg() [1/4]

template<class T >
TCLAP::UnlabeledValueArg< T >::UnlabeledValueArg ( const std::string &  name,
const std::string &  desc,
bool  req,
value,
const std::string &  typeDesc,
bool  ignoreable = false,
Visitor v = NULL 
)

UnlabeledValueArg constructor.

Constructor implemenation.

Parameters
name- A one word name for the argument. Can be used as a long flag on the command line.
desc- A description of what the argument is for or does.
req- Whether the argument is required on the command line.
value- The default value assigned to this argument if it is not present on the command line.
typeDesc- A short, human readable description of the type that this object expects. This is used in the generation of the USAGE statement. The goal is to be helpful to the end user of the program.
ignoreable- Allows you to specify that this argument can be ignored if the '–' flag is set. This defaults to false (cannot be ignored) and should generally stay that way unless you have some special need for certain arguments to be ignored.
v- Optional Vistor. You should leave this blank unless you have a very good reason.

Definition at line 239 of file UnlabeledValueArg.h.

References TCLAP::CmdLineInterface::add(), and TCLAP::OptionalUnlabeledTracker< DUMMY >::check().

◆ UnlabeledValueArg() [2/4]

template<class T >
TCLAP::UnlabeledValueArg< T >::UnlabeledValueArg ( const std::string &  name,
const std::string &  desc,
bool  req,
value,
const std::string &  typeDesc,
CmdLineInterface parser,
bool  ignoreable = false,
Visitor v = NULL 
)

UnlabeledValueArg constructor.

Parameters
name- A one word name for the argument. Can be used as a long flag on the command line.
desc- A description of what the argument is for or does.
req- Whether the argument is required on the command line.
value- The default value assigned to this argument if it is not present on the command line.
typeDesc- A short, human readable description of the type that this object expects. This is used in the generation of the USAGE statement. The goal is to be helpful to the end user of the program.
parser- A CmdLine parser object to add this Arg to
ignoreable- Allows you to specify that this argument can be ignored if the '–' flag is set. This defaults to false (cannot be ignored) and should generally stay that way unless you have some special need for certain arguments to be ignored.
v- Optional Vistor. You should leave this blank unless you have a very good reason.

Definition at line 255 of file UnlabeledValueArg.h.

References TCLAP::OptionalUnlabeledTracker< DUMMY >::check().

◆ UnlabeledValueArg() [3/4]

template<class T >
TCLAP::UnlabeledValueArg< T >::UnlabeledValueArg ( const std::string &  name,
const std::string &  desc,
bool  req,
value,
Constraint< T > *  constraint,
bool  ignoreable = false,
Visitor v = NULL 
)

UnlabeledValueArg constructor.

Constructor implemenation.

Parameters
name- A one word name for the argument. Can be used as a long flag on the command line.
desc- A description of what the argument is for or does.
req- Whether the argument is required on the command line.
value- The default value assigned to this argument if it is not present on the command line.
constraint- A pointer to a Constraint object used to constrain this Arg.
ignoreable- Allows you to specify that this argument can be ignored if the '–' flag is set. This defaults to false (cannot be ignored) and should generally stay that way unless you have some special need for certain arguments to be ignored.
v- Optional Vistor. You should leave this blank unless you have a very good reason.

Definition at line 274 of file UnlabeledValueArg.h.

References TCLAP::CmdLineInterface::add(), and TCLAP::OptionalUnlabeledTracker< DUMMY >::check().

◆ UnlabeledValueArg() [4/4]

template<class T >
TCLAP::UnlabeledValueArg< T >::UnlabeledValueArg ( const std::string &  name,
const std::string &  desc,
bool  req,
value,
Constraint< T > *  constraint,
CmdLineInterface parser,
bool  ignoreable = false,
Visitor v = NULL 
)

UnlabeledValueArg constructor.

Parameters
name- A one word name for the argument. Can be used as a long flag on the command line.
desc- A description of what the argument is for or does.
req- Whether the argument is required on the command line.
value- The default value assigned to this argument if it is not present on the command line.
constraint- A pointer to a Constraint object used to constrain this Arg.
parser- A CmdLine parser object to add this Arg to
ignoreable- Allows you to specify that this argument can be ignored if the '–' flag is set. This defaults to false (cannot be ignored) and should generally stay that way unless you have some special need for certain arguments to be ignored.
v- Optional Vistor. You should leave this blank unless you have a very good reason.

Definition at line 288 of file UnlabeledValueArg.h.

Member Function Documentation

◆ _extractValue()

template<class T >
void TCLAP::ValueArg< T >::_extractValue ( const std::string &  val)
protectedinherited

Extracts the value from the string.

Attempts to parse string as type T, if this fails an exception is thrown.

Parameters
val- value to be parsed.

Definition at line 488 of file ValueArg.h.

References TCLAP::VALUE_ARG_HELPER::EXTRACT_FAILURE, TCLAP::VALUE_ARG_HELPER::EXTRACT_TOO_MANY, and TCLAP::VALUE_ARG_HELPER::ValueExtractor< T >::extractValue().

◆ addToList()

template<class T >
void TCLAP::UnlabeledValueArg< T >::addToList ( std::list< Arg * > &  argList) const
virtual

Instead of pushing to the front of list, push to the back.

Parameters
argList- The list to add this to.

Definition at line 361 of file UnlabeledValueArg.h.

◆ getValue()

template<class T >
T & TCLAP::ValueArg< T >::getValue
inherited

Returns the value of the argument.

Implementation of getValue().

Definition at line 420 of file ValueArg.h.

◆ longID()

template<class T >
std::string TCLAP::UnlabeledValueArg< T >::longID ( const std::string &  val = "val") const
virtual

Overrides longID for specific behavior.

Overriding longID for specific output.

Reimplemented from TCLAP::ValueArg< T >.

Definition at line 338 of file UnlabeledValueArg.h.

◆ operator==()

template<class T >
bool TCLAP::UnlabeledValueArg< T >::operator== ( const Arg a) const
virtual

Overrides operator== for specific behavior.

Overriding operator== for specific behavior.

Definition at line 352 of file UnlabeledValueArg.h.

◆ processArg()

template<class T >
bool TCLAP::UnlabeledValueArg< T >::processArg ( int *  i,
std::vector< std::string > &  args 
)
virtual

Handles the processing of the argument.

Implementation of processArg().

This re-implements the Arg version of this method to set the _value of the argument appropriately. Handling specific to unlabled arguments.

Parameters
i- Pointer the the current argument in the list.
args- Mutable list of strings.

Reimplemented from TCLAP::ValueArg< T >.

Definition at line 307 of file UnlabeledValueArg.h.

◆ shortID()

template<class T >
std::string TCLAP::UnlabeledValueArg< T >::shortID ( const std::string &  val = "val") const
virtual

Overrides shortID for specific behavior.

Overriding shortID for specific output.

Reimplemented from TCLAP::ValueArg< T >.

Definition at line 327 of file UnlabeledValueArg.h.

Member Data Documentation

◆ _constraint

template<class T >
Constraint<T>* TCLAP::ValueArg< T >::_constraint
protectedinherited

A Constraint this Arg must conform to.

Definition at line 182 of file ValueArg.h.

◆ _typeDesc

template<class T >
std::string TCLAP::ValueArg< T >::_typeDesc
protectedinherited

A human readable description of the type to be parsed.

This is a hack, plain and simple. Ideally we would use RTTI to return the name of type T, but until there is some sort of consistent support for human readable names, we are left to our own devices.

Definition at line 177 of file ValueArg.h.

◆ _value

template<class T >
T TCLAP::ValueArg< T >::_value
protectedinherited

The value parsed from the command line.

Can be of any type, as long as the >> operator for the type is defined.

Definition at line 168 of file ValueArg.h.




Page generated by Doxygen 1.8.17 for MRPT 1.4.0 SVN: at Tue Mar 3 09:15:16 UTC 2020