libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ > Class Template Referenceabstract

#include <cmd_line_processing.hpp>

Inheritance diagram for jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >:
[legend]
Collaboration diagram for jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >:
[legend]

Public Types

typedef ProgOpts ProgramOptions
 
typedef Except_ exception_type
 

Public Member Functions

__stdcall CmdLineProcessorBase (ProgramOptions &)
 
 CmdLineProcessorBase (CmdLineProcessorBase const &)=delete
 
virtual __stdcall ~CmdLineProcessorBase (void)
 
virtual bool __fastcall ProcessParams (const unsigned int argv, const tchar *const *const argc, tostream &o)
 
const shared_ptr< Logger< exception >, exception > &__fastcall Log (void) const noexcept(true)
 

Protected Member Functions

virtual bool __fastcall ProcessParamInternal (const unsigned int argv, const tchar *const *const argc, unsigned long &i, tostream &o)
 
virtual void __fastcall DumpHelp (tostream &o) const
 
- Protected Member Functions inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineParamsData
__stdcall CmdLineParamsData ()
 
 CmdLineParamsData (CmdLineParamsData const &)=delete
 
__stdcall ~CmdLineParamsData ()
 

Protected Attributes

ProgramOptionsprog_opts
 
const tcharapp_name
 
- Protected Attributes inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineParamsData
const ParamType help_param
 
const ParamType version_param
 

Additional Inherited Members

- Static Protected Attributes inherited from jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineParamsData
static const ParamType params []
 
static const tchar *const authors []
 
static const tchar version [] =_T("0.1")
 
static const tchar copyright [] =_T("2003. This is free software; see the source for copying conditions.")
 
static const tchar warranty [] =_T("There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.")
 
static const tchar contact_details [] =_T("http://www.hussar.me.uk")
 
static const tchar help_text [] =_T("My test app.")
 

Detailed Description

template<typename ProgOpts, class Except_>
class jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >

Definition at line 90 of file cmd_line_processing.hpp.

Member Typedef Documentation

◆ exception_type

template<typename ProgOpts , class Except_ >
typedef Except_ jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::exception_type

Definition at line 93 of file cmd_line_processing.hpp.

◆ ProgramOptions

template<typename ProgOpts , class Except_ >
typedef ProgOpts jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::ProgramOptions

Definition at line 92 of file cmd_line_processing.hpp.

Constructor & Destructor Documentation

◆ CmdLineProcessorBase() [1/2]

◆ CmdLineProcessorBase() [2/2]

template<typename ProgOpts , class Except_ >
jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::CmdLineProcessorBase ( CmdLineProcessorBase< ProgOpts, Except_ > const &  )
delete

◆ ~CmdLineProcessorBase()

template<typename ProgOpts , class Except_ >
virtual __stdcall jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::~CmdLineProcessorBase ( void  )
inlinevirtual

Definition at line 97 of file cmd_line_processing.hpp.

Member Function Documentation

◆ DumpHelp()

◆ Log()

template<typename ProgOpts , class Except_ >
const shared_ptr<Logger<exception>,exception>& __fastcall jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::Log ( void  ) const
inlinenoexcept

Definition at line 102 of file cmd_line_processing.hpp.

◆ ProcessParamInternal()

template<typename ProgOpts , class Except_ >
bool jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::ProcessParamInternal ( const unsigned int  argv,
const tchar *const *const  argc,
unsigned long &  i,
tostream o 
)
inlineprotectedvirtual

◆ ProcessParams()

template<typename ProgOpts , class Except_ >
bool jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::ProcessParams ( const unsigned int  argv,
const tchar *const *const  argc,
tostream o 
)
inlinevirtual

Member Data Documentation

◆ app_name

◆ prog_opts

template<typename ProgOpts , class Except_ >
ProgramOptions& jmmcg::LIBJMMCG_VER_NAMESPACE::CmdLineProcessorBase< ProgOpts, Except_ >::prog_opts
protected

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