24 #ifndef __IMetaDataAccess_h__ 25 #define __IMetaDataAccess_h__ 28 #include "IPMUnknown.h" 31 #include "MetaDataTypes.h" 34 #include "MetaDataID.h" 60 } MetaDataStructContainerType;
73 enum { kDefaultIID = IID_IMETADATAACCESS };
112 virtual void Package(
const bool16& package = kTrue) = 0;
142 virtual void Expandable(
const bool16& expandable = kTrue) = 0;
171 const bool16& allowInPlaceModification = kTrue,
172 const bool16& expandable = kTrue,
173 const bool16& packetDisabled = kFalse)
const = 0;
182 virtual bool16
AppendFromStream(
IPMStream* stream,
const bool16 replaceOld,
const bool16 treatAllAsExternal = kFalse) = 0;
263 const PMString& value,
const MetaDataStructContainerType type,
535 virtual void NewXMP() = 0;
538 virtual void PrepareForSave(bool16 bIncludePantry = kFalse) = 0;
541 virtual void NoteChange(
PMString const &changeStr) = 0;
544 virtual void NoteMetaDataChanged() = 0;
547 virtual void OpenXMP() = 0;
550 virtual void BranchXMP() = 0;
553 virtual bool16 XMPDocOpsReady() = 0;
556 virtual void AddIngredientXMP(
557 std::string* filepath,
565 const PMString& in_placedXResolution,
566 const PMString& in_placedYResolution,
567 const PMString& in_placedResolutionUnit) = 0;
570 virtual void RemoveIngredientXMP(
int nth) = 0;
573 virtual void ClearIngredientsXMP() = 0;
586 const PMString& fieldNs,
const PMString& fieldName,
const std::string& value,
633 #endif // __IMetaDataAccess_h__