summaryrefslogtreecommitdiff
path: root/internal/xmpmeta/xmp_data.cc
blob: 046052b0ad58a671a3a42fab22032a46bfe1b915 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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