--- a/epoc32/include/xmlengnodelist_impl.h Tue Nov 24 13:55:44 2009 +0000
+++ b/epoc32/include/xmlengnodelist_impl.h Tue Mar 16 16:12:26 2010 +0000
@@ -1,1 +1,122 @@
-xmlengnodelist_impl.h
+/*
+* Copyright (c) 2004-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
+* which accompanies this distribution, and is available
+* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Node list implementation functions
+*
+*/
+
+
+
+
+
+
+
+#ifndef XMLENGINE_NODELIST_IMPL_H_INCLUDED
+#define XMLENGINE_NODELIST_IMPL_H_INCLUDED
+
+#include <e32def.h>
+#include "xmlengnode.h"
+
+/**
+ * Class implements list container.
+ *
+ * @lib XmlEngineDOM.lib
+ * @since S60 v3.2
+ */
+class RXmlEngNodeListImpl
+{
+public:
+
+ /**
+ * Default constructor
+ *
+ * @since S60 v3.2
+ */
+ IMPORT_C RXmlEngNodeListImpl();
+
+ /**
+ * Closes node list
+ *
+ * @since S60 v3.2
+ */
+ IMPORT_C void Close();
+
+ /**
+ * Get list length.
+ *
+ * @since S60 v3.2
+ * @return Number of nodes in a node list
+ */
+ IMPORT_C TInt Count() const;
+
+ /**
+ * Checks whether next node exists in a node list
+ *
+ * @since S60 v3.2
+ * @return TRUE if next node exists, FALSE otherwise
+ */
+ IMPORT_C TBool HasNext() const;
+
+ /**
+ * Retrieves next node from a node list
+ *
+ * @since S60 v3.2
+ * @return Next node
+ */
+ IMPORT_C TXmlEngNode Next();
+
+ /**
+ * Opens node.
+ *
+ * @since S60 v3.2
+ * @param aHead node pointer to the node from which the searching
+ of list elements is started
+ * @param aType type of list elements
+ * @param aName name of list elements
+ * @param aNs namespace of list elements
+ *
+ * @note If aType is NULL, aName and aNs are ignored
+ */
+ void OpenL(
+ void* aHead,
+ TXmlEngNode::TXmlEngDOMNodeType aType,
+ const TDesC8& aName = KNullDesC8,
+ const TDesC8& aNs = KNullDesC8);
+
+ /**
+ * Opens node.
+ *
+ * @since S60 v3.2
+ * @param aHead node pointer to the node from which the searching
+ of list elements is started
+ * @param aType type of list elements
+ */
+ void Open(
+ void* aHead,
+ TXmlEngNode::TXmlEngDOMNodeType aType);
+
+private:
+
+ void* FindNextNode(void* aCurrentNode) const;
+
+ void* iCurrentNode;
+ TInt iType; // NodeType:4 bits (0-3) & MatchName flag (bit 4)
+ unsigned char* iName;
+ unsigned char* iNsUri;
+};
+
+TBool StrEqualOrNull(const void* aStr1, const void* aStr2);
+
+
+
+#endif /* XMLENGINE_NODELIST_IMPL_H_INCLUDED */