X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Fllist.h;h=428109049635f191d3174c59d69579573def3c27;hb=fa3bd303779957c5af3350b1a51ceb8158e05282;hp=25fb95ff66e9701e74cfd088f1943cd52fb2cd3d;hpb=b32af35fb9dc1d6139e6a246f53037497eb0c890;p=vpp.git diff --git a/src/vppinfra/llist.h b/src/vppinfra/llist.h index 25fb95ff66e..42810904963 100644 --- a/src/vppinfra/llist.h +++ b/src/vppinfra/llist.h @@ -51,6 +51,44 @@ typedef struct clib_llist_anchor * @return pool entry index */ #define clib_llist_entry_index(LP,E) ((E) - (LP)) +/** + * Alloc new element + * + * @param LP linked list pool + * @param E element to be returned + */ +#define clib_llist_get(LP, E) pool_get (LP, E) +/** + * Free element + * + * @param LP linked list pool + * @param E element to be freed + */ +#define clib_llist_put(LP, E) pool_put (LP, E) +/** + * Free list supporting container + * + * @param LP linked list pool + */ +#define clib_llist_free(LP) pool_free (LP) +/** + * Get list elt at index + * + * @param LP linked list pool + * @param EI element index + * @return element + */ +#define clib_llist_elt(LP, EI) pool_elt_at_index (LP, EI) +/** + * Get number of elements in supporting container + * + * This is NOT the elements linked in the list but the number of + * elements consumed out of the supporting pool + * + * @param LP linked list pool + * @return number of elements + */ +#define clib_llist_elts(LP) pool_elts (LP) /** * Get prev list entry index *