1 #ifndef ETPAN_THREAD_MANAGER_TYPES_H
3 #define ETPAN_THREAD_MANAGER_TYPES_H
6 #include <libetpan/libetpan.h>
8 struct etpan_thread_manager {
11 carray * thread_pending;
12 int can_create_thread;
20 struct etpan_thread_manager * manager;
26 carray * op_done_list;
31 struct mailsem * start_sem;
32 struct mailsem * stop_sem;
33 struct mailsem * op_sem;
36 struct etpan_thread_op {
37 struct etpan_thread * thread;
39 void (* run)(struct etpan_thread_op * op);
41 void (* callback)(int cancelled, void * result, void * callback_data);
44 void (* cleanup)(struct etpan_thread_op * op);