Elements  6.2
A C++ base framework for the Euclid Software.
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
 
const ELEMENTS_API Path::Item & getProgramPath () const
 
const ELEMENTS_API Path::Item & getProgramName () 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

◆ SimpleProgram()

Elements::SimpleProgram::SimpleProgram ( )
protecteddefault

◆ ~SimpleProgram()

Elements::SimpleProgram::~SimpleProgram ( )
protectedvirtual

Definition at line 32 of file SimpleProgram.cpp.

Member Function Documentation

◆ defineOptions()

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

Referenced by setup().

◆ getProgramName()

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

Definition at line 70 of file SimpleProgram.cpp.

References m_program_name.

◆ getProgramPath()

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

Definition at line 66 of file SimpleProgram.cpp.

References m_program_path.

◆ main()

virtual ExitCode Elements::SimpleProgram::main ( )
protectedpure virtual

◆ run()

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

Definition at line 34 of file SimpleProgram.cpp.

References Elements::Kernel::Units::e, std::endl(), main(), Elements::NOT_OK, and Elements::OK.

Here is the call graph for this function:

◆ setup()

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

Definition at line 56 of file SimpleProgram.cpp.

References defineOptions(), m_program_name, and m_program_path.

Here is the call graph for this function:

Member Data Documentation

◆ m_program_name

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

Definition at line 58 of file SimpleProgram.h.

Referenced by getProgramName(), and setup().

◆ m_program_path

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

Definition at line 59 of file SimpleProgram.h.

Referenced by getProgramPath(), and setup().


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