Elements
6.2
A C++ base framework for the Euclid Software.
|
Simple example of an Elements program. More...
Public Member Functions | |
OptionsDescription | defineSpecificProgramOptions () override |
Allows to define the (command line and configuration file) options specific to this program. More... | |
ExitCode | mainMethod (map< string, VariableValue > &args) override |
The "main" method. More... | |
Public Member Functions inherited from Elements::Program | |
Program ()=default | |
Constructor. More... | |
virtual | ~Program () |
Destructor. More... | |
virtual std::pair< OptionsDescription, PositionalOptionsDescription > | defineProgramArguments () |
This methods must be used to the program arguments. More... | |
Additional Inherited Members | |
Public Types inherited from Elements::Program | |
using | options_description = boost::program_options::options_description |
using | positional_options_description = boost::program_options::positional_options_description |
using | variable_value = boost::program_options::variable_value |
using | variables_map = boost::program_options::variables_map |
using | OptionsDescription = options_description |
using | PositionalOptionsDescription = positional_options_description |
using | VariableValue = variable_value |
using | VariablesMap = variables_map |
using | ExitCode = Elements::ExitCode |
using | Logging = Elements::Logging |
Simple example of an Elements program.
All C++ executable must extend the Elements::Program base class
Definition at line 79 of file Program.cpp.
|
inlineoverridevirtual |
Allows to define the (command line and configuration file) options specific to this program.
See the ElementsProgram documentation for more details.
Reimplemented from Elements::Program.
Definition at line 91 of file Program.cpp.
|
inlineoverridevirtual |
The "main" method.
This method is the entry point to the program. In this sense, it is similar to a main (and it is why it is called mainMethod()). The code below contains the calls to the different classes created for the first developer's workshop
See the ElementsProgram documentation for more details.
Implements Elements::Program.
Definition at line 126 of file Program.cpp.
References Elements::Examples::ClassExample::divideNumbers(), Elements::Kernel::Units::e, Elements::Examples::ClassExample::factoryMethod(), Elements::Examples::functionExample(), Elements::Examples::ClassExample::fundamentalTypeMethod(), Elements::Logging::getLogger(), Elements::System::getThisExecutableInfo(), Elements::Examples::log, std::move(), Elements::Examples::myLocalLogTestFunc(), Elements::Project::name(), Elements::Module::name(), Elements::System::ModuleInfo::name(), Elements::OK, Elements::Examples::ClassExample::passingObjectInGeneral(), Elements::Examples::ClassExample::passingUniquePointer(), Elements::Examples::printProject(), Elements::Kernel::Units::second, Elements::Module::versionString(), and Elements::Project::versionString().