Image Component Library (ICL)
Classes | Namespaces | Macros | Functions
ProgArg.h File Reference
#include <ICLUtils/CompatMacros.h>
#include <ICLUtils/Any.h>
#include <ICLUtils/Exception.h>
#include <ICLUtils/Macros.h>

Go to the source code of this file.

Classes

struct  icl::utils::ProgArgException
 Programm argument environment exception type . More...
 
class  icl::utils::ProgArg
 Programm argument utility class. More...
 

Namespaces

 icl
 undocument this line if you encounter any issues!
 
 icl::utils
 

Macros

#define THROW_ProgArgException(X)   throw ProgArgException(__FUNCTION__,(X))
 

Functions

std::ostream & icl::utils::operator<< (std::ostream &s, const ProgArg &pa)
 just puts the referenced argument value as string into the lvalue-stream More...
 
bool icl::utils::operator && (const ProgArg &a, const ProgArg &b)
 this allows to check if two progargs are defined More...
 
bool icl::utils::operator && (const ProgArg &a, bool b)
 allows to check more than two ProgArg instances at once More...
 
bool icl::utils::operator && (bool &b, const ProgArg &a)
 allows to check more than two ProgArg instances at once More...
 
bool icl::utils::operator|| (const ProgArg &a, const ProgArg &b)
 this allows to check if either of two progargs are defined More...
 
bool icl::utils::operator|| (const ProgArg &a, bool b)
 allows to check if either of more than two ProgArg instances is defined More...
 
bool icl::utils::operator|| (bool &b, const ProgArg &a)
 allows to check if either of more than two ProgArg instances is defined More...
 
const ProgArg icl::utils::pa (const std::string &id, unsigned int subargidx=0)
 returns given program argument More...
 
const ProgArg icl::utils::pa (unsigned int idx, bool danglingOnly=true)
 returns given program argument at given index More...
 
template<class T >
const T icl::utils::pa_def (const std::string &id, unsigned int subargidx, const T &def)
 utility function that allows to use a default value, if given argument was not defined More...
 
template<class T >
const T icl::utils::pa_def (const std::string &id, const T &def)
 utility function that allows to use a default value, if given argument was not defined More...
 
ICLUtils_API unsigned int icl::utils::pa_get_count (bool danglingOnly=true)
 returns number of actually given args given More...
 
ICLUtils_API const std::string & icl::utils::pa_get_progname (bool fullpath=false)
 returns application name (full command line) More...
 
ICLUtils_API void icl::utils::pa_show_usage (const std::string &msg="")
 shows current available programm arguments More...
 
PAEX icl::utils::pa_explain (const std::string &pa, const std::string &ex)
 This function can be used to provide additional information for certain program arguments. More...
 
ICLUtils_API void icl::utils::pa_init (int n, char **ppc, const std::string &init, bool allowDanglingArgs=false)
 initialization function for ICL's program argument evaluation framework More...
 
ICLUtils_API void icl::utils::pa_show ()
 shows all given program arguments More...
 
ICLUtils_API void icl::utils::pa_set_license (const std::string &newLicenseText)
 Sets a license text, that is used when applications are run with –version or -v. More...
 
ICLUtils_API void icl::utils::pa_set_help_text (const std::string &newHelpText)
 Sets a applications help text that is used when applications are run with –help or with unknown arguments. More...
 
ICLUtils_API std::string icl::utils::pa_get_license ()
 returns the current license text More...
 
ICLUtils_API std::string icl::utils::pa_get_help_text ()
 returns the current help text (which is empty, if it was not set) More...
 

Macro Definition Documentation

◆ THROW_ProgArgException

#define THROW_ProgArgException (   X)    throw ProgArgException(__FUNCTION__,(X))