xref: /linux-6.15/tools/perf/util/pstack.h (revision cf99ec15)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
23e1bbdc3SArnaldo Carvalho de Melo #ifndef _PERF_PSTACK_
33e1bbdc3SArnaldo Carvalho de Melo #define _PERF_PSTACK_
43e1bbdc3SArnaldo Carvalho de Melo 
5d1b4f249SArnaldo Carvalho de Melo #include <stdbool.h>
6d1b4f249SArnaldo Carvalho de Melo 
73e1bbdc3SArnaldo Carvalho de Melo struct pstack;
83e1bbdc3SArnaldo Carvalho de Melo struct pstack *pstack__new(unsigned short max_nr_entries);
9316c7136SArnaldo Carvalho de Melo void pstack__delete(struct pstack *pstack);
10316c7136SArnaldo Carvalho de Melo bool pstack__empty(const struct pstack *pstack);
11316c7136SArnaldo Carvalho de Melo void pstack__remove(struct pstack *pstack, void *key);
12316c7136SArnaldo Carvalho de Melo void pstack__push(struct pstack *pstack, void *key);
13c8539e3fSNamhyung Kim void *pstack__peek(struct pstack *pstack);
143e1bbdc3SArnaldo Carvalho de Melo 
153e1bbdc3SArnaldo Carvalho de Melo #endif /* _PERF_PSTACK_ */
16