Linux Perf
progress.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _PERF_UI_PROGRESS_H_
3 #define _PERF_UI_PROGRESS_H_ 1
4 
5 #include <linux/types.h>
6 
7 void ui_progress__finish(void);
8 
9 struct ui_progress {
10  const char *title;
11  u64 curr, next, step, total;
12  bool size;
13 };
14 
15 void __ui_progress__init(struct ui_progress *p, u64 total,
16  const char *title, bool size);
17 
18 #define ui_progress__init(p, total, title) \
19  __ui_progress__init(p, total, title, false)
20 
21 #define ui_progress__init_size(p, total, title) \
22  __ui_progress__init(p, total, title, true)
23 
24 void ui_progress__update(struct ui_progress *p, u64 adv);
25 
27  void (*init)(struct ui_progress *p);
28  void (*update)(struct ui_progress *p);
29  void (*finish)(void);
30 };
31 
32 extern struct ui_progress_ops *ui_progress__ops;
33 
34 #endif
u64 curr
Definition: progress.h:11
struct ui_progress_ops * ui_progress__ops
Definition: progress.c:15
void ui_progress__finish(void)
Definition: progress.c:44
const char * title
Definition: progress.h:10
void __ui_progress__init(struct ui_progress *p, u64 total, const char *title, bool size)
Definition: progress.c:31
u64 total
Definition: progress.h:11
u64 step
Definition: progress.h:11
void ui_progress__update(struct ui_progress *p, u64 adv)
Definition: progress.c:17
u64 next
Definition: progress.h:11
int(* init)(struct perf_evsel *evsel)
Definition: evsel.c:61
bool size
Definition: progress.h:12