source: trunk/libtransmission/trevent.h @ 9671

Last change on this file since 9671 was 9671, checked in by charles, 12 years ago

(trunk) update the copyright notices

  • Property svn:keywords set to Date Rev Author Id
File size: 1.4 KB
Line 
1/*
2 * This file Copyright (C) 2007-2009 Mnemosyne LLC
3 *
4 * This file is licensed by the GPL version 2.  Works owned by the
5 * Transmission project are granted a special exemption to clause 2(b)
6 * so that the bulk of its code can remain under the MIT license.
7 * This exemption does not extend to derived works not owned by
8 * the Transmission project.
9 *
10 * $Id: trevent.h 9671 2009-12-05 02:19:24Z charles $
11 */
12
13#ifndef __TRANSMISSION__
14#error only libtransmission should #include this header.
15#endif
16
17#ifndef TR_EVENT_H
18#define TR_EVENT_H
19
20#include <stddef.h> /* size_t */
21#include <inttypes.h> /* uint64_t */
22
23/**
24**/
25
26void      tr_eventInit( tr_session * );
27
28void      tr_eventClose( tr_session * );
29
30struct event_base * tr_eventGetBase( tr_session * );
31
32
33typedef struct tr_timer  tr_timer;
34
35/**
36 * Calls timer_func(user_data) after the specified interval.
37 * The timer is freed if timer_func returns zero.
38 * Otherwise, it's called again after the same interval.
39 */
40tr_timer* tr_timerNew( tr_session * handle,
41                       int func( void * user_data ),
42                       void * user_data,
43                       uint64_t timeout_milliseconds );
44
45/**
46 * Frees a timer and sets the timer pointer to NULL.
47 */
48void      tr_timerFree( tr_timer ** timer );
49
50
51tr_bool   tr_amInEventThread( tr_session * );
52
53void      tr_runInEventThread( tr_session * session,
54                               void         func( void* ),
55                               void       * user_data );
56
57#endif
Note: See TracBrowser for help on using the repository browser.