![]() |
XMP Toolkit SDK
6.0.0
|
Version1 of the interface that serves as a base interface to all types of nodes in the XMP DOM. More...
#include <INode.h>
Public Types | |
enum | eNodeType { kNTNone = 0, kNTSimple = 1, kNTArray = 1 << 1, kNTStructure = 1 << 2, kNTAll = kAllBits } |
Indicates various types of node available in XMP Data Model like simple, array and structure. More... | |
Public Member Functions | |
virtual eNodeType APICALL | GetNodeType () const =0 |
Gets the node type of the node. More... | |
virtual eNodeType APICALL | GetParentNodeType () const =0 |
Gets the node type of the node's parent. More... | |
virtual void APICALL | SetName (const char *name, sizet nameLength)=0 |
Changes the local name of the node. More... | |
virtual spcIUTF8String APICALL | GetName () const =0 |
Gets the local name of the node. More... | |
virtual void APICALL | SetNameSpace (const char *nameSpace, sizet nameSpaceLength)=0 |
Changes the name space of the node. More... | |
virtual spcIUTF8String APICALL | GetNameSpace () const =0 |
Gets the name space of the node. More... | |
virtual spIPath APICALL | GetPath () const =0 |
Gets the path of the node from the root of the metadata. More... | |
virtual sizet APICALL | QualifiersCount () const __NOTHROW__=0 |
Gets the count of the qualifiers attached with the node. More... | |
virtual eNodeType APICALL | GetQualifierNodeType (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) const =0 |
Gets the type of the node's qualifier having specified namespace and name. More... | |
virtual void APICALL | InsertQualifier (const spINode &node)=0 |
Inserts a given qualifier node. More... | |
virtual spINode APICALL | ReplaceQualifier (const spINode &node)=0 |
Replaces a given qualifier node. More... | |
virtual spINode APICALL | RemoveQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength)=0 |
Removes the qualifier node with the specified nameSpace and name. More... | |
virtual bool APICALL | IsArrayItem () const =0 |
Indicates whether the node is a direct child of an array node. More... | |
virtual bool APICALL | IsQualifierNode () const =0 |
Indicates whether the node is a qualifier node. More... | |
virtual sizet APICALL | GetIndex () const =0 |
Returns the index of the node in case it is an array item. More... | |
virtual bool APICALL | HasQualifiers () const =0 |
Indicates whether the node has any qualifiers associated with it. More... | |
virtual bool APICALL | HasContent () const =0 |
Returns whether the node has any content or not. return A bool value indicating the presence of contents in the node apart from qualifiers. More... | |
virtual bool APICALL | IsEmpty () const =0 |
Returns whether the node is empty. return A bool value indicating whether the contents and qualifiers of a node are empty. More... | |
virtual bool APICALL | HasChanged () const =0 |
Returns the status about any change done to the node or its children or qualifiers. returns a bool value indicating whether some changes have been performed on the node or its children or qualifiers. for a simple node, true will be returned in scenarios like when the node's value or qualifiers are modified. for an array node or a structure node, true will be returned in scenarios like when the node's children or the node's qualifiers are modified. More... | |
virtual void APICALL | AcknowledgeChanges () const __NOTHROW__=0 |
Acknowledges that changes for the node and its children and qualifiers have been taken care of. for a simple node, changes that will be acknowledged in scenarios like when the node's value or node's qualifiers were modified. for an array node or a structure node, changes will be acknowledged in scenarios like when the node's children were or the node's qualifiers were modified. More... | |
virtual void APICALL | Clear (bool contents=true, bool qualifiers=true)=0 |
Clear the contents of the node. More... | |
virtual spINode APICALL | Clone (bool ignoreEmptyNodes=false, bool ignoreNodesWithOnlyQualifiers=false) const =0 |
Virtual copy constructor. More... | |
XMP_PRIVATE spcINode | GetParent () const |
Gets the parent node of the node. More... | |
virtual spINode APICALL | GetParent ()=0 |
XMP_PRIVATE spcINodeIterator | QualifiersIterator () const |
virtual spINodeIterator APICALL | QualifiersIterator ()=0 |
XMP_PRIVATE spcINode | GetQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) const |
Gets the qualifier of the node having specified namespace and name. More... | |
virtual spINode APICALL | GetQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength)=0 |
XMP_PRIVATE spcISimpleNode | GetSimpleQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) const |
Get the node's qualifier having specified name space and name as simple node. More... | |
XMP_PRIVATE spISimpleNode | GetSimpleQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) |
XMP_PRIVATE spcIStructureNode | GetStructureQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) const |
Get the node's qualifier having specified name space and name as structure node. More... | |
XMP_PRIVATE spIStructureNode | GetStructureQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) |
XMP_PRIVATE spcIArrayNode | GetArrayQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) const |
Get the node's qualifier having specified name space and name as an array node. More... | |
XMP_PRIVATE spIArrayNode | GetArrayQualifier (const char *nameSpace, sizet nameSpaceLength, const char *name, sizet nameLength) |
XMP_PRIVATE spcISimpleNode | ConvertToSimpleNode () const |
Converts Node to a simple node, if possible. More... | |
virtual spISimpleNode APICALL | ConvertToSimpleNode ()=0 |
XMP_PRIVATE spcIStructureNode | ConvertToStructureNode () const |
Converts Node to a structure node type, if possible. More... | |
virtual spIStructureNode APICALL | ConvertToStructureNode ()=0 |
XMP_PRIVATE spcIArrayNode | ConvertToArrayNode () const |
Converts Node to an array node type, if possible. More... | |
virtual spIArrayNode APICALL | ConvertToArrayNode ()=0 |
XMP_PRIVATE spcIMetadata | ConvertToMetadata () const |
Converts Node to a metadata node type, if possible. More... | |
virtual spIMetadata APICALL | ConvertToMetadata ()=0 |
![]() | |
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... | |
![]() | |
virtual void APICALL | EnableThreadSafety () const __NOTHROW__=0 |
Enables the thread safety on an object. More... | |
virtual void APICALL | DisableThreadSafety () const __NOTHROW__=0 |
Disables the thread safety on an object. More... | |
virtual bool APICALL | IsThreadSafe () const =0 |
Informs whether object can be used across multiple threads or not. More... | |
Protected Member Functions | |
virtual | ~INode_v1 () __NOTHROW__ |
![]() | |
virtual | ~ISharedObject () __NOTHROW__=0 |
REQ_FRIEND_CLASS_DECLARATION () | |
![]() | |
virtual | ~IVersionable () |
REQ_FRIEND_CLASS_DECLARATION () | |
![]() | |
REQ_FRIEND_CLASS_DECLARATION () | |
Version1 of the interface that serves as a base interface to all types of nodes in the XMP DOM.
Provides all the functions to get various properties of the node.
Indicates various types of node available in XMP Data Model like simple, array and structure.
|
inlineprotectedvirtual |
|
pure virtual |
Acknowledges that changes for the node and its children and qualifiers have been taken care of. for a simple node, changes that will be acknowledged in scenarios like when the node's value or node's qualifiers were modified. for an array node or a structure node, changes will be acknowledged in scenarios like when the node's children were or the node's qualifiers were modified.
|
pure virtual |
Clear the contents of the node.
[in] | contents | A bool value controlling whether contents of the node should be cleared or not. |
[in] | qualifiers | A bool value controlling whether qualifiers of the node should be cleared or not. |
|
pure virtual |
Virtual copy constructor.
Clones the node creating an exact replica of the node which is not part of any metadata tree.
[in] | ignoreEmptyNodes | A bool value controlling whether to clone empty nodes or not. |
[in] | ignoreNodesWithOnlyQualifiers | A bool value controlling whether presence of only qualifiers should mark node as non empty. |
|
inline |
Converts Node to an array node type, if possible.
|
pure virtual |
|
inline |
Converts Node to a metadata node type, if possible.
|
pure virtual |
|
inline |
Converts Node to a simple node, if possible.
|
pure virtual |
|
inline |
Converts Node to a structure node type, if possible.
|
pure virtual |
|
inline |
|
inline |
Get the node's qualifier having specified name space and name as an array node.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
Definition at line 231 of file INode.h.
|
pure virtual |
Returns the index of the node in case it is an array item.
|
pure virtual |
Gets the local name of the node.
|
pure virtual |
Gets the name space of the node.
|
pure virtual |
Gets the node type of the node.
|
inline |
Gets the parent node of the node.
|
pure virtual |
|
pure virtual |
Gets the node type of the node's parent.
|
pure virtual |
Gets the path of the node from the root of the metadata.
|
inline |
Gets the qualifier of the node having specified namespace and name.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
Definition at line 160 of file INode.h.
|
pure virtual |
|
pure virtual |
Gets the type of the node's qualifier having specified namespace and name.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
|
inline |
|
inline |
Get the node's qualifier having specified name space and name as simple node.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
Definition at line 179 of file INode.h.
|
inline |
|
inline |
Get the node's qualifier having specified name space and name as structure node.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
Definition at line 205 of file INode.h.
|
pure virtual |
Returns the status about any change done to the node or its children or qualifiers. returns a bool value indicating whether some changes have been performed on the node or its children or qualifiers. for a simple node, true will be returned in scenarios like when the node's value or qualifiers are modified. for an array node or a structure node, true will be returned in scenarios like when the node's children or the node's qualifiers are modified.
|
pure virtual |
Returns whether the node has any content or not. return A bool value indicating the presence of contents in the node apart from qualifiers.
|
pure virtual |
Indicates whether the node has any qualifiers associated with it.
|
pure virtual |
Inserts a given qualifier node.
[in] | node | Shared pointer to an object of #AdobeXMPCore::INode representing the qualifier node to be inserted. |
|
pure virtual |
Indicates whether the node is a direct child of an array node.
|
pure virtual |
Returns whether the node is empty. return A bool value indicating whether the contents and qualifiers of a node are empty.
|
pure virtual |
Indicates whether the node is a qualifier node.
|
pure virtual |
Gets the count of the qualifiers attached with the node.
|
inline |
Get an iterator object to iterate over all the qualifier nodes attached to the composite node.
|
pure virtual |
|
pure virtual |
Removes the qualifier node with the specified nameSpace and name.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the qualifier node. |
[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 qualifier node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
|
pure virtual |
Replaces a given qualifier node.
[in] | node | Shared pointer to an object of #AdobeXMPCore::INode representing the qualifier node to be inserted. |
|
pure virtual |
Changes the local name of the node.
[in] | name | Pointer to a constant char buffer containing local name of the node. |
[in] | nameLength | Number of characters in name. In case name is null terminated set it to #AdobeXMPCommon::npos. |
|
pure virtual |
Changes the name space of the node.
[in] | nameSpace | Pointer to a constant char buffer containing name space URI of the node. |
[in] | nameSpaceLength | Number of characters in nameSpace. In case nameSpace is null terminated set it to #AdobeXMPCommon::npos. |