Mako 7.3.0 API
IDOMMetadata Class Referenceabstract

The IDOMMetadata interface provides access to the metadata attached to the DocumentSequence node. The IDOMMetadata interface is designed to be flexible enough to represent different types of metadata. More...

#include <idommetadata.h>

Inheritance diagram for IDOMMetadata:

Public Types

enum  eType {
  eCoreProperties = 0 , eDocumentInfo , eViewerPreferences , ePageView ,
  ePDFInfo , eMetadataTypeCnt
}
 Metadata types data type. More...
 
enum  eXmpContainerType { eXmpContainer_None = 0 , eXmpContainer_Alt = 1 , eXmpContainer_Bag = 2 , eXmpContainer_Seq = 3 }
 The variant values passed to PValue when storing a CEDLStringVect. More...
 

Public Member Functions

virtual bool getProperty (eType propertyType, const EDLSysString &propertyName, PValue &propertyValue) const =0
 Retrieves the value of a named property. More...
 
virtual bool setProperty (eType propertyType, const EDLSysString &propertyName, const PValue &propertyValue)=0
 Sets value of a property. More...
 
virtual bool removeProperty (eType propertyType, const EDLSysString &propertyName)=0
 Removes a property, if it exists. More...
 
virtual IEDLSysStringCollectionEnumPtr getPropertyCollectionEnum (eType propertyType)=0
 Retrieves a navigable list of the property names in the metadata. More...
 
- Public Member Functions inherited from IEDLObject
virtual const CClassIDgetClassID () const =0
 Returns class ID of IEDLObject. More...
 
virtual bool init (CClassParams *pData)
 The init() method is called to perform any post-construction initialization of an IEDLObject that has been created by the EDL class factory, before it is actually returned by the factory. More...
 
virtual bool clone (IEDLObjectPtr &ptrObject, IEDLClassFactory *pFactory)
 Create a copy of EDLObject. More...
 
- Public Member Functions inherited from IRCObject
virtual void addRef () const =0
 Increases the reference count of the actual object pointed to. This would take place during an assignment or copying.
 
virtual bool decRef () const =0
 Decreases the reference count of the actual object pointed to. When the reference count falls to Zero, it deletes the actual object pointed to. More...
 
virtual int32 getRefCount () const =0
 Retrieve the current reference count of the actual object pointed to. More...
 

Static Public Member Functions

static EDL_API IDOMMetadataPtr create (IEDLClassFactory *pFactory)
 Create a new IDOMMetadata object.
 

Additional Inherited Members

- Protected Member Functions inherited from IRCObject
virtual ~IRCObject ()
 Virtual destructor.
 

Detailed Description

The IDOMMetadata interface provides access to the metadata attached to the DocumentSequence node. The IDOMMetadata interface is designed to be flexible enough to represent different types of metadata.

The metadata set on IDOMDocumentSequence was designed to hold general information about the document, such as document author or creation/modification date.
Metadata can also describe the sort of information that can be found in the document information dictionary for a PDF document. The closest analogue for the XPS world would be the information contained in the CoreProperties part.

Several groups of metadata properties are supported by EDL, as described by the eType enumeration.
The properties in each group are as follows:

eCoreProperties - Core Properties
  • category - EDLSysString
  • contentStatus - EDLSysString
  • contentType - EDLSysString
  • keywords - EDLSysString
  • lastModifiedBy - EDLSysString
  • lastPrinted - IEDLTime
  • revision - EDLSysString
  • version - EDLSysString
  • creator - EDLSysString
  • description - EDLSysString
  • identifier - EDLSysString
  • language - EDLSysString
  • subject - EDLSysString
  • title - EDLSysString
  • created - IEDLTime
  • modified - IEDLTime
eViewerPreferences - Viewer Preferences
  • HideToolbar - bool
  • HideMenubar - bool
  • HideWindowUI - bool
  • FitWindow - bool
  • CenterWindow - bool
  • DisplayDocTitle - bool
  • PickTrayByPDFSize - bool
  • NumCopies - int32
  • NonFullScreenPageMode - EDLSysString
  • Direction - EDLSysString
  • ViewArea - EDLSysString
  • ViewClip - EDLSysString
  • PrintArea - EDLSysString
  • PrintClip - EDLSysString
  • PrintScaling - EDLSysString
  • Duplex - EDLSysString
eDocumentInfo - Document Information
  • Title - EDLSysString
  • Author - EDLSysString or CEDLStringVect with variant value (one of eXmpContainerType)
  • Subject - EDLSysString or CEDLStringVect with variant value (one of eXmpContainerType)
  • Keywords - EDLSysString or CEDLStringVect with variant value (one of eXmpContainerType)
  • Creator - EDLSysString
  • Producer - EDLSysString
  • CreationDate - IEDLTime
  • ModDate - IEDLTime
  • Trapped - EDLSysString
ePDFInfo - Read-only PDF document properties
  • Version - EDLSysString property in a string form M.m, where M is the major and m is the minor version number
  • ExtensionLevel - int32 representing the extension level
  • Linearized - bool indicator of original PDF document linearization
  • FileIdentifier1 - EDLSysString property representing the first part of PDF file ID
  • FileIdentifier2 - EDLSysString property representing second part of PDF file ID
  • Standard - EDLSysString property representing the PDF/A, PDF/E, PDF/X or PDF/UA standard the PDF purports to conform to
  • Marked - bool true if the PDF document claims to be a tagged PDF
  • UserProperties - bool true if the PDF document is tagged and structure elements that contain user properties are present
  • Suspects - bool true if the PDF contains tagged suspects
ePageView - Document-specific view controls
  • PageMode - EDLSysString. For example, set this to "UseOutlines" to initially display the Bookmarks panel
  • PageLayout - EDLSysString

Member Function Documentation

◆ getProperty()

virtual bool IDOMMetadata::getProperty ( eType  propertyType,
const EDLSysString &  propertyName,
PValue propertyValue 
) const
pure virtual

Retrieves the value of a named property.

Parameters
propertyTypeThe type of the property whose value is to be retrieved.
propertyNameThe name of the property whose value is to be retrieved.
propertyValueA smart pointer to receive the retrieved property value.
Returns
bool. Returns true on success, false if the call fails.

◆ getPropertyCollectionEnum()

virtual IEDLSysStringCollectionEnumPtr IDOMMetadata::getPropertyCollectionEnum ( eType  propertyType)
pure virtual

Retrieves a navigable list of the property names in the metadata.

Returns
IEDLSysStringCollectionEnumPtr. Returns a smart pointer to the list of property names.

◆ removeProperty()

virtual bool IDOMMetadata::removeProperty ( eType  propertyType,
const EDLSysString &  propertyName 
)
pure virtual

Removes a property, if it exists.

Parameters
propertyTypeThe type of the property to be removed.
propertyNameThe name of the property to be removed.
Returns
bool. Returns true on success, false if the call fails.

◆ setProperty()

virtual bool IDOMMetadata::setProperty ( eType  propertyType,
const EDLSysString &  propertyName,
const PValue propertyValue 
)
pure virtual

Sets value of a property.

Parameters
propertyTypeThe type of the property whose value is to be set.
propertyNameThe name of the property whose value is to be set.
propertyValueThe new value to be set for the property.
Returns
bool. Returns true on success, false if the call fails.

The documentation for this class was generated from the following file: