31 #ifndef TCLAP_XORHANDLER_H 32 #define TCLAP_XORHANDLER_H 66 void add( std::vector<Arg*>& ors );
95 std::vector< std::vector<Arg*> >&
getXorList();
111 for (
int i = 0;
static_cast<unsigned int>(i) <
_orList.size(); i++ )
126 if ( (*ait)->allowMore() )
129 return static_cast<int>(
_orList[i].size());
141 for (
int i = 0;
static_cast<unsigned int>(i) <
_orList.size(); i++ )
std::string shortUsage()
Returns the XOR specific short usage.
std::vector< std::vector< Arg * > > _orList
The list of of lists of Arg's to be or'd together.
EIGEN_STRONG_INLINE iterator end()
void printLongUsage(std::ostream &os)
Prints the XOR specific long usage.
void add(std::vector< Arg *> &ors)
Add a list of Arg*'s that will be orred together.
EIGEN_STRONG_INLINE iterator begin()
This class handles lists of Arg's that are to be XOR'd on the command line.
const_iterator find(const KEY &key) const
std::vector< std::vector< Arg * > > & getXorList()
int check(const Arg *a)
Checks whether the specified Arg is in one of the xor lists and if it does match one, returns the size of the xor list that the Arg matched.
A virtual base class that defines the essential data for all arguments.
virtual bool isRequired() const
Indicates whether the argument is required.
std::vector< Arg * >::iterator ArgVectorIterator
Typedef of an Arg vector iterator.
bool contains(const Arg *a)
Simply checks whether the Arg is contained in one of the arg lists.