GemaLib
The GeMA library
gmSolutionLoader.h
Go to the documentation of this file.
1 /************************************************************************
2 **
3 ** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4 ** All rights reserved.
5 **
6 ** This file is part of the "GeMA" software. It's use should respect
7 ** the terms in the license agreement that can be found together
8 ** with this source code.
9 ** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10 ** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11 ** A PARTICULAR PURPOSE.
12 **
13 ************************************************************************/
14 
24 #ifndef _GEMA_SOLUTION_LOADER_H_
25 #define _GEMA_SOLUTION_LOADER_H_
26 
27 class GmSolutionData;
28 class GmLogCategory;
29 class GmSimulationData;
30 
31 class GmPluginLoader;
32 class LuaTable;
33 
36 {
37 public:
38  GmSolutionLoader(const GmLogCategory& logger, GmPluginLoader* pluginLoader, GmSimulationData* simData);
40 
41  bool load(LuaTable& solutionData);
42 
43 private:
44  bool loadNumericalSolvers(LuaTable& solutionData, GmSolutionData* data);
45  bool loadPhysicalMethods(LuaTable& solutionData, GmSolutionData* data);
46 
47  void setupProcesses(GmSolutionData* data);
48 
52 };
53 
54 #endif
55 
GmPluginLoader * _pluginLoader
Plugin loader.
Definition: gmSolutionLoader.h:50
Auxiliary class responsible for loading solution information from a Lua table.
Definition: gmSolutionLoader.h:35
bool loadPhysicalMethods(LuaTable &solutionData, GmSolutionData *data)
Loads PhysicalMethod definitions stored in the 'solutionData' table into the solution object 'data'.
Definition: gmSolutionLoader.cpp:121
bool loadNumericalSolvers(LuaTable &solutionData, GmSolutionData *data)
Loads NumericalSolver definitions stored in the 'solutionData' table into the solution object 'data'.
Definition: gmSolutionLoader.cpp:108
~GmSolutionLoader()
Destructor.
Definition: gmSolutionLoader.cpp:62
bool load(LuaTable &solutionData)
Loads solution data from the Lua table received as a parameter.
Definition: gmSolutionLoader.cpp:75
const GmLogCategory & _logger
Reference to the logger object used to emmit messages.
Definition: gmSolutionLoader.h:49
GmSolutionLoader(const GmLogCategory &logger, GmPluginLoader *pluginLoader, GmSimulationData *simData)
Constructor. Receives as a parameters the logger object that will be used to emmit messages and the p...
Definition: gmSolutionLoader.cpp:50
void setupProcesses(GmSolutionData *data)
Traverses all process plugins discovering the function sets exported by each one and using this infor...
Definition: gmSolutionLoader.cpp:136
GmSimulationData * _simData
Simulation data object sent as a parameter to plugin objects.
Definition: gmSolutionLoader.h:51