Common C/C++ types and constants for the XMP toolkit. More...
#include "XMP_Environment.h"
#include <stddef.h>
#include <vector>
Go to the source code of this file.
Classes | |
struct | XMP_DateTime |
The expanded type for a date and time. More... | |
struct | XMP_PacketInfo |
XMP packet description. More... | |
class | XMP_Error |
XMP Toolkit error, associates an error code with a descriptive error string. More... | |
struct | XMP_VersionInfo |
XMP Toolkit version information. More... | |
Defines | |
#define | kXMP_NS_TIFF "http://ns.adobe.com/tiff/1.0/" |
The XML namespace for Adobe's TIFF schema. | |
#define | kXMP_NS_XMP_ST_Job "http://ns.adobe.com/xap/1.0/sType/Job#" |
The XML namespace for fields of the JobRef type. | |
#define | kXMP_NS_XML "http://www.w3.org/XML/1998/namespace" |
The XML namespace for XML. | |
#define | kXMP_NoOptions ((XMP_OptionBits)0UL) |
Options macro clears all property-type bits. | |
#define | XMP_OptionIsClear(var, opt) (((var) & (opt)) == 0) |
Macro reports whether an option flag bit is clear. | |
#define | XMP_PropIsAlias(opt) (((opt) & kXMP_PropIsAlias) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_CharFromSerializeForm(sf) ( (XMP_Uns8)(sf) ) |
Macro converts XMP_OptionBits to XMP_Uns8 . | |
#define | kXMPFiles_UnknownOffset ((XMP_Int64)-1) |
Constant for an unknown packet offset within a file. | |
#define | kXMPFiles_UnknownLength ((XMP_Int32)-1) |
Constant for an unknown packet length within a file. | |
XML namespace constants for standard XMP schema. | |
#define | kXMP_NS_XMP "http://ns.adobe.com/xap/1.0/" |
The XML namespace for the XMP "basic" schema. | |
#define | kXMP_NS_XMP_Rights "http://ns.adobe.com/xap/1.0/rights/" |
The XML namespace for the XMP copyright schema. | |
#define | kXMP_NS_XMP_MM "http://ns.adobe.com/xap/1.0/mm/" |
The XML namespace for the XMP digital asset management schema. | |
#define | kXMP_NS_XMP_BJ "http://ns.adobe.com/xap/1.0/bj/" |
The XML namespace for the job management schema. | |
#define | kXMP_NS_PDF "http://ns.adobe.com/pdf/1.3/" |
The XML namespace for the PDF schema. | |
#define | kXMP_NS_Photoshop "http://ns.adobe.com/photoshop/1.0/" |
The XML namespace for the Photoshop custom schema. | |
#define | kXMP_NS_EXIF "http://ns.adobe.com/exif/1.0/" |
The XML namespace for Adobe's EXIF schema. | |
#define | kXMP_NS_XMP_T "http://ns.adobe.com/xap/1.0/t/" |
The XML namespace for the XMP text document schema. | |
#define | kXMP_NS_XMP_T_PG "http://ns.adobe.com/xap/1.0/t/pg/" |
The XML namespace for the XMP paged document schema. | |
XML namespace constants for qualifiers and structured property fields. | |
#define | kXMP_NS_XMP_IdentifierQual "http://ns.adobe.com/xmp/Identifier/qual/1.0/" |
The XML namespace for qualifiers of the xmp:Identifier property. | |
#define | kXMP_NS_XMP_Dimensions "http://ns.adobe.com/xap/1.0/sType/Dimensions#" |
The XML namespace for fields of the Dimensions type. | |
#define | kXMP_NS_XMP_Image "http://ns.adobe.com/xap/1.0/g/img/" |
The XML namespace for fields of a graphical image. Used for the Thumbnail type. | |
#define | kXMP_NS_XMP_ResourceEvent "http://ns.adobe.com/xap/1.0/sType/ResourceEvent#" |
The XML namespace for fields of the ResourceEvent type. | |
#define | kXMP_NS_XMP_ResourceRef "http://ns.adobe.com/xap/1.0/sType/ResourceRef#" |
The XML namespace for fields of the ResourceRef type. | |
#define | kXMP_NS_XMP_ST_Version "http://ns.adobe.com/xap/1.0/sType/Version#" |
The XML namespace for fields of the Version type. | |
XML namespace constants from outside Adobe. | |
#define | kXMP_NS_DC "http://purl.org/dc/elements/1.1/" |
The XML namespace for the Dublin Core schema. | |
#define | kXMP_NS_IPTCCore "http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/" |
The XML namespace for the IPTC Core schema. | |
#define | kXMP_NS_IPTCExt "http://iptc.org/std/Iptc4xmpExt/2008-02-29/" |
The XML namespace for the IPTC Extension schema. | |
#define | kXMP_NS_RDF "http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
The XML namespace for RDF. | |
Macros for standard option selections. | |
#define | kXMP_ArrayLastItem ((XMP_Index)(-1L)) |
Options macro accesses last array item. | |
#define | kXMP_UseNullTermination ((XMP_StringLen)(~0UL)) |
Options macro sets string style. | |
Macros for setting and testing general option bits. | |
#define | XMP_SetOption(var, opt) var |= (opt) |
Macro sets an option flag bit. | |
#define | XMP_ClearOption(var, opt) var &= ~(opt) |
Macro clears an option flag bit. | |
#define | XMP_TestOption(var, opt) (((var) & (opt)) != 0) |
Macro reports whether an option flag bit is set. | |
#define | XMP_OptionIsSet(var, opt) (((var) & (opt)) != 0) |
Macro reports whether an option flag bit is set. | |
Macros for setting and testing specific option bits. | |
#define | XMP_PropIsSimple(opt) (((opt) & kXMP_PropCompositeMask) == 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_PropIsStruct(opt) (((opt) & kXMP_PropValueIsStruct) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_PropIsArray(opt) (((opt) & kXMP_PropValueIsArray) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_ArrayIsUnordered(opt) (((opt) & kXMP_PropArrayIsOrdered) == 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_ArrayIsOrdered(opt) (((opt) & kXMP_PropArrayIsOrdered) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_ArrayIsAlternate(opt) (((opt) & kXMP_PropArrayIsAlternate) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_ArrayIsAltText(opt) (((opt) & kXMP_PropArrayIsAltText) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_PropHasQualifiers(opt) (((opt) & kXMP_PropHasQualifiers) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_PropIsQualifier(opt) (((opt) & kXMP_PropIsQualifier) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_PropHasLang(opt) (((opt) & kXMP_PropHasLang) != 0) |
Macro reports the property type specified by an options flag. | |
#define | XMP_NodeIsSchema(opt) (((opt) & kXMP_SchemaNode) != 0) |
Macro reports the property type specified by an options flag. | |
Macros to test components of the character form mask | |
#define | XMP_CharFormIs16Bit(f) ( ((int)(f) & kXMP_Char16BitMask) != 0 ) |
Macro reports the encoding of a character. | |
#define | XMP_CharFormIs32Bit(f) ( ((int)(f) & kXMP_Char32BitMask) != 0 ) |
Macro reports the encoding of a character. | |
#define | XMP_CharFormIsBigEndian(f) ( ((int)(f) & kXMP_CharLittleEndianMask) == 0 ) |
Macro reports the byte-order of a character. | |
#define | XMP_CharFormIsLittleEndian(f) ( ((int)(f) & kXMP_CharLittleEndianMask) != 0 ) |
Macro reports the byte-order of a character. | |
#define | XMP_GetCharSize(f) ( ((int)(f)&6) == 0 ? 1 : (int)(f)&6 ) |
Macro reports the byte-size of a character. | |
#define | XMP_CharToSerializeForm(cf) ( (XMP_OptionBits)(cf) ) |
Macro converts XMP_Uns8 to XMP_OptionBits . | |
Typedefs | |
typedef struct __XMPMeta__ * | XMPMetaRef |
typedef struct __XMPIterator__ * | XMPIteratorRef |
typedef struct __XMPDocOps__ * | XMPDocOpsRef |
typedef struct __XMPFiles__ * | XMPFilesRef |
typedef XMP_Uns32 | XMP_FileFormat |
Type for file format identification constants. See kXMP_PDFFile and following. | |
typedef struct XMP_VersionInfo | XMP_VersionInfo |
XMP Toolkit version information. | |
Special purpose callback functions | |
typedef XMP_Int32 | XMP_Status |
typedef XMP_Status(* | XMP_TextOutputProc )(void *refCon, XMP_StringPtr buffer, XMP_StringLen bufferSize) |
typedef bool(* | XMP_AbortProc )(void *arg) |
typedef bool(* | XMP_ProgressReportProc )(void *context, float elapsedTime, float fractionDone, float secondsToGo) |
typedef XMP_Bool(* | XMP_ProgressReportWrapper )(XMP_ProgressReportProc proc, void *context, float elapsedTime, float fractionDone, float secondsToGo) |
Internal: The signature of a client-side wrapper for the progress report callback. | |
Enumerations | |
enum | { kXMP_TimeWestOfUTC = -1, kXMP_TimeIsUTC = 0, kXMP_TimeEastOfUTC = +1 } |
Constant values for | |
enum | { kXMP_PropValueIsURI = 0x00000002UL, kXMP_PropHasQualifiers = 0x00000010UL, kXMP_PropIsQualifier = 0x00000020UL, kXMP_PropHasLang = 0x00000040UL, kXMP_PropHasType = 0x00000080UL, kXMP_PropValueIsStruct = 0x00000100UL, kXMP_PropValueIsArray = 0x00000200UL, kXMP_PropArrayIsUnordered = kXMP_PropValueIsArray, kXMP_PropArrayIsOrdered = 0x00000400UL, kXMP_PropArrayIsAlternate = 0x00000800UL, kXMP_PropArrayIsAltText = 0x00001000UL, kXMP_PropIsAlias = 0x00010000UL, kXMP_PropHasAliases = 0x00020000UL, kXMP_PropIsInternal = 0x00040000UL, kXMP_PropIsStable = 0x00100000UL, kXMP_PropIsDerived = 0x00200000UL, kXMP_PropArrayFormMask = kXMP_PropValueIsArray | kXMP_PropArrayIsOrdered | kXMP_PropArrayIsAlternate | kXMP_PropArrayIsAltText, kXMP_PropCompositeMask = kXMP_PropValueIsStruct | kXMP_PropArrayFormMask, kXMP_ImplReservedMask = 0x70000000L } |
Option bit flags for the | |
enum | { kXMP_InsertBeforeItem = 0x00004000UL, kXMP_InsertAfterItem = 0x00008000UL, kXMP_DeleteExisting = 0x20000000UL, kXMP_PropValueOptionsMask = kXMP_PropValueIsURI, kXMP_PropArrayLocationMask = kXMP_InsertBeforeItem | kXMP_InsertAfterItem } |
enum | { kXMP_RequireXMPMeta = 0x0001UL, kXMP_ParseMoreBuffers = 0x0002UL, kXMP_StrictAliasing = 0x0004UL } |
Option bit flags for | |
enum | { kXMP_OmitPacketWrapper = 0x0010UL, kXMP_ReadOnlyPacket = 0x0020UL, kXMP_UseCompactFormat = 0x0040UL, kXMP_UseCanonicalFormat = 0x0080UL, kXMP_IncludeThumbnailPad = 0x0100UL, kXMP_ExactPacketLength = 0x0200UL, kXMP_OmitAllFormatting = 0x0800UL, kXMP_OmitXMPMetaElement = 0x1000UL , kXMP_EncodingMask = 0x0007UL, kXMP_EncodeUTF8 = 0UL, kXMP_EncodeUTF16Big = _XMP_UTF16_Bit, kXMP_EncodeUTF16Little = _XMP_UTF16_Bit | _XMP_LittleEndian_Bit, kXMP_EncodeUTF32Big = _XMP_UTF32_Bit, kXMP_EncodeUTF32Little = _XMP_UTF32_Bit | _XMP_LittleEndian_Bit } |
Option bit flags for | |
enum | { kXMP_IterClassMask = 0x00FFUL, kXMP_IterProperties = 0x0000UL, kXMP_IterAliases = 0x0001UL, kXMP_IterNamespaces = 0x0002UL, kXMP_IterJustChildren = 0x0100UL, kXMP_IterJustLeafNodes = 0x0200UL, kXMP_IterJustLeafName = 0x0400UL, kXMP_IterOmitQualifiers = 0x1000UL } |
Option bit flags for | |
enum | { kXMP_IterSkipSubtree = 0x0001UL, kXMP_IterSkipSiblings = 0x0002UL } |
Option bit flags for | |
enum | { kXMPUtil_AllowCommas = 0x10000000UL } |
enum | { kXMPTemplate_IncludeInternalProperties = 0x0001UL, kXMPTemplate_ReplaceExistingProperties = 0x0002UL, kXMPTemplate_ReplaceWithDeleteEmpty = 0x0004UL, kXMPTemplate_AddNewProperties = 0x0008UL, kXMPTemplate_ClearUnnamedProperties = 0x0010UL } |
Option bit flags for | |
enum | { kXMPUtil_DoAllProperties = 0x0001UL, kXMPUtil_ReplaceOldValues = 0x0002UL, kXMPUtil_DeleteEmptyValues = 0x0004UL, kXMPUtil_IncludeAliases = 0x0800UL } |
Option bit flags for | |
enum | SeekMode |
Seek mode constants for use with XMP_IO and inside XMPFiles library code. | |
enum | { kXMP_PDFFile = 0x50444620UL, kXMP_PostScriptFile = 0x50532020UL, kXMP_EPSFile = 0x45505320UL, kXMP_JPEGFile = 0x4A504547UL, kXMP_JPEG2KFile = 0x4A505820UL, kXMP_TIFFFile = 0x54494646UL, kXMP_GIFFile = 0x47494620UL, kXMP_PNGFile = 0x504E4720UL, kXMP_SWFFile = 0x53574620UL, kXMP_FLAFile = 0x464C4120UL, kXMP_FLVFile = 0x464C5620UL, kXMP_MOVFile = 0x4D4F5620UL, kXMP_AVIFile = 0x41564920UL, kXMP_CINFile = 0x43494E20UL, kXMP_WAVFile = 0x57415620UL, kXMP_MP3File = 0x4D503320UL, kXMP_SESFile = 0x53455320UL, kXMP_CELFile = 0x43454C20UL, kXMP_MPEGFile = 0x4D504547UL, kXMP_MPEG2File = 0x4D503220UL, kXMP_MPEG4File = 0x4D503420UL, kXMP_MXFFile = 0x4D584620UL, kXMP_WMAVFile = 0x574D4156UL, kXMP_AIFFFile = 0x41494646UL, kXMP_REDFile = 0x52454420UL, kXMP_P2File = 0x50322020UL, kXMP_XDCAM_FAMFile = 0x58444346UL, kXMP_XDCAM_SAMFile = 0x58444353UL, kXMP_XDCAM_EXFile = 0x58444358UL, kXMP_AVCHDFile = 0x41564844UL, kXMP_SonyHDVFile = 0x53484456UL, kXMP_CanonXFFile = 0x434E5846UL, kXMP_HTMLFile = 0x48544D4CUL, kXMP_XMLFile = 0x584D4C20UL, kXMP_TextFile = 0x74657874UL, kXMP_PhotoshopFile = 0x50534420UL, kXMP_IllustratorFile = 0x41492020UL, kXMP_InDesignFile = 0x494E4444UL, kXMP_AEProjectFile = 0x41455020UL, kXMP_AEProjTemplateFile = 0x41455420UL, kXMP_AEFilterPresetFile = 0x46465820UL, kXMP_EncoreProjectFile = 0x4E434F52UL, kXMP_PremiereProjectFile = 0x5052504AUL, kXMP_PremiereTitleFile = 0x5052544CUL, kXMP_UCFFile = 0x55434620UL, kXMP_UnknownFile = 0x20202020UL } |
File format constants for use with XMPFiles. More... | |
enum | |
Byte-order masks, do not use directly. | |
enum | { kXMP_Char8Bit = 0, kXMP_Char16BitBig = kXMP_Char16BitMask, kXMP_Char16BitLittle = kXMP_Char16BitMask | kXMP_CharLittleEndianMask, kXMP_Char32BitBig = kXMP_Char32BitMask, kXMP_Char32BitLittle = kXMP_Char32BitMask | kXMP_CharLittleEndianMask, kXMP_CharUnknown = 1 } |
Constants to allow easy testing for 16/32 bit and big/little endian. More... | |
enum | { kXMP_PacketInfoVersion = 3 } |
Version of the XMP_PacketInfo type. More... | |
enum | { kXMPFiles_IgnoreLocalText = 0x0002, kXMPFiles_ServerMode = kXMPFiles_IgnoreLocalText } |
Option bit flags for | |
enum | { kXMPFiles_CanInjectXMP = 0x00000001, kXMPFiles_CanExpand = 0x00000002, kXMPFiles_CanRewrite = 0x00000004, kXMPFiles_PrefersInPlace = 0x00000008, kXMPFiles_CanReconcile = 0x00000010, kXMPFiles_AllowsOnlyXMP = 0x00000020, kXMPFiles_ReturnsRawPacket = 0x00000040, kXMPFiles_HandlerOwnsFile = 0x00000100, kXMPFiles_AllowsSafeUpdate = 0x00000200, kXMPFiles_NeedsReadOnlyPacket = 0x00000400, kXMPFiles_UsesSidecarXMP = 0x00000800, kXMPFiles_FolderBasedFormat = 0x00001000, kXMPFiles_CanNotifyProgress = 0x00002000, kXMPFiles_NeedsPreloading = 0x00004000 } |
Option bit flags for | |
enum | { kXMPFiles_OpenForRead = 0x00000001, kXMPFiles_OpenForUpdate = 0x00000002, kXMPFiles_OpenOnlyXMP = 0x00000004, kXMPFiles_ForceGivenHandler = 0x00000008, kXMPFiles_OpenStrictly = 0x00000010, kXMPFiles_OpenUseSmartHandler = 0x00000020, kXMPFiles_OpenUsePacketScanning = 0x00000040, kXMPFiles_OpenLimitedScanning = 0x00000080, kXMPFiles_OpenRepairFile = 0x00000100 } |
Option bit flags for | |
enum | { kXMPFiles_UpdateSafely = 0x0001 } |
Option bit flags for | |
General scalar types and constants | |
| |
#define | kXMP_TrueStr "True" |
The canonical true string value for Booleans in serialized XMP. | |
#define | kXMP_FalseStr "False" |
The canonical false string value for Booleans in serialized XMP. | |
enum | { kXMPTS_Yes = 1, kXMPTS_No = 0, kXMPTS_Maybe = -1 } |
typedef const char * | XMP_StringPtr |
The type for input string parameters. A const char * , a null-terminated UTF-8 string. | |
typedef XMP_Uns32 | XMP_StringLen |
The type for string length parameters. A 32-bit unsigned integer, as big as will be practically needed. | |
typedef XMP_Int32 | XMP_Index |
The type for offsets and indices. A 32-bit signed integer. It is signed to allow -1 for loop termination. | |
typedef XMP_Uns32 | XMP_OptionBits |
The type for a collection of 32 flag bits. Individual flags are defined as enum value bit masks; see kXMP_PropValueIsURI and following. A number of macros provide common set or set operations, such as XMP_PropIsSimple . For other tests use an expression like options & kXMP_<theOption> . When passing multiple option flags use the bitwise-OR operator. '|', not the arithmatic plus, '+'. | |
typedef XMP_Int8 | XMP_TriState |
Error notification and Exceptions | |
From the beginning through version 5.5, XMP Tookit errors result in throwing an A client can register an error notification callback function for a The
| |
enum | { kXMPErrSev_Recoverable = 0, kXMPErrSev_OperationFatal = 1, kXMPErrSev_FileFatal = 2, kXMPErrSev_ProcessFatal = 3 } |
Severity codes for error notifications. More... | |
enum | { kXMPErr_NoError = -1, kXMPErr_Unknown = 0, kXMPErr_TBD = 1, kXMPErr_Unavailable = 2, kXMPErr_BadObject = 3, kXMPErr_BadParam = 4, kXMPErr_BadValue = 5, kXMPErr_AssertFailure = 6, kXMPErr_EnforceFailure = 7, kXMPErr_Unimplemented = 8, kXMPErr_InternalFailure = 9, kXMPErr_Deprecated = 10, kXMPErr_ExternalFailure = 11, kXMPErr_UserAbort = 12, kXMPErr_StdException = 13, kXMPErr_UnknownException = 14, kXMPErr_NoMemory = 15, kXMPErr_ProgressAbort = 16, kXMPErr_BadSchema = 101, kXMPErr_BadXPath = 102, kXMPErr_BadOptions = 103, kXMPErr_BadIndex = 104, kXMPErr_BadIterPosition = 105, kXMPErr_BadParse = 106, kXMPErr_BadSerialize = 107, kXMPErr_BadFileFormat = 108, kXMPErr_NoFileHandler = 109, kXMPErr_TooLargeForJPEG = 110, kXMPErr_NoFile = 111, kXMPErr_FilePermission = 112, kXMPErr_DiskSpace = 113, kXMPErr_ReadError = 114, kXMPErr_WriteError = 115, kXMPErr_BadBlockFormat = 116, kXMPErr_FilePathNotAFile = 117, kXMPErr_RejectedFileExtension = 118, kXMPErr_BadXML = 201, kXMPErr_BadRDF = 202, kXMPErr_BadXMP = 203, kXMPErr_EmptyIterator = 204, kXMPErr_BadUnicode = 205, kXMPErr_BadTIFF = 206, kXMPErr_BadJPEG = 207, kXMPErr_BadPSD = 208, kXMPErr_BadPSIR = 209, kXMPErr_BadIPTC = 210, kXMPErr_BadMPEG = 211 } |
XMP_Error exception code constants. More... | |
typedef XMP_Uns8 | XMP_ErrorSeverity |
typedef bool(* | XMPMeta_ErrorCallbackProc )(void *context, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
typedef bool(* | XMPFiles_ErrorCallbackProc )(void *context, XMP_StringPtr filePath, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
typedef XMP_Bool(* | XMPMeta_ErrorCallbackWrapper )(XMPMeta_ErrorCallbackProc clientProc, void *context, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
Internal: The signatures of client-side wrappers for the error notification callbacks. | |
typedef XMP_Bool(* | XMPFiles_ErrorCallbackWrapper )(XMPFiles_ErrorCallbackProc clientProc, void *context, XMP_StringPtr filePath, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
Common C/C++ types and constants for the XMP toolkit.
#define kXMP_FalseStr "False" |
The canonical false string value for Booleans in serialized XMP.
Code that converts from string to bool should be case insensitive, and also allow "0".
#define kXMP_TrueStr "True" |
The canonical true string value for Booleans in serialized XMP.
Code that converts from string to bool should be case insensitive, and also allow "1".
#define XMP_ArrayIsAlternate | ( | opt | ) | (((opt) & kXMP_PropArrayIsAlternate) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_ArrayIsAltText | ( | opt | ) | (((opt) & kXMP_PropArrayIsAltText) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_ArrayIsOrdered | ( | opt | ) | (((opt) & kXMP_PropArrayIsOrdered) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_ArrayIsUnordered | ( | opt | ) | (((opt) & kXMP_PropArrayIsOrdered) == 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_CharFormIs16Bit | ( | f | ) | ( ((int)(f) & kXMP_Char16BitMask) != 0 ) |
Macro reports the encoding of a character.
f | The character to check. |
#define XMP_CharFormIs32Bit | ( | f | ) | ( ((int)(f) & kXMP_Char32BitMask) != 0 ) |
Macro reports the encoding of a character.
f | The character to check. |
#define XMP_CharFormIsBigEndian | ( | f | ) | ( ((int)(f) & kXMP_CharLittleEndianMask) == 0 ) |
Macro reports the byte-order of a character.
f | The character to check. |
#define XMP_CharFormIsLittleEndian | ( | f | ) | ( ((int)(f) & kXMP_CharLittleEndianMask) != 0 ) |
Macro reports the byte-order of a character.
f | The character to check. |
#define XMP_CharFromSerializeForm | ( | sf | ) | ( (XMP_Uns8)(sf) ) |
Macro converts XMP_OptionBits
to XMP_Uns8
.
sf | The character to convert. |
#define XMP_CharToSerializeForm | ( | cf | ) | ( (XMP_OptionBits)(cf) ) |
Macro converts XMP_Uns8
to XMP_OptionBits
.
cf | The character to convert. |
#define XMP_ClearOption | ( | var, | |||
opt | ) | var &= ~(opt) |
Macro clears an option flag bit.
var | A variable storing an options flag. | |
opt | The bit-flag constant to clear. |
#define XMP_GetCharSize | ( | f | ) | ( ((int)(f)&6) == 0 ? 1 : (int)(f)&6 ) |
Macro reports the byte-size of a character.
f | The character to check. |
#define XMP_NodeIsSchema | ( | opt | ) | (((opt) & kXMP_SchemaNode) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_OptionIsClear | ( | var, | |||
opt | ) | (((var) & (opt)) == 0) |
Macro reports whether an option flag bit is clear.
var | A variable storing an options flag. | |
opt | The bit-flag constant to test. |
#define XMP_OptionIsSet | ( | var, | |||
opt | ) | (((var) & (opt)) != 0) |
Macro reports whether an option flag bit is set.
var | A variable storing an options flag. | |
opt | The bit-flag constant to test. |
#define XMP_PropHasLang | ( | opt | ) | (((opt) & kXMP_PropHasLang) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropHasQualifiers | ( | opt | ) | (((opt) & kXMP_PropHasQualifiers) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropIsAlias | ( | opt | ) | (((opt) & kXMP_PropIsAlias) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropIsArray | ( | opt | ) | (((opt) & kXMP_PropValueIsArray) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropIsQualifier | ( | opt | ) | (((opt) & kXMP_PropIsQualifier) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropIsSimple | ( | opt | ) | (((opt) & kXMP_PropCompositeMask) == 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_PropIsStruct | ( | opt | ) | (((opt) & kXMP_PropValueIsStruct) != 0) |
Macro reports the property type specified by an options flag.
opt | The options flag to check. |
#define XMP_SetOption | ( | var, | |||
opt | ) | var |= (opt) |
Macro sets an option flag bit.
var | A variable storing an options flag. | |
opt | The bit-flag constant to set. |
#define XMP_TestOption | ( | var, | |||
opt | ) | (((var) & (opt)) != 0) |
Macro reports whether an option flag bit is set.
var | A variable storing an options flag. | |
opt | The bit-flag constant to test. |
typedef bool(* XMP_AbortProc)(void *arg) |
The signature of a client-defined callback to check for a user request to abort a time-consuming operation within XMPFiles.
arg | A pointer to caller-defined data passed from the registration call. |
TXMPFiles::SetAbortProc()
typedef bool(* XMP_ProgressReportProc)(void *context, float elapsedTime, float fractionDone, float secondsToGo) |
The signature of a client-defined callback for progress report notifications.
context | A pointer used to carry client-private context. | |
elapsedTime | The time in seconds since the progress reporting started. | |
fractionDone | A float value estimating the amount of work already done, in the range of 0.0 to 1.0. A value of 0.0 is given if the amount is not known, this happens if there is no estimate total for the total work. The units of work are not defined, but should usually be related to the number of bytes of I/O. This will go backwards if total work estimate changes. | |
secondsToGo | A float value estimating the number of seconds left to complete the file operation. A value of 0.0 is given if the amount is not known, this happens if the amount of total work is unknown. This can go backwards according to throughput or if work estimate changes. |
typedef XMP_Int32 XMP_Status |
A signed 32-bit integer used as a status result for the output callback routine, XMP_TextOutputProc
. Zero means no error, all other values except -1 are private to the callback. The callback is wrapped to prevent exceptions being thrown across DLL boundaries. Any exceptions thrown out of the callback cause a return status of -1.
typedef XMP_Status(* XMP_TextOutputProc)(void *refCon, XMP_StringPtr buffer, XMP_StringLen bufferSize) |
The signature of a client-defined callback for text output from XMP Toolkit debugging operations. The callback is invoked one or more times for each line of output. The end of a line is signaled by a '\n' character at the end of the buffer. Formatting newlines are never present in the middle of a buffer, but values of properties might contain any UTF-8 characters.
refCon | A pointer to client-defined data passed to the TextOutputProc. | |
buffer | A string containing one line of output. | |
bufferSize | The number of characters in the output buffer. |
TXMPMeta::DumpObject()
typedef struct __XMPDocOps__* XMPDocOpsRef |
An "ABI safe" pointer to the internal part of an XMP document operations object. Use to pass an XMP document operations object across client DLL boundaries. See TXMPDocOps
.
typedef bool(* XMPFiles_ErrorCallbackProc)(void *context, XMP_StringPtr filePath, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
The signature of a client-defined callback for TXMPFiles error notifications.
context | A pointer used to carry client-private context. | |
filePath | The path for the file involved in the error. | |
severity | The severity of the error, see the XMP_ErrorSeverity values. | |
cause | A numeric code for the cause of the error, from the XMP_Error exception codes. Codes used with TXMPFiles error notifications:
| |
message | An explanation of the error, for debugging use only. This should not be displayed to users in a final product. |
typedef struct __XMPFiles__* XMPFilesRef |
An "ABI safe" pointer to the internal part of an XMP file-handling object. Use to pass an XMP file-handling object across client DLL boundaries. See TXMPFiles
.
typedef struct __XMPIterator__* XMPIteratorRef |
An "ABI safe" pointer to the internal part of an XMP iteration object. Use to pass an XMP iteration object across client DLL boundaries. See TXMPIterator
.
typedef bool(* XMPMeta_ErrorCallbackProc)(void *context, XMP_ErrorSeverity severity, XMP_Int32 cause, XMP_StringPtr message) |
The signature of a client-defined callback for TXMPMeta error notifications.
context | A pointer used to carry client-private context. | |
severity | The severity of the error, see the XMP_ErrorSeverity values. | |
cause | A numeric code for the cause of the error, from the XMP_Error exception codes. Codes used with TXMPMeta error notifications:
| |
message | An explanation of the error, for debugging use only. This should not be displayed to users in a final product. |
typedef struct __XMPMeta__* XMPMetaRef |
An "ABI safe" pointer to the internal part of an XMP object. Use to pass an XMP object across client DLL boundaries. See TXMPMeta::GetInternalRef()
.
anonymous enum |
Type for yes/no/maybe answers. The values are picked to allow Boolean-like usage. The yes and values are true (non-zero), the no value is false (zero).
anonymous enum |
Constant values for XMP_DateTime::tzSign
field.
anonymous enum |
Option bit flags for TXMPUtils::RemoveProperties()
and TXMPUtils::AppendProperties()
.
anonymous enum |
File format constants for use with XMPFiles.
anonymous enum |
Constants to allow easy testing for 16/32 bit and big/little endian.
anonymous enum |
Version of the XMP_PacketInfo type.
kXMP_PacketInfoVersion |
Version of the XMP_PacketInfo type. |
anonymous enum |
Option bit flags for TXMPFiles::Initialize()
.
anonymous enum |
Option bit flags for TXMPFiles::GetFormatInfo()
.
anonymous enum |
Option bit flags for TXMPFiles::OpenFile()
.
anonymous enum |
Option bit flags for TXMPFiles::CloseFile()
.
anonymous enum |
Severity codes for error notifications.
anonymous enum |
Option bit flags for the TXMPMeta
property accessor functions.
kXMP_PropValueIsURI |
The XML string form of the property value is a URI, use rdf:resource attribute. DISCOURAGED. |
kXMP_PropHasQualifiers |
The property has qualifiers, includes |
kXMP_PropIsQualifier |
This is a qualifier for some other property, includes |
kXMP_PropHasLang |
Implies |
kXMP_PropHasType |
Implies |
kXMP_PropValueIsStruct |
The value is a structure with nested fields. |
kXMP_PropValueIsArray |
The value is an array (RDF alt/bag/seq). The "ArrayIs..." flags identify specific types of array; default is a general unordered array, serialized using an |
kXMP_PropArrayIsUnordered |
The item order does not matter. |
kXMP_PropArrayIsOrdered |
Implies |
kXMP_PropArrayIsAlternate |
Implies |
kXMP_PropArrayIsAltText |
Implies |
kXMP_PropIsAlias |
This property is an alias name for another property. This is only returned by |
kXMP_PropHasAliases |
This property is the base value (actual) for a set of aliases.This is only returned by |
kXMP_PropIsInternal |
The value of this property is "owned" by the application, and should not generally be editable in a UI. |
kXMP_PropIsStable |
The value of this property is not derived from the document content. |
kXMP_PropIsDerived |
The value of this property is derived from the document content. |
kXMP_PropArrayFormMask |
Property type bit-flag mask for all array types. |
kXMP_PropCompositeMask |
Property type bit-flag mask for composite types (array and struct). |
kXMP_ImplReservedMask |
Mask for bits that are reserved for transient use by the implementation. |
anonymous enum |
XMP_Error exception code constants.
anonymous enum |
Option bit flags for the TXMPMeta
property setting functions. These option bits are shared with the accessor functions:
kXMP_PropValueIsURI
kXMP_PropValueIsStruct
kXMP_PropValueIsArray
kXMP_PropArrayIsOrdered
kXMP_PropArrayIsAlternate
kXMP_PropArrayIsAltText
anonymous enum |
Option bit flags for TXMPMeta::ParseFromBuffer()
.
anonymous enum |
Option bit flags for TXMPMeta::SerializeToBuffer()
.
anonymous enum |
Option bit flags for TXMPIterator
construction.
kXMP_IterClassMask |
The low 8 bits are an enum of what data structure to iterate. |
kXMP_IterProperties |
Iterate the property tree of a TXMPMeta object. |
kXMP_IterAliases |
Iterate the global alias table. |
kXMP_IterNamespaces |
Iterate the global namespace table. |
kXMP_IterJustChildren |
Just do the immediate children of the root, default is subtree. |
kXMP_IterJustLeafNodes |
Just do the leaf nodes, default is all nodes in the subtree. |
kXMP_IterJustLeafName |
Return just the leaf part of the path, default is the full path. |
kXMP_IterOmitQualifiers |
Omit all qualifiers. |
anonymous enum |
Option bit flags for TXMPIterator::Skip()
.
anonymous enum |
Option bit flags for TXMPUtils::CatenateArrayItems()
and TXMPUtils::SeparateArrayItems()
. These option bits are shared with the accessor functions:
anonymous enum |
Option bit flags for TXMPUtils::ApplyTemplate()
.