Main Page Modules Namespace List Data Structures File List Data Fields Examples

# DomNodeList.h

    00001 /*
    00002  * libsgml -- SGML state machine parsing library.
    00003  *
    00004  * Copyright (c) 2002 Uninformed Research (http://www.uninformed.org)
    00005  * All rights reserved.
    00006  *
    00007  * skape
    00008  * mmiller@hick.org
    00009  */
    00018 #ifndef _LIBSGML_DOMNODELIST_H
    00019 #define _LIBSGML_DOMNODELIST_H
    00020
    00021 #ifdef __cplusplus
    00022 extern "C" {
    00023 #endif
    00024
    00025 #include "DomNode.h"
    00026
    00030 typedef struct _dom_node_list_node {
    00031
    00035         DOM_NODE                   *node;
    00036
    00040         struct _dom_node_list_node *next;
    00041
    00042 } DOM_NODE_LIST_NODE;
    00043
    00047 typedef struct _dom_node_list {
    00048
    00052         struct _dom_node_list_node *firstNode;
    00056         struct _dom_node_list_node *lastNode;
    00057
    00061         unsigned long               entries;
    00062
    00063 } DOM_NODE_LIST;
    00064
    00070 DOM_NODE_LIST *domNodeListNew();
    00076 void domNodeListDestroy(DOM_NODE_LIST *nodeList);
    00077
    00084 void domNodeListAddNode(DOM_NODE_LIST *nodeList, DOM_NODE *node);
    00091 void domNodeListRemoveNode(DOM_NODE_LIST *nodeList, DOM_NODE *node);
    00092
    00099 unsigned long domNodeListGetNumEntries(DOM_NODE_LIST *nodeList);
    00106 DOM_NODE_LIST_NODE *domNodeListGetFirstNode(DOM_NODE_LIST *nodeList);
    00107
    00108 #ifdef __cplusplus
    00109 }
    00110 #endif
    00111
    00112 #endif