lib: Remove global xfile.h includes
[samba.git] / source3 / lib / tevent_barrier.h
1 /*
2    Unix SMB/CIFS implementation.
3    Implement a barrier
4    Copyright (C) Volker Lendecke 2012
5
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #ifndef _TEVENT_BARRIER_H
21 #define _TEVENT_BARRIER_H
22
23 #include "talloc.h"
24 #include "tevent.h"
25
26 struct tevent_barrier;
27
28 struct tevent_barrier *tevent_barrier_init(
29         TALLOC_CTX *mem_ctx, unsigned count,
30         void (*trigger_cb)(void *private_data), void *private_data);
31
32 struct tevent_req *tevent_barrier_wait_send(TALLOC_CTX *mem_ctx,
33                                             struct tevent_context *ev,
34                                             struct tevent_barrier *b);
35 int tevent_barrier_wait_recv(struct tevent_req *req);
36
37 #endif /* _TEVENT_BARRIER_H */