Elements  5.12
A C++ base framework for the Euclid Software.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
Elements::SimpleProgram Class Referenceabstract

#include <SimpleProgram.h>

Public Member Functions

ELEMENTS_API ExitCode run (int argc, char **argv) noexcept
 
ELEMENTS_API const Path::ItemgetProgramPath () const
 
ELEMENTS_API const Path::ItemgetProgramName () const
 

Protected Member Functions

 SimpleProgram ()=default
 
virtual ~SimpleProgram ()
 
virtual ExitCode main ()=0
 
virtual void defineOptions ()=0
 

Private Member Functions

void setup (int argc, char **argv)
 

Private Attributes

Path::Item m_program_name
 
Path::Item m_program_path
 

Detailed Description

Definition at line 40 of file SimpleProgram.h.

Constructor & Destructor Documentation

Elements::SimpleProgram::SimpleProgram ( )
protecteddefault
Elements::SimpleProgram::~SimpleProgram ( )
protectedvirtual

Definition at line 32 of file SimpleProgram.cpp.

Member Function Documentation

virtual void Elements::SimpleProgram::defineOptions ( )
protectedpure virtual

Referenced by setup().

const Path::Item & Elements::SimpleProgram::getProgramName ( ) const

Definition at line 72 of file SimpleProgram.cpp.

References m_program_name.

const Path::Item & Elements::SimpleProgram::getProgramPath ( ) const

Definition at line 68 of file SimpleProgram.cpp.

References m_program_path.

virtual ExitCode Elements::SimpleProgram::main ( )
protectedpure virtual
ExitCode Elements::SimpleProgram::run ( int  argc,
char **  argv 
)
noexcept

Definition at line 34 of file SimpleProgram.cpp.

References Elements::Units::e, std::endl(), Elements::NOT_OK, Elements::OK, and std::exception::what().

Here is the call graph for this function:

void Elements::SimpleProgram::setup ( int  argc,
char **  argv 
)
private

Definition at line 57 of file SimpleProgram.cpp.

References defineOptions(), m_program_name, and m_program_path.

Here is the call graph for this function:

Member Data Documentation

Path::Item Elements::SimpleProgram::m_program_name
private

Definition at line 63 of file SimpleProgram.h.

Referenced by getProgramName(), and setup().

Path::Item Elements::SimpleProgram::m_program_path
private

Definition at line 64 of file SimpleProgram.h.

Referenced by getProgramPath(), and setup().


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