Commit c60e9577 authored by Philipp Schafft's avatar Philipp Schafft 🦁

Feature: Added a database to store definitions

parent 903ac2f1
......@@ -102,6 +102,7 @@ typedef struct module_container_tag module_container_t;
typedef struct reportxml_tag reportxml_t;
typedef struct reportxml_node_tag reportxml_node_t;
typedef struct reportxml_database_tag reportxml_database_t;
/* ---[ refobject.[ch] ]--- */
......@@ -114,6 +115,7 @@ typedef union __attribute__ ((__transparent_union__)) {
module_container_t *module_container;
reportxml_t *reportxml;
reportxml_node_t *reportxml_node;
reportxml_database_t *reportxml_database;
} refobject_t;
typedef void * refobject_t;
This diff is collapsed.
......@@ -41,6 +41,7 @@ xmlDocPtr reportxml_render_xmldoc(reportxml_t *report);
reportxml_node_t * reportxml_node_new(reportxml_node_type_t type, const char *id, const char *definition, const char *akindof);
reportxml_node_t * reportxml_node_parse_xmlnode(xmlNodePtr xmlnode);
reportxml_node_t * reportxml_node_copy(reportxml_node_t *node);
xmlNodePtr reportxml_node_render_xmlnode(reportxml_node_t *node);
reportxml_node_type_t reportxml_node_get_type(reportxml_node_t *node);
int reportxml_node_set_attribute(reportxml_node_t *node, const char *key, const char *value);
......@@ -51,4 +52,9 @@ reportxml_node_t * reportxml_node_get_child(reportxml_node_t *node, size_t
int reportxml_node_set_content(reportxml_node_t *node, const char *value);
char * reportxml_node_get_content(reportxml_node_t *node);
reportxml_database_t * reportxml_database_new(void);
int reportxml_database_add_report(reportxml_database_t *db, reportxml_t *report);
reportxml_node_t * reportxml_database_build_node(reportxml_database_t *db, const char *id, ssize_t depth);
reportxml_t * reportxml_database_build_report(reportxml_database_t *db, const char *id, ssize_t depth);
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment