Class import_export::RasterImporter¶
-
class
RasterImporter
¶ Public Types
-
using
NamesAndSQLTypes
= std::vector<std::pair<std::string, SQLTypes>>¶
-
using
RawPixels
= std::vector<std::byte>¶
-
using
NullValue
= std::pair<double, bool>¶
-
using
Coords
= std::vector<std::tuple<double, double, float>>¶
Public Functions
-
RasterImporter
()¶
-
~RasterImporter
()¶
-
void
detect
(const std::string &file_name, const std::string &specified_band_names, const std::string &specified_band_dimensions, const PointType point_type, const PointTransform point_transform, const bool point_compute_angle, const bool throw_on_error, const MetadataColumnInfos &metadata_column_infos)¶
-
void
import
(const uint32_t max_threads)¶
-
const uint32_t
getNumBands
() const¶
-
const RasterImporter::PointTransform
getPointTransform
() const¶
-
const RasterImporter::NamesAndSQLTypes
getPointNamesAndSQLTypes
() const¶
-
const RasterImporter::NamesAndSQLTypes
getBandNamesAndSQLTypes
() const¶
-
const int
getBandsWidth
() const¶
-
const int
getBandsHeight
() const¶
-
const RasterImporter::NullValue
getBandNullValue
(const int band_idx) const¶
-
const RasterImporter::Coords
getProjectedPixelCoords
(const uint32_t thread_idx, const int y) const¶
Private Functions
-
void
getRawBandNamesForFormat
(const Geospatial::GDAL::DataSourceUqPtr &datasource)¶
-
void
initializeFiltering
(const std::string &specified_band_names, const std::string &specified_band_dimensions, const MetadataColumnInfos &metadata_column_infos)¶
-
bool
shouldImportBandWithName
(const std::string &name)¶
-
bool
shouldImportBandWithDimensions
(const int width, const int height)¶
-
std::string
getBandName
(const uint32_t datasource_idx, const int band_idx)¶
-
void
checkSpecifiedBandNamesFound
() const¶
Private Members
-
std::vector<std::string>
datasource_names_
¶
-
std::vector<std::vector<std::string>>
raw_band_names_
¶
-
std::map<std::string, bool>
specified_band_names_map_
¶
-
std::map<std::string, int>
column_name_repeats_map_
¶
-
std::vector<ImportBandInfo>
import_band_infos_
¶
-
std::array<double, 6>
affine_transform_matrix_
¶
-
std::vector<std::vector<Geospatial::GDAL::DataSourceUqPtr>>
datasource_handles_
¶
-
int
specified_band_width_
= {-1}¶
-
int
specified_band_height_
= {-1}¶
-
int
bands_width_
= {-1}¶
-
int
bands_height_
= {-1}¶
-
PointTransform
point_transform_
= {PointTransform::kNone}¶
-
std::vector<Geospatial::GDAL::CoordinateTransformationUqPtr>
coordinate_transformations_
¶
-
std::vector<std::unique_ptr<GCPTransformer>>
gcp_transformers_
¶
-
bool
point_compute_angle_
= {false}¶
-
struct
ImportBandInfo
¶
-
using