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:
Kelvin <krodriguez@usgs.gov>
Loading
Please register or sign in to comment