12 #include <gdal_priv.h>
34 double adfGeoTransform[6];
37 CPLString pszGCPProjection;
40 OGRSpatialReference oSRS;
44 H5::DataType nativeType;
45 H5::DataType actualType;
51 CPLErr populateFromDataset();
55 IH5Dataset(
const hid_t &inputds, GDALAccess eAccess);
60 #if GDAL_VERSION_MAJOR == 2
61 virtual const char *GetProjectionRef()
override;
62 virtual CPLErr SetProjection(
const char * )
override;
63 virtual const char *GetGCPProjection()
override;
64 virtual CPLErr SetGCPs(
int nGCPCount,
const GDAL_GCP *pasGCPList,
65 const char *pszGCPProjection )
override;
66 #elif GDAL_VERSION_MAJOR == 3
68 const char *_GetProjectionRef()
override;
69 const OGRSpatialReference* GetSpatialRef()
const override {
70 return GetSpatialRefFromOldGetProjectionRef();
73 CPLErr _SetProjection(
const char * )
override;
74 CPLErr SetSpatialRef(
const OGRSpatialReference* poSRS)
override {
75 return OldSetProjectionFromSetSpatialRef(poSRS);
78 const char* _GetGCPProjection()
override;
79 const OGRSpatialReference* GetGCPSpatialRef()
const override {
80 return GetGCPSpatialRefFromOldGetGCPProjection();
83 CPLErr _SetGCPs(
int nGCPCount,
const GDAL_GCP *pasGCPList,
const char *pszGCPProjection)
override;
84 using GDALDataset::SetGCPs;
85 CPLErr SetGCPs(
int nGCPCount,
const GDAL_GCP *pasGCPList,
86 const OGRSpatialReference* poSRS )
override {
87 return OldSetGCPsFromNew(nGCPCount, pasGCPList, poSRS);
91 virtual int GetGCPCount()
override;
92 virtual const GDAL_GCP *GetGCPs()
override;
94 void *GetInternalHandle (
const char *)
override;
96 virtual CPLErr GetGeoTransform(
double *padfTransform )
override;
97 virtual CPLErr SetGeoTransform(
double * )
override;
98 static GDALDataset *Open(GDALOpenInfo *info);
99 static int Identify(GDALOpenInfo *info);
117 GDALDataType eTypeIn);
121 virtual CPLErr IReadBlock(
int,
int,
void * )
override;
122 virtual CPLErr IWriteBlock(
int,
int,
void * )
override;
123 virtual double GetNoDataValue(
int *pbSuccess =
nullptr )
override;
124 virtual CPLErr SetNoDataValue(
double )
override;
void GDALRegister_IH5()
Function to register driver with GDAL.
Definition: IH5Dataset.cpp:784
IH5 interface to GDAL Dataset to allow read/write to HDF5 datasets from ISCE.
Definition: IH5Dataset.h:26
Raster band of an IH5 Dataset derived from GDALPamRasterBand.
Definition: IH5Dataset.h:108
IH5Dataset(const hid_t &inputds, GDALAccess eAccess)
Empty constructor.
Definition: IH5Dataset.cpp:290
Our derived dataset structure that includes utility functions.
Definition: IH5.h:44
virtual ~IH5Dataset()
Destructor.
Definition: IH5Dataset.cpp:347