InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IMetaData Class Referenceabstract

#include <IMetaData.h>

Inheritance diagram for IMetaData:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_IMETADATA }
 

Public Member Functions

virtual IMetaDataCloneForRendition (const PMString &renditionClass, const metadata::MIMEType &format) const =0
 
virtual IMetaDataClone (IDataBase *db=nil, const ClassID &classID=kMetaDataBoss) const =0
 
virtual void Copy (const IMetaData *srcMetaData)=0
 
virtual void LinkedResourceAdded (ILink *iLink, bool16 useFileURL=kTrue)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

Interface for replicating MetaData

Member Function Documentation

virtual IMetaData* IMetaData::Clone (IDataBasedb = nil,
const ClassIDclassID = kMetaDataBoss 
) const
pure virtual

Clones new object of classID and returns IID_IMETADATA interface on newly created object. If db is non-nil, new object is created persistently. Otherwise it is non-persistent. Returns nil if the object cannot be created or IID_IMETADATA interface does not exist.

Parameters
dbIN DataBase
classIDIN Boss class
Returns
IMetaData* IID_IMETADATA interface on newly created object.
See Also
IDataBase
virtual IMetaData* IMetaData::CloneForRendition (const PMStringrenditionClass,
const metadata::MIMETypeformat 
) const
pure virtual

Creates a clone metadata object for a rendition. Clears the 'xapMM:Manifest' property of the cloned object. The 'xapMM:RenditionClass' property of the cloned object is set to renditionClass. And the 'xap:Format' property of the cloned object is set to format.

Parameters
renditionClassIN The rendition class name.
formatIN The resource format.
Returns
IMetaData* IID_IMETADATA interface on newly cloned object.
virtual void IMetaData::Copy (const IMetaDatasrcMetaData)
pure virtual

Fills this metadata boss with metadata from 'srcMetaData'

Parameters
srcMetaDataIN The source MetaData
virtual void IMetaData::LinkedResourceAdded (ILinkiLink,
bool16 useFileURL = kTrue 
)
pure virtual

Adds a reference of the link to xmpMM:Manifest The reference of the link in the Manifest is obtained through asset management system or the link's XMP data. If neither of them are avilable and useFileURL is kTrue, the link's file location is used as the reference.

Parameters
iLinkIN Pointer to the ILink instance that can be used to obtain the metadata.
useFileURLIN whether to use link's file location as the reference, if the reference of the link is not obtained through both asset management system and the link's XMP data
See Also
ILink