libimgdoc2
Loading...
Searching...
No Matches
Public Member Functions | List of all members
imgdoc2::IDocQuery3d Class Referenceabstract

This interface is providing read-only access to the 3d-document. More...

#include <IDocQuery3d.h>

Inheritance diagram for imgdoc2::IDocQuery3d:
imgdoc2::IDocRead3d

Public Member Functions

virtual void ReadBrickInfo (imgdoc2::dbIndex idx, imgdoc2::ITileCoordinateMutate *coordinate, imgdoc2::LogicalPositionInfo3D *info, imgdoc2::BrickBlobInfo *brick_blob_info)=0
 
virtual void Query (const imgdoc2::IDimCoordinateQueryClause *clause, const imgdoc2::ITileInfoQueryClause *tileInfoQuery, const std::function< bool(imgdoc2::dbIndex)> &func)=0
 
virtual void GetTilesIntersectingCuboid (const imgdoc2::CuboidD &cuboid, const imgdoc2::IDimCoordinateQueryClause *coordinate_clause, const imgdoc2::ITileInfoQueryClause *tileinfo_clause, const std::function< bool(imgdoc2::dbIndex)> &func)=0
 
virtual void GetTilesIntersectingPlane (const imgdoc2::Plane_NormalAndDistD &plane, const imgdoc2::IDimCoordinateQueryClause *coordinate_clause, const imgdoc2::ITileInfoQueryClause *tileinfo_clause, const std::function< bool(imgdoc2::dbIndex)> &func)=0
 
virtual void ReadBrickData (imgdoc2::dbIndex idx, imgdoc2::IBlobOutput *data)=0
 
 IDocQuery3d (const IDocQuery3d &)=delete
 
IDocQuery3doperator= (const IDocQuery3d &)=delete
 
 IDocQuery3d (IDocQuery3d &&)=delete
 
IDocQuery3doperator= (IDocQuery3d &&)=delete
 

Detailed Description

This interface is providing read-only access to the 3d-document.

Member Function Documentation

◆ GetTilesIntersectingCuboid()

virtual void imgdoc2::IDocQuery3d::GetTilesIntersectingCuboid ( const imgdoc2::CuboidD cuboid,
const imgdoc2::IDimCoordinateQueryClause coordinate_clause,
const imgdoc2::ITileInfoQueryClause tileinfo_clause,
const std::function< bool(imgdoc2::dbIndex)> &  func 
)
pure virtual

Gets tiles intersecting the specified cuboid (and satisfying the other criteria).

Parameters
cuboidThe cuboid.
coordinate_clauseThe coordinate clause.
tileinfo_clauseThe tileinfo clause.
funcA functor which will be called, passing in the index of tiles matching the query. If the functor returns false, the enumeration is canceled, and no more calls to the functor will occur anymore.

◆ GetTilesIntersectingPlane()

virtual void imgdoc2::IDocQuery3d::GetTilesIntersectingPlane ( const imgdoc2::Plane_NormalAndDistD plane,
const imgdoc2::IDimCoordinateQueryClause coordinate_clause,
const imgdoc2::ITileInfoQueryClause tileinfo_clause,
const std::function< bool(imgdoc2::dbIndex)> &  func 
)
pure virtual

Gets tiles intersecting with the specified plane (and satisfying the other criteria).

Parameters
planeThe plane.
coordinate_clauseThe coordinate clause.
tileinfo_clauseThe tileinfo clause.
funcA functor which will be called, passing in the index of tiles matching the query. If the functor returns false, the enumeration is canceled, and no more calls to the functor will occur any more.

◆ Query()

virtual void imgdoc2::IDocQuery3d::Query ( const imgdoc2::IDimCoordinateQueryClause clause,
const imgdoc2::ITileInfoQueryClause tileInfoQuery,
const std::function< bool(imgdoc2::dbIndex)> &  func 
)
pure virtual

Query the tiles table. The two query clauses are used to filter the tiles. The first clause is used to filter the tiles by their coordinates, the second by other "per tile data". The functor is called for each tile which matches the query. If the functor returns false, the enumeration is canceled, and no more calls to the functor will occur anymore. The two query clauses are logically ANDed together.

Parameters
clauseThe query clause (dealing with dimension indexes).
tileInfoQueryThe query clause (dealing with other "per tile data").
funcA functor which will be called, passing in the index of tiles matching the query. If the functor returns false, the enumeration is canceled, and no more calls to the functor will occur anymore.

◆ ReadBrickInfo()

virtual void imgdoc2::IDocQuery3d::ReadBrickInfo ( imgdoc2::dbIndex  idx,
imgdoc2::ITileCoordinateMutate coordinate,
imgdoc2::LogicalPositionInfo3D info,
imgdoc2::BrickBlobInfo brick_blob_info 
)
pure virtual

Reads tile information for the specified brick. There are three pieces of information which can be retrieved by this method, namely the tile-coordinate, the logical position and the tile-blob-info. If the respective pointers are null, the information will not be retrieved. If the row for the specified primary key does not exist, an exception of type "imgdoc2::non_existing_tile_exception" will be thrown.

Parameters
idxThe primary key of the tile.
[out]coordinateIf non-null and the operation is successful, the tile-coordinate will be put here.
[out]infoIf non-null and the operation is successful, the logical position will be put here.
[out]brick_blob_infoIf non-null and the operation is successful, the brick-blob-info will be put here.

The documentation for this class was generated from the following file: