ctools
2.1.0.dev
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Macros
Pages
main_base.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
* ctool_base - [WHAT] tool main code *
3
* ----------------------------------------------------------------------- *
4
* copyright (C) [YEAR] by [AUTHOR] *
5
* ----------------------------------------------------------------------- *
6
* *
7
* This program is free software: you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation, either version 3 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* This program is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
19
* *
20
***************************************************************************/
21
/**
22
* @file ctool_base/main.cpp
23
* @brief [WHAT] tool main code
24
* @author [AUTHOR]
25
*/
26
27
/* __ Includes ___________________________________________________________ */
28
#ifdef HAVE_CONFIG_H
29
#include <config.h>
30
#endif
31
#include "
support.hpp
"
32
#include "
ctool_base.hpp
"
33
34
35
/***********************************************************************/
/**
36
* @brief Main entry point of application
37
*
38
* @param[in] argc Number of command line arguments.
39
* @param[in] argv Command line arguments.
40
*
41
* This is the main entry point of the ctool_base application. It allocates a
42
* ctool_base object and executes the application. Any exceptions that occur
43
* will be catched and corresponding error messages written in the
44
* application logger and into the standard output.
45
***************************************************************************/
46
int
main
(
int
argc,
char
*argv[])
47
{
48
// Initialise return code
49
int
rc = 1;
50
51
// Initialise pointer on application
52
ctool_base
* application = NULL;
53
54
// Try creating an instance of the application and executing the instance
55
try
{
56
57
// Create instance of application
58
application =
new
ctool_base
(argc, argv);
59
60
// Execute ctool
61
rc =
execute_ctool
(application);
62
63
}
64
65
catch
(std::exception &e) {
66
67
// Report exception
68
report_ctool_failure
(
"ctool_base"
, e.what());
69
70
}
71
72
// Delete application
73
delete
application;
74
75
// Return
76
return
rc;
77
}
support.hpp
Support function definitions.
main
int main(int argc, char *argv[])
Main entry point of application.
Definition:
main.cpp:46
ctool_base.hpp
[WHAT] tool definition
report_ctool_failure
void report_ctool_failure(const std::string &name, const std::string &message)
Report ctool failure.
Definition:
support.cpp:106
execute_ctool
int execute_ctool(ctool *tool)
Execute ctool.
Definition:
support.cpp:58
ctool_base
[WHAT] tool
Definition:
ctool_base.hpp:44
src
template
main_base.cpp
Generated on Thu May 25 2023 18:02:21 for ctools by
1.8.5