MCPcopy Create free account
hub / github.com/OSGeo/gdal / LoadMetadata

Method LoadMetadata

gcore/mdreader/reader_alos.cpp:192–292  ·  view source on GitHub ↗

* LoadMetadata() */

Source from the content-addressed store, hash-verified

190 * LoadMetadata()
191 */
192void GDALMDReaderALOS::LoadMetadata()
193{
194 if (m_bIsMetadataLoad)
195 return;
196
197 if (!m_osIMDSourceFilename.empty())
198 {
199 m_papszIMDMD = CSLLoad(m_osIMDSourceFilename);
200 }
201
202 if (!m_osHDRSourceFilename.empty())
203 {
204 if (nullptr == m_papszIMDMD)
205 {
206 m_papszIMDMD = CSLLoad(m_osHDRSourceFilename);
207 }
208 else
209 {
210 char **papszHDR = CSLLoad(m_osHDRSourceFilename);
211 m_papszIMDMD = CSLMerge(m_papszIMDMD, papszHDR);
212 CSLDestroy(papszHDR);
213 }
214 }
215
216 m_papszRPCMD = LoadRPCTxtFile();
217
218 m_papszDEFAULTMD =
219 CSLAddNameValue(m_papszDEFAULTMD, MD_NAME_MDTYPE, "ALOS");
220
221 m_bIsMetadataLoad = true;
222
223 const char *pszSatId1 = CSLFetchNameValue(m_papszIMDMD, "Lbi_Satellite");
224 const char *pszSatId2 = CSLFetchNameValue(m_papszIMDMD, "Lbi_Sensor");
225 if (nullptr != pszSatId1 && nullptr != pszSatId2)
226 {
227 m_papszIMAGERYMD = CSLAddNameValue(
228 m_papszIMAGERYMD, MD_NAME_SATELLITE,
229 CPLSPrintf("%s %s", CPLStripQuotes(pszSatId1).c_str(),
230 CPLStripQuotes(pszSatId2).c_str()));
231 }
232 else if (nullptr != pszSatId1 && nullptr == pszSatId2)
233 {
234 m_papszIMAGERYMD = CSLAddNameValue(m_papszIMAGERYMD, MD_NAME_SATELLITE,
235 CPLStripQuotes(pszSatId1));
236 }
237 else if (nullptr == pszSatId1 && nullptr != pszSatId2)
238 {
239 m_papszIMAGERYMD = CSLAddNameValue(m_papszIMAGERYMD, MD_NAME_SATELLITE,
240 CPLStripQuotes(pszSatId2));
241 }
242
243 const char *pszCloudCover =
244 CSLFetchNameValue(m_papszIMDMD, "Img_CloudQuantityOfAllImage");
245 if (nullptr != pszCloudCover)
246 {
247 int nCC = atoi(pszCloudCover);
248 if (nCC >= 99)
249 {

Callers

nothing calls this directly

Calls 9

CSLLoadFunction · 0.85
CSLMergeFunction · 0.85
CSLAddNameValueFunction · 0.85
CSLFetchNameValueFunction · 0.85
CPLSPrintfFunction · 0.85
CPLStripQuotesFunction · 0.85
CPLUnixTimeToYMDHMSFunction · 0.85
emptyMethod · 0.45
c_strMethod · 0.45

Tested by

no test coverage detected