Commit | Line | Data |
---|---|---|
d086f507 | 1 | /* |
ab5be9fa MJ |
2 | * Copyright (C) 2017 Julien Desfossez <jdesfossez@efficios.com> |
3 | * Copyright (C) 2018 Jérémie Galarneau <jeremie.galarneau@efficios.com> | |
d086f507 | 4 | * |
ab5be9fa | 5 | * SPDX-License-Identifier: GPL-2.0-only |
d086f507 | 6 | * |
d086f507 JD |
7 | */ |
8 | ||
9 | #ifndef SESSIOND_TIMER_H | |
10 | #define SESSIOND_TIMER_H | |
11 | ||
12 | #include <pthread.h> | |
bc26e826 | 13 | #include <stdbool.h> |
d086f507 JD |
14 | |
15 | #include "session.h" | |
16 | ||
d086f507 | 17 | struct timer_thread_parameters { |
92816cc3 | 18 | struct rotation_thread_timer_queue *rotation_thread_job_queue; |
d086f507 JD |
19 | }; |
20 | ||
92816cc3 | 21 | int timer_signal_init(void); |
d086f507 | 22 | |
92816cc3 JG |
23 | /* Start a session's rotation pending check timer (one-shot mode). */ |
24 | int timer_session_rotation_pending_check_start(struct ltt_session *session, | |
259c2674 | 25 | unsigned int interval_us); |
92816cc3 JG |
26 | /* Stop a session's rotation pending check timer. */ |
27 | int timer_session_rotation_pending_check_stop(struct ltt_session *session); | |
259c2674 | 28 | |
92816cc3 JG |
29 | /* Start a session's rotation schedule timer. */ |
30 | int timer_session_rotation_schedule_timer_start(struct ltt_session *session, | |
259c2674 | 31 | unsigned int interval_us); |
92816cc3 JG |
32 | /* Stop a session's rotation schedule timer. */ |
33 | int timer_session_rotation_schedule_timer_stop(struct ltt_session *session); | |
d88744a4 | 34 | |
bc26e826 JG |
35 | bool launch_timer_thread( |
36 | struct timer_thread_parameters *timer_thread_parameters); | |
37 | ||
d086f507 | 38 | #endif /* SESSIOND_TIMER_H */ |