QGIS API Documentation 3.36.0-Maidenhead (09951dc0acf)
|
Contains a pipeline of raster interfaces for sequential raster processing. More...
#include <qgsrasterpipe.h>
Public Types | |
enum class | Property : int { RendererOpacity } |
Data definable properties. More... | |
Public Member Functions | |
QgsRasterPipe ()=default | |
Constructor for an empty QgsRasterPipe. | |
QgsRasterPipe (const QgsRasterPipe &pipe) | |
Copy constructor. | |
~QgsRasterPipe () | |
QgsRasterInterface * | at (int idx) const |
Returns the interface at the specified index. | |
QgsBrightnessContrastFilter * | brightnessFilter () const |
Returns the brightness filter interface, or nullptr if no brightness filter is present in the pipe. | |
bool | canSetOn (int idx, bool on) |
Returns true if the interface at the specified index may be switched on or off. | |
QgsPropertyCollection & | dataDefinedProperties () |
Returns a reference to the pipe's property collection, used for data defined overrides. | |
const QgsPropertyCollection & | dataDefinedProperties () const |
Returns a reference to the pipe's property collection, used for data defined overrides. | |
void | evaluateDataDefinedProperties (QgsExpressionContext &context) |
Evaluates any data defined properties set on the pipe, applying their results to the corresponding interfaces in place. | |
QgsHueSaturationFilter * | hueSaturationFilter () const |
Returns the hue/saturation interface, or nullptr if no hue/saturation filter is present in the pipe. | |
bool | insert (int idx, QgsRasterInterface *interface) |
Attempts to insert interface at specified index and connect if connection would fail, the interface is not inserted and false is returned. | |
QgsRasterInterface * | last () const |
Returns last interface in the pipe. | |
void | moveToThread (QThread *thread) |
Moves the pipe to another thread. | |
QgsRasterNuller * | nuller () const |
Returns the raster nuller interface, or nullptr if no raster nuller is present in the pipe. | |
QgsRasterPipe & | operator= (const QgsRasterPipe &rh)=delete |
QgsRasterProjector * | projector () const |
Returns the projector interface, or nullptr if no projector is present in the pipe. | |
QgsRasterDataProvider * | provider () const |
Returns the data provider interface, or nullptr if no data provider is present in the pipe. | |
bool | remove (int idx) |
Removes and deletes the interface at given index (if possible). | |
bool | remove (QgsRasterInterface *interface) |
Removes and deletes interface from pipe (if possible). | |
QgsRasterRenderer * | renderer () const |
Returns the raster renderer interface, or nullptr if no raster renderer is present in the pipe. | |
bool | replace (int idx, QgsRasterInterface *interface) |
Attempts to replace the interface at specified index and reconnect the pipe. | |
QgsRasterResampleFilter * | resampleFilter () const |
Returns the resample filter interface, or nullptr if no resample filter is present in the pipe. | |
Qgis::RasterResamplingStage | resamplingStage () const |
Returns which stage of the pipe should apply resampling. | |
bool | set (QgsRasterInterface *interface) |
Inserts a new known interface in default place or replace interface of the same role if it already exists. | |
void | setDataDefinedProperties (const QgsPropertyCollection &collection) |
Sets the pipe's property collection, used for data defined overrides. | |
bool | setOn (int idx, bool on) |
Set whether the interface at the specified index is enabled. | |
void | setResamplingStage (Qgis::RasterResamplingStage stage) |
Sets which stage of the pipe should apply resampling. | |
int | size () const |
Returns the size of the pipe (the number of interfaces contained in the pipe). | |
Static Public Member Functions | |
static QgsPropertiesDefinition | propertyDefinitions () |
Returns the definitions for data defined properties available for use in raster pipes. | |
Contains a pipeline of raster interfaces for sequential raster processing.
Definition at line 49 of file qgsrasterpipe.h.
|
strong |
Data definable properties.
Enumerator | |
---|---|
RendererOpacity | Raster renderer global opacity. |
Definition at line 59 of file qgsrasterpipe.h.
|
default |
Constructor for an empty QgsRasterPipe.
QgsRasterPipe::QgsRasterPipe | ( | const QgsRasterPipe & | pipe | ) |
Copy constructor.
Definition at line 34 of file qgsrasterpipe.cpp.
QgsRasterPipe::~QgsRasterPipe | ( | ) |
Definition at line 57 of file qgsrasterpipe.cpp.
|
inline |
Returns the interface at the specified index.
Definition at line 170 of file qgsrasterpipe.h.
QgsBrightnessContrastFilter * QgsRasterPipe::brightnessFilter | ( | ) | const |
Returns the brightness filter interface, or nullptr
if no brightness filter is present in the pipe.
Definition at line 292 of file qgsrasterpipe.cpp.
bool QgsRasterPipe::canSetOn | ( | int | idx, |
bool | on | ||
) |
Returns true
if the interface at the specified index may be switched on or off.
Definition at line 351 of file qgsrasterpipe.cpp.
|
inline |
Returns a reference to the pipe's property collection, used for data defined overrides.
Definition at line 250 of file qgsrasterpipe.h.
|
inline |
Returns a reference to the pipe's property collection, used for data defined overrides.
Definition at line 259 of file qgsrasterpipe.h.
void QgsRasterPipe::evaluateDataDefinedProperties | ( | QgsExpressionContext & | context | ) |
Evaluates any data defined properties set on the pipe, applying their results to the corresponding interfaces in place.
Definition at line 421 of file qgsrasterpipe.cpp.
QgsHueSaturationFilter * QgsRasterPipe::hueSaturationFilter | ( | ) | const |
Returns the hue/saturation interface, or nullptr
if no hue/saturation filter is present in the pipe.
Definition at line 297 of file qgsrasterpipe.cpp.
bool QgsRasterPipe::insert | ( | int | idx, |
QgsRasterInterface * | interface | ||
) |
Attempts to insert interface at specified index and connect if connection would fail, the interface is not inserted and false
is returned.
Definition at line 97 of file qgsrasterpipe.cpp.
|
inline |
Returns last interface in the pipe.
Definition at line 175 of file qgsrasterpipe.h.
void QgsRasterPipe::moveToThread | ( | QThread * | thread | ) |
Moves the pipe to another thread.
This effects all QObject derived interfaces in the pipe, and follows the same behavior as QObject::moveToThread. Specifically, it is permitted to PUSH the pipe from the current thread to another thread, but NOT to PULL a pipe from another thread over to the current thread. Pulling is only supported by first pushsing the pipe from its current thread to a nullptr
thread, and then later pulling to the current thread. See QObject documentation for more details.
Definition at line 66 of file qgsrasterpipe.cpp.
QgsRasterNuller * QgsRasterPipe::nuller | ( | ) | const |
Returns the raster nuller interface, or nullptr
if no raster nuller is present in the pipe.
Definition at line 307 of file qgsrasterpipe.cpp.
|
delete |
QgsRasterProjector * QgsRasterPipe::projector | ( | ) | const |
Returns the projector interface, or nullptr
if no projector is present in the pipe.
Definition at line 302 of file qgsrasterpipe.cpp.
|
static |
Returns the definitions for data defined properties available for use in raster pipes.
Definition at line 454 of file qgsrasterpipe.cpp.
QgsRasterDataProvider * QgsRasterPipe::provider | ( | ) | const |
Returns the data provider interface, or nullptr
if no data provider is present in the pipe.
Definition at line 277 of file qgsrasterpipe.cpp.
bool QgsRasterPipe::remove | ( | int | idx | ) |
Removes and deletes the interface at given index (if possible).
Returns true
if the interface was successfully removed.
Definition at line 312 of file qgsrasterpipe.cpp.
bool QgsRasterPipe::remove | ( | QgsRasterInterface * | interface | ) |
Removes and deletes interface from pipe (if possible).
Returns true
if the interface was successfully removed.
Definition at line 344 of file qgsrasterpipe.cpp.
QgsRasterRenderer * QgsRasterPipe::renderer | ( | ) | const |
Returns the raster renderer interface, or nullptr
if no raster renderer is present in the pipe.
Definition at line 282 of file qgsrasterpipe.cpp.
bool QgsRasterPipe::replace | ( | int | idx, |
QgsRasterInterface * | interface | ||
) |
Attempts to replace the interface at specified index and reconnect the pipe.
If the connection would fail, the interface is not inserted and false
is returned.
Definition at line 127 of file qgsrasterpipe.cpp.
QgsRasterResampleFilter * QgsRasterPipe::resampleFilter | ( | ) | const |
Returns the resample filter interface, or nullptr
if no resample filter is present in the pipe.
Definition at line 287 of file qgsrasterpipe.cpp.
|
inline |
Returns which stage of the pipe should apply resampling.
Definition at line 243 of file qgsrasterpipe.h.
bool QgsRasterPipe::set | ( | QgsRasterInterface * | interface | ) |
Inserts a new known interface in default place or replace interface of the same role if it already exists.
Known interfaces are:
(and their subclasses).
For other interfaces the position of the interface in the pipe must be explicitly specified using the insert() method.
Definition at line 205 of file qgsrasterpipe.cpp.
|
inline |
Sets the pipe's property collection, used for data defined overrides.
Any existing properties will be discarded.
Definition at line 270 of file qgsrasterpipe.h.
bool QgsRasterPipe::setOn | ( | int | idx, |
bool | on | ||
) |
Set whether the interface at the specified index is enabled.
Returns true
on success.
Definition at line 373 of file qgsrasterpipe.cpp.
void QgsRasterPipe::setResamplingStage | ( | Qgis::RasterResamplingStage | stage | ) |
Sets which stage of the pipe should apply resampling.
Provider resampling is only supported if provider sets ProviderHintCanPerformProviderResampling in providerCapabilities().
Definition at line 400 of file qgsrasterpipe.cpp.
|
inline |
Returns the size of the pipe (the number of interfaces contained in the pipe).
Definition at line 165 of file qgsrasterpipe.h.