1*a62be085SSadaf Ebrahimi #include "xmpmeta/xmp_data.h" 2*a62be085SSadaf Ebrahimi 3*a62be085SSadaf Ebrahimi namespace dynamic_depth { 4*a62be085SSadaf Ebrahimi namespace xmpmeta { 5*a62be085SSadaf Ebrahimi XmpData()6*a62be085SSadaf EbrahimiXmpData::XmpData() : xmp_(nullptr), xmp_extended_(nullptr) {} 7*a62be085SSadaf Ebrahimi ~XmpData()8*a62be085SSadaf EbrahimiXmpData::~XmpData() { Reset(); } 9*a62be085SSadaf Ebrahimi Reset()10*a62be085SSadaf Ebrahimivoid XmpData::Reset() { 11*a62be085SSadaf Ebrahimi if (xmp_) { 12*a62be085SSadaf Ebrahimi xmlFreeDoc(xmp_); 13*a62be085SSadaf Ebrahimi xmp_ = nullptr; 14*a62be085SSadaf Ebrahimi } 15*a62be085SSadaf Ebrahimi if (xmp_extended_) { 16*a62be085SSadaf Ebrahimi xmlFreeDoc(xmp_extended_); 17*a62be085SSadaf Ebrahimi xmp_extended_ = nullptr; 18*a62be085SSadaf Ebrahimi } 19*a62be085SSadaf Ebrahimi } 20*a62be085SSadaf Ebrahimi StandardSection() const21*a62be085SSadaf Ebrahimiconst xmlDocPtr XmpData::StandardSection() const { return xmp_; } 22*a62be085SSadaf Ebrahimi MutableStandardSection()23*a62be085SSadaf EbrahimixmlDocPtr* XmpData::MutableStandardSection() { return &xmp_; } 24*a62be085SSadaf Ebrahimi ExtendedSection() const25*a62be085SSadaf Ebrahimiconst xmlDocPtr XmpData::ExtendedSection() const { return xmp_extended_; } 26*a62be085SSadaf Ebrahimi MutableExtendedSection()27*a62be085SSadaf EbrahimixmlDocPtr* XmpData::MutableExtendedSection() { return &xmp_extended_; } 28*a62be085SSadaf Ebrahimi 29*a62be085SSadaf Ebrahimi } // namespace xmpmeta 30*a62be085SSadaf Ebrahimi } // namespace dynamic_depth 31