diff --git a/gdal/frmts/raw/envidataset.cpp b/gdal/frmts/raw/envidataset.cpp index c498843..464d759 100644 --- a/gdal/frmts/raw/envidataset.cpp +++ b/gdal/frmts/raw/envidataset.cpp @@ -1995,6 +1995,10 @@ GDALDataset *ENVIDataset::Open( GDALOpenInfo * poOpenInfo ) EQUAL(pszWLUnits,"Index") ) pszWLUnits=0; } + if (pszWLUnits) { + /* set wavelength units to dataset metadata */ + poDS->SetMetadataItem("wavelength_units", pszWLUnits); + } } for( i = 0; i < nBands; i++ ) @@ -2032,6 +2036,19 @@ GDALDataset *ENVIDataset::Open( GDALOpenInfo * poOpenInfo ) /* Metadata field named Band_1, etc. needed for ArcGIS integration */ osBandId = CPLSPrintf("Band_%i", i+1); poDS->SetMetadataItem(osBandId, osBandName); + + /* Set wavelength metadata to band */ + if (papszWL) { + poDS->GetRasterBand(i+1)->SetMetadataItem( + "wavelength", papszWL[i]); + } + + if (pszWLUnits) { + poDS->GetRasterBand(i+1)->SetMetadataItem( + "wavelength_units", pszWLUnits); + } + + } CSLDestroy( papszWL ); CSLDestroy( papszBandNames );