X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Fecoli_node.h;h=67652ab073fcd4c419170a053324a101b777d875;hb=eaaf443bad651bd0b01f0bde3668a0f7d7f2dff0;hp=9bf459dd3a82f77abf84177a3a2987a82f99ba1e;hpb=8c1e15f7d7e507c02f41ef9c3dbe310005ce369f;p=protos%2Flibecoli.git diff --git a/lib/ecoli_node.h b/lib/ecoli_node.h index 9bf459d..67652ab 100644 --- a/lib/ecoli_node.h +++ b/lib/ecoli_node.h @@ -85,6 +85,8 @@ typedef void (*ec_node_free_priv_t)(struct ec_node *); typedef size_t (*ec_node_get_children_count_t)(const struct ec_node *); typedef struct ec_node * (*ec_node_get_child_t)(const struct ec_node *, size_t i); +typedef unsigned int (*ec_node_get_child_refs_t)(const struct ec_node *, + size_t i); /** * A structure describing a node type. @@ -104,6 +106,7 @@ struct ec_node_type { ec_node_free_priv_t free_priv; ec_node_get_children_count_t get_children_count; ec_node_get_child_t get_child; + ec_node_get_child_refs_t get_child_refs; }; /** @@ -176,8 +179,8 @@ const struct ec_config *ec_node_get_config(struct ec_node *node); size_t ec_node_get_children_count(const struct ec_node *node); struct ec_node * ec_node_get_child(const struct ec_node *node, size_t i); -int ec_node_add_child(struct ec_node *node, struct ec_node *child); -int ec_node_del_child(struct ec_node *node, struct ec_node *child); +unsigned int +ec_node_get_child_refs(const struct ec_node *node, size_t i); /* XXX add more accessors */ const struct ec_node_type *ec_node_type(const struct ec_node *node);