![]() |
XMP Toolkit SDK
6.0.0
|
Version1 of the interface that represents one segment in a path to a node into the XMP tree. More...
#include <IPathSegment.h>
Public Types | |
enum | ePathSegmentType { kPSTNone = 0, kPSTProperty = 1, kPSTArrayIndex = 1 << 1, kPSTQualifier = 1 << 2, kPSTQualifierSelector = 1 << 3, kPSTAll = kAllBits } |
This enumeration represents the types of a path segment. More... | |
Public Member Functions | |
virtual spcIUTF8String APICALL | GetNameSpace () const =0 |
Gets the name space of the path segment. More... | |
virtual spcIUTF8String APICALL | GetName () const =0 |
Gets the name of the path segment. More... | |
virtual ePathSegmentType APICALL | GetType () const =0 |
Gets the type of the path segment. More... | |
virtual sizet APICALL | GetIndex () const __NOTHROW__=0 |
Gets the index of the array type path segment. More... | |
virtual spcIUTF8String APICALL | GetValue () const =0 |
Gets the value of the qualifier type path segment. More... | |
![]() | |
virtual void APICALL | Acquire () const __NOTHROW__=0 |
Called by the clients of the object to indicate that he has acquired the shared ownership of the object. More... | |
virtual void APICALL | Release () const __NOTHROW__=0 |
Called by the clients of the object to indicate he has released his shared ownership of the object. If this being the last client than this function should call Destroy to delete and release the memory. More... | |
![]() | |
template<typename requestedInterface > | |
XMP_PRIVATE requestedInterface * | GetInterfacePointer () |
Get the raw pointer to an interface object implementing the requested version. More... | |
template<typename requestedInterface > | |
const XMP_PRIVATE requestedInterface * | GetInterfacePointer () const |
Get the raw pointer to a const interface object implementing the requested version. More... | |
Static Public Member Functions | |
static XMP_PRIVATE spcIPathSegment | CreatePropertyPathSegment (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) |
Creates a normal property path segment.These are essentially all properties (simple, struct and arrays). More... | |
static XMP_PRIVATE spcIPathSegment | CreateArrayIndexPathSegment (const char *nameSpace, sizet nameSpaceLength, sizet index) |
Creates an array index path segment that denotes a specific element of an array. More... | |
static XMP_PRIVATE spcIPathSegment | CreateQualifierPathSegment (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) |
Creates a Qualifier path segment, which behaves like a normal property. More... | |
static XMP_PRIVATE spcIPathSegment | CreateQualifierSelectorPathSegment (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength, const char *value, sizet valueLength) |
Creates a path segment that selects a specific qualifier by its value. For example a specific language in a alternative array of languages. More... | |
Protected Member Functions | |
virtual | ~IPathSegment_v1 () __NOTHROW__ |
![]() | |
virtual | ~ISharedObject () __NOTHROW__=0 |
REQ_FRIEND_CLASS_DECLARATION () | |
![]() | |
virtual | ~IVersionable () |
REQ_FRIEND_CLASS_DECLARATION () | |
Version1 of the interface that represents one segment in a path to a node into the XMP tree.
Provides all the functions to access properties of the path segment and factory functions to create various kinds of path segments.
Definition at line 26 of file IPathSegment.h.
This enumeration represents the types of a path segment.
Definition at line 35 of file IPathSegment.h.
|
inlineprotectedvirtual |
|
static |
Creates an array index path segment that denotes a specific element of an array.
Such segments do not have an own name and inherits the namespace from the Array property itself.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the property. |
[in] | nameSpaceLength | Number of characters in nameSpace. In case nameSpace is null terminated set it to #AdobeXMPCommon::npos. |
[in] | index | An object of type #AdobeXMP::sizet containting the index of the array element. |
|
static |
Creates a normal property path segment.These are essentially all properties (simple, struct and arrays).
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the property. |
[in] | nameSpaceLength | Number of characters in nameSpace. In case nameSpace is null terminated set it to #AdobeXMPCommon::npos. |
[in] | name | Pointer to a constant char buffer containing local name of the property. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
|
static |
Creates a Qualifier path segment, which behaves like a normal property.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the property. |
[in] | nameSpaceLength | Number of characters in nameSpace. In case nameSpace is null terminated set it to #AdobeXMPCommon::npos. |
[in] | name | Pointer to a constant char buffer containing local name of the property. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
|
static |
Creates a path segment that selects a specific qualifier by its value. For example a specific language in a alternative array of languages.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the property. |
[in] | nameSpaceLength | Number of characters in nameSpace. In case nameSpace is null terminated set it to #AdobeXMPCommon::npos. |
[in] | name | Pointer to a constant char buffer containing local name of the property. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
[in] | value | Pointer to a constant char buffer containing value of the language (xml:lang) |
[in] | valueLength | Number of characters in value. In case value is null terminated set it to #AdobeXMPCommon::npos. |
|
pure virtual |
Gets the index of the array type path segment.
|
pure virtual |
Gets the name of the path segment.
|
pure virtual |
Gets the name space of the path segment.
|
pure virtual |
Gets the type of the path segment.
|
pure virtual |
Gets the value of the qualifier type path segment.