 |
XMP Toolkit SDK
6.0.0
|
Go to the documentation of this file. 1 #ifndef __INodeIterator_h__
2 #define __INodeIterator_h__ 1
46 virtual spINode APICALL GetNode() = 0;
48 return const_cast< INodeIterator *
>( this )->GetNode();
61 auto node = GetNode();
62 if ( node )
return node->ConvertToSimpleNode();
67 return const_cast< INodeIterator *
>( this )->GetSimpleNode();
79 auto node = GetNode();
80 if ( node )
return node->ConvertToStructureNode();
85 return const_cast< INodeIterator *
>( this )->GetStructureNode();
97 auto node = GetNode();
98 if ( node )
return node->ConvertToArrayNode();
103 return const_cast< INodeIterator *
>( this )->GetArrayNode();
115 return const_cast< INodeIterator *
>( this )->Next();
130 return const_cast< INodeIterator *
>( this )->GetActualINodeIterator();
142 return const_cast< INodeIterator *
>( this )->GetINodeIterator_I();
186 #ifdef FRIEND_CLASS_DECLARATION
187 FRIEND_CLASS_DECLARATION();
195 #endif // __INodeIterator_h__
eNodeType
Indicates various types of node available in XMP Data Model like simple, array and structure.
XMP_PRIVATE spcINodeIterator APICALL Next() const
INodeIterator_I * pINodeIterator_I
XMP_PRIVATE spIArrayNode GetArrayNode()
Gets the iterator's currently pointed node as an array node, if possible.
const typedef INodeIterator * pcINodeIterator
Version1 of the interface that serves as a base interface to all types of nodes in the XMP DOM.
shared_ptr< const INodeIterator > spcINodeIterator
shared_ptr< IStructureNode > spIStructureNode
shared_ptr< ISimpleNode > spISimpleNode
const typedef INodeIterator_I * pcINodeIterator_I
shared_ptr< INodeIterator > spINodeIterator
Interface that represents an iterator over the mutable children of a XMP DOM Node.
XMP_PRIVATE spcISimpleNode GetSimpleNode() const
XMP_PRIVATE spcIStructureNode GetStructureNode() const
Interface that serves as the base interface for all the externally exposed interfaces which needs to ...
shared_ptr< IArrayNode > spIArrayNode
shared_ptr< const ISimpleNode > spcISimpleNode
#define REQ_FRIEND_CLASS_DECLARATION()
shared_ptr< INode > spINode
shared_ptr< const IArrayNode > spcIArrayNode
virtual ~INodeIterator_v1() __NOTHROW__
shared_ptr< const IStructureNode > spcIStructureNode
INodeIterator * pINodeIterator
const typedef IError_v1 * pcIError_base
XMP_PRIVATE spcIArrayNode GetArrayNode() const
XMP_PRIVATE spIStructureNode GetStructureNode()
Gets the iterator's currently pointed node as structure node, if possible.
XMP_PRIVATE spISimpleNode GetSimpleNode()
Gets the iterator's currently pointed node as simple node, if possible.
shared_ptr< const INode > spcINode
static const uint64 kINodeIteratorID(0x634e6f6465497420)
XMP_PRIVATE spcINode APICALL GetNode() const
Interface that serves as the base interface of all the externally exposed interfaces.