18#ifndef QGSPOINTCLOUDATTRIBUTEMODEL_H
19#define QGSPOINTCLOUDATTRIBUTEMODEL_H
23#include <QAbstractItemModel>
25#include <QSortFilterProxyModel>
45 AttributeNameRole = Qt::UserRole + 1,
91 void setAllowEmptyAttributeName(
bool allowEmpty );
96 QModelIndex indexFromName(
const QString &name );
105 QModelIndex index(
int row,
int column,
const QModelIndex &parent = QModelIndex() )
const override;
106 QModelIndex parent(
const QModelIndex &child )
const override;
107 int rowCount(
const QModelIndex &parent = QModelIndex() )
const override;
108 int columnCount(
const QModelIndex &parent )
const override;
109 QVariant data(
const QModelIndex &index,
int role )
const override;
125 bool mAllowEmpty =
false;
126 QPointer< QgsPointCloudLayer > mLayer;
150 Numeric = Short | Int32 | Float | Double,
151 AllTypes = Numeric | Char,
153 Q_DECLARE_FLAGS( Filters, Filter )
182 Filters mFilters = AllTypes;
186 bool filterAcceptsRow(
int source_row,
const QModelIndex &source_parent )
const override;
187 bool lessThan(
const QModelIndex &left,
const QModelIndex &right )
const override;
Collection of point cloud attributes.
A model for display of available attributes from a point cloud.
QgsPointCloudAttributeCollection attributes() const
Returns the attributes associated with the model.
FieldRoles
Roles utilized by the model.
@ AttributeTypeRole
Attribute type, see QgsPointCloudAttribute::DataType.
@ IsEmptyRole
true if the index corresponds to the empty value
@ AttributeIndexRole
Attribute index if index corresponds to an attribute.
@ AttributeSizeRole
Attribute size.
@ IsNumericRole
true if the index corresponds to a numeric attributre
bool allowEmptyAttributeName() const
Returns true if the model allows the empty attribute ("not set") choice.
A proxy model for filtering available attributes from a point cloud attribute model.
Filters filters() const
Returns the filters controlling displayed attributes.
QgsPointCloudAttributeModel * sourceAttributeModel()
Returns the QgsPointCloudAttributeModel used in this QSortFilterProxyModel.
Filter
Attribute type filters.
Attribute for point cloud data pair of name and size in bytes.
DataType
Systems of unit measurement.
Represents a map layer supporting display of point clouds.
Q_DECLARE_OPERATORS_FOR_FLAGS(QgsField::ConfigurationFlags) CORE_EXPORT QDataStream &operator<<(QDataStream &out
Writes the field to stream out. QGIS version compatibility is not guaranteed.