X-Git-Url: https://git.librecmc.org/?p=oweals%2Fopkg-lede.git;a=blobdiff_plain;f=libopkg%2Factive_list.h;h=70d2af8a3884159914926e106c67a39a53071f57;hp=a32070fc0354ffaa664bc2ce3d26ffcb93b5134e;hb=4a5627af1ecf0061c99409f4a3b4e84de5e58f30;hpb=261c929147fe205f35a57df70b4c126148903416 diff --git a/libopkg/active_list.h b/libopkg/active_list.h index a32070f..70d2af8 100644 --- a/libopkg/active_list.h +++ b/libopkg/active_list.h @@ -23,14 +23,22 @@ struct active_list { struct list_head node; struct list_head depend; - char walked; struct active_list *depended; }; -struct active_list * active_list_next(struct active_list *head, struct active_list *ptr); + +struct active_list * active_list_head_new(); +void active_list_head_delete(struct active_list *); void active_list_init(struct active_list *ptr); void active_list_clear(struct active_list *head); void active_list_add_depend(struct active_list *node, struct active_list *depend); void active_list_add(struct active_list *head, struct active_list *node); +struct active_list *active_list_move_node(struct active_list *old_head, struct active_list *new_head, struct active_list *node); + +struct active_list * active_list_sort(struct active_list *head, int (*compare_fcn_t)(const void *, const void *)); + +struct active_list * active_list_next(struct active_list *head, struct active_list *ptr); + +struct active_list * active_list_prev(struct active_list *head, struct active_list *ptr); #endif