diff options
Diffstat (limited to 'internal/xmpmeta/xmp_data.cc')
-rw-r--r-- | internal/xmpmeta/xmp_data.cc | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/internal/xmpmeta/xmp_data.cc b/internal/xmpmeta/xmp_data.cc new file mode 100644 index 0000000..046052b --- /dev/null +++ b/internal/xmpmeta/xmp_data.cc @@ -0,0 +1,28 @@ +#include "xmpmeta/xmp_data.h" + +namespace photos_editing_formats { + +XmpData::XmpData() : xmp_(nullptr), xmp_extended_(nullptr) {} + +XmpData::~XmpData() { Reset(); } + +void XmpData::Reset() { + if (xmp_) { + xmlFreeDoc(xmp_); + xmp_ = nullptr; + } + if (xmp_extended_) { + xmlFreeDoc(xmp_extended_); + xmp_extended_ = nullptr; + } +} + +const xmlDocPtr XmpData::StandardSection() const { return xmp_; } + +xmlDocPtr* XmpData::MutableStandardSection() { return &xmp_; } + +const xmlDocPtr XmpData::ExtendedSection() const { return xmp_extended_; } + +xmlDocPtr* XmpData::MutableExtendedSection() { return &xmp_extended_; } + +} // namespace photos_editing_formats |