QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgspythonrunner.h
Go to the documentation of this file.
1/***************************************************************************
2 qgspythonrunner.h
3 ---------------------
4 begin : May 2011
5 copyright : (C) 2011 by Martin Dobias
6 email : wonder dot sk at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15#ifndef QGSPYTHONRUNNER_H
16#define QGSPYTHONRUNNER_H
17
18#include <QString>
19#include "qgis_sip.h"
20
21#include "qgis_core.h"
22
32class CORE_EXPORT QgsPythonRunner
33{
34 public:
35
40 static bool isValid();
41
43 static bool run( const QString &command, const QString &messageOnError = QString() );
44
46 static bool eval( const QString &command, QString &result SIP_OUT );
47
53 static void setInstance( QgsPythonRunner *runner SIP_TRANSFER );
54
55 protected:
57 QgsPythonRunner() = default;
58 virtual ~QgsPythonRunner() = default;
59
60 virtual bool runCommand( QString command, QString messageOnError = QString() ) = 0;
61
62 virtual bool evalCommand( QString command, QString &result ) = 0;
63
65};
66
67#endif // QGSPYTHONRUNNER_H
Utility class for running Python commands from various parts of QGIS.
virtual bool evalCommand(QString command, QString &result)=0
virtual bool runCommand(QString command, QString messageOnError=QString())=0
virtual ~QgsPythonRunner()=default
static QgsPythonRunner * sInstance
QgsPythonRunner()=default
Protected constructor: can be instantiated only from children.
#define SIP_TRANSFER
Definition: qgis_sip.h:36
#define SIP_OUT
Definition: qgis_sip.h:58