SuperLuMtSolver
The GeMA Super LU Mt Numeric Solver Plugin
Loading...
Searching...
No Matches
superLuMtSolverFactory.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_SUPERLUMT_SOLVER_FACTORY_H_
25#define _GEMA_SUPERLUMT_SOLVER_FACTORY_H_
26
27#include <QObject>
28
30#include "superLuMtSolver.h"
31#include "superLuMtSolverVersion.h"
32
33
36{
38 Q_PLUGIN_METADATA(IID GmPluginObjectFactoryInterfaceIID)
40
41public:
44
47
48 // See comments on the base class method declaration
49 virtual GmPluginObject* instance(QString category, QString objType, GmSimulationData* simulation,
50 QString id, QString description)
51 {
52 assert(category == GM_PLUGIN_NUMSOLVER);
53
54 if(objType != "ns")
55 return NULL;
56
57 return new SuperLuMtSolver(simulation, id, description, logger());
58 }
59
61 virtual const QMap<QString, QString>& versionInfo() const { return SuperLuMtSolverVersionInfo(); }
62
64 virtual const QStringList& depVersionInfo() const { return SuperLuMtSolverRevisionDependencies(); }
65};
66
67#endif
68
const GmLogCategory & logger()
Implementation of the SuperLuMtSolver factory plugin.
Definition superLuMtSolverFactory.h:36
SuperLuMtSolverFactory()
Default constructor.
Definition superLuMtSolverFactory.h:43
virtual const QMap< QString, QString > & versionInfo() const
Retuns version information for the plugin. See comments on the base class.
Definition superLuMtSolverFactory.h:61
virtual const QStringList & depVersionInfo() const
Retuns dependency version information for the plugin. See comments on the base class.
Definition superLuMtSolverFactory.h:64
virtual ~SuperLuMtSolverFactory()
Destructor.
Definition superLuMtSolverFactory.h:46
A class for creating a GeMA solver based on th multi-threaded SuperLU library.
Definition superLuMtSolver.h:46
#define GmPluginObjectFactoryInterfaceIID
Q_INTERFACES(...)
Q_OBJECTQ_OBJECT
Declaration of the SuperLuMtSolver class.