Commit | Line | Data |
---|---|---|
d086f507 JD |
1 | /* |
2 | * Copyright (C) 2017 - Julien Desfossez <jdesfossez@efficios.com> | |
92816cc3 | 3 | * Copyright (C) 2018 - Jérémie Galarneau <jeremie.galarneau@efficios.com> |
d086f507 JD |
4 | * |
5 | * This program is free software; you can redistribute it and/or modify | |
6 | * it under the terms of the GNU General Public License, version 2 only, | |
7 | * as published by the Free Software Foundation. | |
8 | * | |
9 | * This program is distributed in the hope that it will be useful, but WITHOUT | |
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
12 | * more details. | |
13 | * | |
14 | * You should have received a copy of the GNU General Public License along | |
15 | * with this program; if not, write to the Free Software Foundation, Inc., | |
16 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
17 | */ | |
18 | ||
19 | #ifndef SESSIOND_TIMER_H | |
20 | #define SESSIOND_TIMER_H | |
21 | ||
22 | #include <pthread.h> | |
23 | ||
24 | #include "session.h" | |
25 | ||
d086f507 | 26 | struct timer_thread_parameters { |
92816cc3 | 27 | struct rotation_thread_timer_queue *rotation_thread_job_queue; |
d086f507 JD |
28 | }; |
29 | ||
92816cc3 JG |
30 | int timer_signal_init(void); |
31 | void *timer_thread_func(void *data); | |
d086f507 | 32 | |
92816cc3 | 33 | void timer_exit(void); |
d086f507 | 34 | |
92816cc3 JG |
35 | /* Start a session's rotation pending check timer (one-shot mode). */ |
36 | int timer_session_rotation_pending_check_start(struct ltt_session *session, | |
259c2674 | 37 | unsigned int interval_us); |
92816cc3 JG |
38 | /* Stop a session's rotation pending check timer. */ |
39 | int timer_session_rotation_pending_check_stop(struct ltt_session *session); | |
259c2674 | 40 | |
92816cc3 JG |
41 | /* Start a session's rotation schedule timer. */ |
42 | int timer_session_rotation_schedule_timer_start(struct ltt_session *session, | |
259c2674 | 43 | unsigned int interval_us); |
92816cc3 JG |
44 | /* Stop a session's rotation schedule timer. */ |
45 | int timer_session_rotation_schedule_timer_stop(struct ltt_session *session); | |
d88744a4 | 46 | |
d086f507 | 47 | #endif /* SESSIOND_TIMER_H */ |