22 #include <gdal_version.h>
23 #if PROJ_VERSION_MAJOR > 4
30 #include <pdal/pdal.hpp>
34 : mLogFeedback( logFeedback )
48 mHtmlLog.append( QStringLiteral(
"<span style=\"color:red\">%1</span><br/>" ).arg( error.toHtmlEscaped() ).replace(
'\n', QLatin1String(
"<br>" ) ) );
49 mTextLog.append( error +
'\n' );
57 mHtmlLog.append( QStringLiteral(
"<span style=\"color:#b85a20;\">%1</span><br/>" ).arg( warning.toHtmlEscaped() ).replace(
'\n', QLatin1String(
"<br>" ) ) + QStringLiteral(
"<br/>" ) );
58 mTextLog.append( warning +
'\n' );
66 mHtmlLog.append( info.toHtmlEscaped().replace(
'\n', QLatin1String(
"<br>" ) ) + QStringLiteral(
"<br/>" ) );
67 mTextLog.append( info +
'\n' );
75 mHtmlLog.append( QStringLiteral(
"<code>%1</code><br/>" ).arg( info.toHtmlEscaped().replace(
'\n', QLatin1String(
"<br>" ) ) ) );
76 mTextLog.append( info +
'\n' );
84 mHtmlLog.append( QStringLiteral(
"<span style=\"color:#777\">%1</span><br/>" ).arg( info.toHtmlEscaped().replace(
'\n', QLatin1String(
"<br>" ) ) ) );
85 mTextLog.append( info +
'\n' );
93 mHtmlLog.append( QStringLiteral(
"<code style=\"color:#777\">%1</code><br/>" ).arg( info.toHtmlEscaped().replace(
'\n', QLatin1String(
"<br>" ) ) ) );
94 mTextLog.append( info +
'\n' );
105 pushDebugInfo( tr(
"GDAL version: %1" ).arg( GDALVersionInfo(
"RELEASE_NAME" ) ) );
106 pushDebugInfo( tr(
"GEOS version: %1" ).arg( GEOSversion() ) );
108 #if PROJ_VERSION_MAJOR > 4
109 PJ_INFO info = proj_info();
110 pushDebugInfo( tr(
"PROJ version: %1" ).arg( info.release ) );
116 #if PDAL_VERSION_MAJOR_INT > 1 || (PDAL_VERSION_MAJOR_INT == 1 && PDAL_VERSION_MINOR_INT >= 7)
117 pushDebugInfo( tr(
"PDAL version: %1" ).arg( QString::fromStdString( pdal::Config::fullVersionString() ) ) );
119 pushDebugInfo( tr(
"PDAL version: %1" ).arg( QString::fromStdString( pdal::GetFullVersionString() ) ) );
123 if ( provider && !provider->
versionInfo().isEmpty() )
141 : mChildSteps( childAlgorithmCount )
142 , mFeedback( feedback )
151 mFeedback->
setProgress( 100.0 *
static_cast< double >( mCurrentStep ) / mChildSteps );
199 void QgsProcessingMultiStepFeedback::updateOverallProgress(
double progress )
201 double baseProgress = 100.0 *
static_cast< double >( mCurrentStep ) / mChildSteps;
202 double currentAlgorithmProgress =
progress / mChildSteps;
203 mFeedback->
setProgress( baseProgress + currentAlgorithmProgress );
static QString version()
Version string.
static QString devVersion()
The development version.
void progressChanged(double progress)
Emitted when the feedback object reports a progress change.
void canceled()
Internal routines can connect to this signal if they use event loop.
void cancel()
Tells the internal routines that the current operation should be canceled. This should be run by the ...
void setProgress(double progress)
Sets the current progress for the feedback object.
double progress() const
Returns the current progress reported by the feedback object.
static void logMessage(const QString &message, const QString &tag=QString(), Qgis::MessageLevel level=Qgis::Warning, bool notifyUser=true)
Adds a message to the log instance (and creates it if necessary).
Base class for providing feedback from a processing algorithm.
virtual void pushCommandInfo(const QString &info)
Pushes an informational message containing a command from the algorithm.
virtual void pushInfo(const QString &info)
Pushes a general informational message from the algorithm.
virtual void pushWarning(const QString &warning)
Pushes a warning informational message from the algorithm.
void pushVersionInfo(const QgsProcessingProvider *provider=nullptr)
Pushes a summary of the QGIS (and underlying library) version information to the log.
virtual QString textLog() const
Returns the plain text contents of the log, which contains all messages pushed to the feedback object...
QgsProcessingFeedback(bool logFeedback=true)
Constructor for QgsProcessingFeedback.
virtual QString htmlLog() const
Returns the HTML formatted contents of the log, which contains all messages pushed to the feedback ob...
virtual void pushDebugInfo(const QString &info)
Pushes an informational message containing debugging helpers from the algorithm.
virtual void reportError(const QString &error, bool fatalError=false)
Reports that the algorithm encountered an error while executing.
virtual void pushConsoleInfo(const QString &info)
Pushes a console feedback message from the algorithm.
virtual void setProgressText(const QString &text)
Sets a progress report text string.
QgsProcessingMultiStepFeedback(int steps, QgsProcessingFeedback *feedback)
Constructor for QgsProcessingMultiStepFeedback, for a process with the specified number of steps.
void pushDebugInfo(const QString &info) override
Pushes an informational message containing debugging helpers from the algorithm.
void pushConsoleInfo(const QString &info) override
Pushes a console feedback message from the algorithm.
void pushInfo(const QString &info) override
Pushes a general informational message from the algorithm.
void pushWarning(const QString &warning) override
Pushes a warning informational message from the algorithm.
void setProgressText(const QString &text) override
Sets a progress report text string.
void setCurrentStep(int step)
Sets the step which is being executed.
void reportError(const QString &error, bool fatalError=false) override
Reports that the algorithm encountered an error while executing.
QString textLog() const override
Returns the plain text contents of the log, which contains all messages pushed to the feedback object...
void pushCommandInfo(const QString &info) override
Pushes an informational message containing a command from the algorithm.
QString htmlLog() const override
Returns the HTML formatted contents of the log, which contains all messages pushed to the feedback ob...
Abstract base class for processing providers.
virtual QString versionInfo() const
Returns a version information string for the provider, or an empty string if this is not applicable (...
virtual QString name() const =0
Returns the provider name, which is used to describe the provider within the GUI.