Fix License in spec
[platform/upstream/libwebsockets.git] / lib / event-libs / libev / private.h
1 /*
2  * libwebsockets - small server side websockets and web server implementation
3  *
4  * Copyright (C) 2010 - 2018 Andy Green <andy@warmcat.com>
5  *
6  *  This library is free software; you can redistribute it and/or
7  *  modify it under the terms of the GNU Lesser General Public
8  *  License as published by the Free Software Foundation:
9  *  version 2.1 of the License.
10  *
11  *  This library 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 GNU
14  *  Lesser General Public License for more details.
15  *
16  *  You should have received a copy of the GNU Lesser General Public
17  *  License along with this library; if not, write to the Free Software
18  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19  *  MA  02110-1301  USA
20  *
21  *  This is included from core/private.h if LWS_WITH_LIBEV
22  */
23
24 #include <ev.h>
25
26 #define LWS_EV_REFCOUNT_STATIC_HANDLE_NEW(_x, _ctx) \
27                 { (_x)->data = _ctx; \
28                 _ctx->count_event_loop_static_asset_handles++; }
29 #define LWS_EV_REFCOUNT_STATIC_HANDLE_TO_CONTEXT(_x) \
30                         ((struct lws_context *)(_x)->data)))
31 #define LWS_EV_REFCOUNT_STATIC_HANDLE_DESTROYED(_x) \
32                 (--(LWS_UV_REFCOUNT_STATIC_HANDLE_TO_CONTEXT(_x)-> \
33                                 count_event_loop_static_asset_handles))
34
35 struct lws_pt_eventlibs_libev {
36         struct ev_loop *io_loop;
37         struct ev_timer hrtimer;
38         struct ev_idle idle;
39 };
40
41 struct lws_io_watcher_libev {
42         ev_io watcher;
43 };
44
45 struct lws_signal_watcher_libev {
46         ev_signal watcher;
47 };
48
49 struct lws_context_eventlibs_libev {
50         int placeholder;
51 };
52
53 extern struct lws_event_loop_ops event_loop_ops_ev;