18 #ifndef QGSEPTPOINTCLOUDINDEX_H 
   19 #define QGSEPTPOINTCLOUDINDEX_H 
   24 #include <QStringList> 
   44     explicit QgsEptPointCloudIndex();
 
   45     ~QgsEptPointCloudIndex();
 
   47     void load( 
const QString &fileName ) 
override;
 
   55     QVariantList 
metadataClasses( 
const QString &attribute ) 
const override;
 
   63     bool loadSchema( 
const QByteArray &dataJson );
 
   64     void loadManifest( 
const QByteArray &manifestJson );
 
   65     bool loadSchema( QFile &f );
 
   68     bool mIsValid = 
false;
 
   73     qint64 mPointCount = 0;
 
   75     struct AttributeStatistics
 
   80       double mean = std::numeric_limits< double >::quiet_NaN();
 
   81       double stDev = std::numeric_limits< double >::quiet_NaN();
 
   82       double variance = std::numeric_limits< double >::quiet_NaN();
 
   85     QMap< QString, AttributeStatistics > mMetadataStats;
 
   87     QMap< QString, QMap< int, int > > mAttributeClasses;
 
   88     QVariantMap mOriginalMetadata;
 
Represents a indexed point cloud node in octree.
This class represents a coordinate reference system (CRS).
Base class for handling loading QgsPointCloudBlock asynchronously.
Base class for storing raw data from point cloud nodes.
Represents a indexed point clouds data in octree.
AccessType
The access type of the data, local is for local files and remote for remote files (over HTTP)
virtual qint64 pointCount() const =0
Returns the number of points in the point cloud.
virtual QgsPointCloudBlock * nodeData(const IndexedPointCloudNode &n, const QgsPointCloudRequest &request)=0
Returns node data block.
virtual AccessType accessType() const =0
Returns the access type of the data If the access type is Remote, data will be fetched from an HTTP s...
virtual bool isValid() const =0
Returns whether index is loaded and valid.
virtual QgsCoordinateReferenceSystem crs() const =0
Returns the coordinate reference system of the point cloud index.
virtual void load(const QString &fileName)=0
Loads the index from the file.
virtual QVariant metadataClassStatistic(const QString &attribute, const QVariant &value, QgsStatisticalSummary::Statistic statistic) const =0
Returns the statistic statistic of the class value of the attribute attribute.
virtual QVariant metadataStatistic(const QString &attribute, QgsStatisticalSummary::Statistic statistic) const =0
Returns the statistic statistic of attribute.
virtual QgsPointCloudBlockRequest * asyncNodeData(const IndexedPointCloudNode &n, const QgsPointCloudRequest &request)=0
Returns a handle responsible for loading a node data block.
virtual QVariantMap originalMetadata() const =0
Returns the original metadata map.
virtual QVariantList metadataClasses(const QString &attribute) const =0
Returns the classes of attribute.
Point cloud data request.
Statistic
Enumeration of flags that specify statistics to be calculated.