FFSM++  1.1.0
French Forest Sector Model ++
MainProgram.h
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) 2015 by Laboratoire d'Economie Forestière *
3  * http://ffsm-project.org *
4  * *
5  * This program is free software; you can redistribute it and/or modify *
6  * it under the terms of the GNU General Public License as published by *
7  * the Free Software Foundation; either version 3 of the License, or *
8  * (at your option) any later version, given the compliance with the *
9  * exceptions listed in the file COPYING that is distribued together *
10  * with this file. *
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, write to the *
19  * Free Software Foundation, Inc., *
20  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
21  ***************************************************************************/
22 #ifndef MAINPROGRAM_H
23 #define MAINPROGRAM_H
24 
25 // standard include
26 #include <cstdlib>
27 #include <string>
28 
29 // regmas headers...
30 #include "BaseClass.h"
31 #include "ModelData.h"
32 #include "Gis.h"
33 #include "Init.h"
34 #include "Scheduler.h"
35 #include "Sandbox.h"
36 #include "Output.h"
37 #include "ModelCore.h"
38 #include "ModelCoreSpatial.h"
39 #include "Carbon.h"
40 
41 /// Main program scheleton. It control the flow of the program.
42 
43 /**
44 There is only one istance of this class. It is responsable to load the setting files, call the Init class, "speack" with the Scheduler and finally end the program.
45 @author Antonello Lobianco
46 */
47 class MainProgram: public BaseClass {
48 
49 public:
51  ~MainProgram();
52  void run(); ///< Run the program
53 
54 };
55 
56 #endif
ThreadManager * MTHREAD
Pointer to the Thread manager.
Definition: BaseClass.h:467
Main program scheleton. It control the flow of the program.
Definition: MainProgram.h:47
Thread manager. Responsable to manage the main thread and "speak" with the GUI.
Definition: ThreadManager.h:65
Base class for the regmas application.
Definition: BaseClass.h:239
void run()
Run the program.
Definition: MainProgram.cpp:58
MainProgram(ThreadManager *MTHREAD)
Definition: MainProgram.cpp:33
This file is the header of BaseClass and it is included by ALL compiled code.