QGIS API Documentation 3.99.0-Master (2fe06baccd8)
Loading...
Searching...
No Matches
qgsfields_p.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsfields_p - %{Cpp:License:ClassName}
3
4 ---------------------
5 begin : 22.9.2016
6 copyright : (C) 2016 by Matthias Kuhn
8 ***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16#ifndef QGSFIELDS_P_H
17#define QGSFIELDS_P_H
18
19
21
22//
23// W A R N I N G
24// -------------
25//
26// This file is not part of the QGIS API. It exists purely as an
27// implementation detail. This header file may change from version to
28// version without notice, or even be removed.
29//
30
31#include "qgis_core.h"
32#include "qgsfields.h"
33
34#include <QSharedData>
35
36/***************************************************************************
37 * This class is considered CRITICAL and any change MUST be accompanied with
38 * full unit tests in testqgsfields.cpp.
39 * See details in QEP #17
40 ****************************************************************************/
41
42class QgsFieldsPrivate : public QSharedData
43{
44 public:
45
46 QgsFieldsPrivate()
47 {
48 }
49
50 QgsFieldsPrivate( const QgsFieldsPrivate &other )
51 : QSharedData( other )
52 , fields( other.fields )
53 , nameToIndex( other.nameToIndex )
54 {
55 }
56
57 ~QgsFieldsPrivate() {}
58
60 QVector<QgsFields::Field> fields;
61
63 QHash<QString, int> nameToIndex;
64
65 private:
66 QgsFieldsPrivate &operator= ( const QgsFieldsPrivate & ) = delete;
67};
68
70
71#endif // QGSFIELDS_P_H