15#ifndef GDALMULTIDOMAINMETADATA_H_INCLUDED
16#define GDALMULTIDOMAINMETADATA_H_INCLUDED
33class CPL_DLL GDALMultiDomainMetadata
36 CPLStringList aosDomainList{};
40 bool operator()(
const char *a,
const char *b)
const
46 std::map<const char *, CPLStringList, Comparator> oMetadata{};
49 GDALMultiDomainMetadata();
52 GDALMultiDomainMetadata(
const GDALMultiDomainMetadata &) =
default;
55 GDALMultiDomainMetadata &
56 operator=(
const GDALMultiDomainMetadata &) =
default;
59 GDALMultiDomainMetadata(GDALMultiDomainMetadata &&) =
default;
62 GDALMultiDomainMetadata &operator=(GDALMultiDomainMetadata &&) =
default;
64 ~GDALMultiDomainMetadata();
66 int XMLInit(
const CPLXMLNode *psMetadata,
int bMerge);
67 CPLXMLNode *Serialize()
const;
71 return aosDomainList.
List();
74 char **GetMetadata(
const char *pszDomain =
"");
76 const char *GetMetadataItem(
const char *pszName,
77 const char *pszDomain =
"");
78 CPLErr SetMetadataItem(
const char *pszName,
const char *pszValue,
79 const char *pszDomain =
"");
char ** List()
Return list.
Definition cpl_string.h:614
CPLErr
Error category.
Definition cpl_error.h:37
Core portability definitions for CPL.
#define STRCASECMP(a, b)
Alias for strcasecmp().
Definition cpl_port.h:534
char ** CSLConstList
Type of a constant null-terminated list of nul terminated strings.
Definition cpl_port.h:1087
Various convenience functions for working with strings and string lists.
Document node structure.
Definition cpl_minixml.h:54