RXmlEngNodeListImpl Class Reference

class RXmlEngNodeListImpl

This class should not be used directly. However, it defines the interface for RXmlEngNodeList<TXmlEngNode> through template specialization.

RXmlEngNodeList

This class implements an iterator or filtered iterator for a tree. The OpenL() methods control which nodes are included in the iterator. It is possible to iterate across all node types or only a single type. It is possible to iterate only over nodes within a specific namespace. It is also possible to iterate over nodes with the same name.

Public Member Functions
RXmlEngNodeListImpl()
IMPORT_C voidClose()
IMPORT_C TIntCount()
IMPORT_C TBoolHasNext()
IMPORT_C TXmlEngNodeNext()
voidOpen(void *, TXmlEngNode::TXmlEngDOMNodeType)
voidOpenL(void *, TXmlEngNode::TXmlEngDOMNodeType, const TDesC8 &, const TDesC8 &)
Private Member Functions
void *FindNextNode(void *)
Private Attributes
void *iCurrentNode
unsigned char *iName
unsigned char *iNsUri
TInt iType

Constructor & Destructor Documentation

RXmlEngNodeListImpl()

IMPORT_CRXmlEngNodeListImpl()

Default constructor

Member Functions Documentation

Close()

IMPORT_C voidClose()

Closes a node list. This does not affect any of the nodes. Only internally used memory is freed.

Count()

IMPORT_C TIntCount()const

Gets the list length. Number of nodes in the list

FindNextNode(void *)

void *FindNextNode(void *aCurrentNode)const [private]

Finds the next node in the list according to the criteria specified in OpenL(). The next node or NULL if no next node

Parameters

void * aCurrentNodeThe current node pointer

HasNext()

IMPORT_C TBoolHasNext()const

Checks whether the next node exists in the list ETrue if the next node exists, EFalse otherwise

Next()

IMPORT_C TXmlEngNodeNext()

Gets the next node in the list The next node or NULL if it does not exist

Open(void *, TXmlEngNode::TXmlEngDOMNodeType)

voidOpen(void *aHead,
TXmlEngNode::TXmlEngDOMNodeTypeaType
)

Initializes the list. The parameters to this method control what nodes are included in the list. If aType is NULL, all nodes are included in the list.

Parameters

void * aHeadThe first node in the list
TXmlEngNode::TXmlEngDOMNodeType aTypeOnly include nodes of this type

OpenL(void *, TXmlEngNode::TXmlEngDOMNodeType, const TDesC8 &, const TDesC8 &)

voidOpenL(void *aHead,
TXmlEngNode::TXmlEngDOMNodeTypeaType,
const TDesC8 &aName =  KNullDesC8 ,
const TDesC8 &aNs =  KNullDesC8
)

Initializes the list. The parameters to this method control what nodes are included in the list. If aType is NULL, all nodes are included in the list. Both aName and aNs, if specified, are copied internally.

leave

  • One of the system-wide error codes

Parameters

void * aHeadThe first node in the list
TXmlEngNode::TXmlEngDOMNodeType aTypeOnly include nodes of this type
const TDesC8 & aName =  KNullDesC8 Only include nodes that match this name
const TDesC8 & aNs =  KNullDesC8 Only include nodes that match this namespace

Member Data Documentation

void * iCurrentNode

void *iCurrentNode[private]

unsigned char * iName

unsigned char *iName[private]

unsigned char * iNsUri

unsigned char *iNsUri[private]

TInt iType

TInt iType[private]