Skip to content
Unverified Commit cb121663 authored by Adam Paquette's avatar Adam Paquette Committed by GitHub
Browse files

GTiff Reading and Writing (#5618)



* replaced custom min/max with std::max/std::min

* left a gdal reference in

* Initial changes for a GdalIoHandler and creating an external DN cube

* added write + tests

* Initial move away two flags on the cube to using the LabelAttachment to define label state

* Addressed PR feedback

* Added external gdal support to cube

* Changed Tiff type to GTiff

* Renamed imageIoHandler to ImageIoHandler

* Added pixeltype to gdaliohandler constructor

* Added gdal pixel type translation and missing special pixels for various ISIS pixel types

* Small fixes to get things working

* Removed prints and added -1s back to read and write

* Changed gdal reads to use the raw buffer and correctly apply the ISIS pixel type

* Added initial pixel conversions and tests for writing

* Final tests for pixel type reading and writing

* Added tiff fixtures

* Transfered pixel type to gdal handler in cube

* Silenced unsued return warning

* Reused file handler in TiffFixture

* added virtual band checks

* Added default compression for tiffs

* Removed max again

* Opened up the environment to get a work env

* Fixed boolean comparisons against enum

* Initial stab at fixing the buffer copy

* Adds msk file writting for tiffs

* Added boundary check for buffers

* Added fixture function to write a M x N x O tiff

* Reverted commented out Index access function Exceptions

* Default tiff DNs to the noDataValue

* Cleaned up buffer boundary handling for reads and writes

* Added gdal io tests for reading outside of the image

* Updated shadow functional tests

* Properly handled pointers for mac and linux

* Removed commented out line

* Addressed OS dependent shadow failures

* Removed read contraints on ecubes

* Moved CubeIoHandler getters into public space

* Handled gdal warnings in GdalIoHandler and its tests

* Fixed compiler warnings in TiffFixture

* Reverted data cube truncation

* gdal json pvl parsing

* Update Pvl.cpp

* Fixed gdal json to pvl parsing

* Updated cube tests with tiff read/write changes

* Moved Tiff creation into a function on Cube and made Tiff Cube metadata read an explicit constructor

* Added PVL to Json export for GDAL metadata

* Fixed PVLKeyword toJson writing arrays

* Added string conversion for GTiff

* Extracted PVL read json lambda into static function

* Enforced Cube carry/manage GdalDataset object and made GdalIoHandler and Blob use it

* Fixed tiff fixtures alpha bands

* Seperated ISD spice contructor and init function from default init function

* Fixed blob reading and writing from hex

* Fixed error message when reading a gdal blob

* Fixed setting dataset ownership correctly on file constructor

* Fixed closing the dataset if we don't find the USGS metadata

* Fixed cube test expected label size

* Changed cube blob reading apps to access the blobs via the cube

* Small fixes

* Fixed issue with cam2map requesting buffers completely outside of the tiff

* Applied cube label reading to catlab

* Added blob read exception for GdalRead

* Exposed IException vector length

* Handled GDALs nodatavalue

* Moved GDAL pvl label construction into the Cube

* Commented out mask creation

* Forced label reading to come from the cube in ctxcal

* Fixed data ownership when reading metadata from GTiff

* Finalized mapping group generation from spatial reference

* Fix reading URLs in qview and blob reading

* Added a scaling factor to the ISIS buffer classes

* Updated data iohandlers and viewportbuffer to handle scaled buffers

* Finished cube open/create methods to handle GTiffs and Cubes

* Exposed scale on bufferfill action

* Updated tests when trying to open a bogus cube

* Allowed qview file dialog to open cloud volumes

* Minor buffer indexing fix

* Updated GTiff related tests

* Added GeoTiff tests

* Converted blob tests to Gtests

* Updated Cube to handle detached and external correctly for GTiff format

* Allow apps to handle other PVL files and fix failing blob tests

* Updated cube manager tests truth

* Fixed hexstream conversions on linux

* Fix unsigned int comparison in GdalIoHandler

* Made TestCubeAttachLineScanTableFromIsd use the temp directory fixture

* Actually fix hex reading and writing

* Set Predictor for GeoTIFFs in ISIS

* Removed unused variables causing compiler warnings

* Set GDAL format from driver

* Removed getting driver name, caused errors on AWS Linux

* Updated changelog

---------

Co-authored-by: default avatarKelvin <krodriguez@usgs.gov>
parent c94c2e8c
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment