QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsvaliditycheckregistry.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsvaliditycheckregistry.h
3 --------------------------
4 begin : November 2018
5 copyright : (C) 2018 by Nyall Dawson
6 email : nyall dot dawson 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 QGSVALIDITYCHECKREGISTRY_H
16#define QGSVALIDITYCHECKREGISTRY_H
17
18#include "qgis_core.h"
19#include "qgis_sip.h"
21#include <QList>
22#include <memory>
23#include <vector>
24
36class CORE_EXPORT QgsValidityCheckRegistry
37{
38
39 public:
40
42
44
49
53 QList<const QgsAbstractValidityCheck *> checks() const;
54
58 QList<const QgsAbstractValidityCheck *> checks( int type ) const;
59
64 void addCheck( QgsAbstractValidityCheck *check SIP_TRANSFER );
65
70 void removeCheck( QgsAbstractValidityCheck *check );
71
86 QList< QgsValidityCheckResult > runChecks( int type, const QgsValidityCheckContext *context, QgsFeedback *feedback ) const;
87
88 private:
89
90#ifdef SIP_RUN
92#endif
93
97 std::vector<std::unique_ptr< QgsAbstractValidityCheck > > createChecks( int type ) const SIP_FACTORY;
98
100 QList< QgsAbstractValidityCheck * > mChecks;
101
102};
103
104#endif // QGSVALIDITYCHECKREGISTRY_H
Abstract base class for individual validity checks.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition: qgsfeedback.h:44
Base class for validity check contexts.
This class keeps a list of QgsAbstractValidityCheck checks which can be used when performing validity...
QgsValidityCheckRegistry(const QgsValidityCheckRegistry &rh)=delete
QgsValidityCheckRegistry cannot be copied.
QgsValidityCheckRegistry & operator=(const QgsValidityCheckRegistry &rh)=delete
QgsValidityCheckRegistry cannot be copied.
#define SIP_TRANSFER
Definition: qgis_sip.h:36
#define SIP_FACTORY
Definition: qgis_sip.h:76