Freeciv-3.2
Loading...
Searching...
No Matches
update_queue.h
Go to the documentation of this file.
1/***********************************************************************
2 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
6 any later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12***********************************************************************/
13#ifndef FC__UPDATE_QUEUE_H
14#define FC__UPDATE_QUEUE_H
15
16#ifdef __cplusplus
17extern "C" {
18#endif /* __cplusplus */
19
20typedef void (*uq_callback_t) (void *data);
21typedef void (*uq_free_fn_t) (void *data);
22#define UQ_FREEDATA(fn) ((uq_free_fn_t) fn)
23
24/* General update queue. */
25void update_queue_init(void);
26void update_queue_free(void);
27
28void update_queue_freeze(void);
29void update_queue_thaw(void);
31bool update_queue_is_frozen(void);
32
35
36/* User interface. */
39 uq_free_fn_t free_data_func);
42 const void **data,
43 uq_free_fn_t *free_data_func);
44
47 void *data);
50 void *data,
52 free_data_func);
55 void *data);
58 void *data,
60 free_data_func);
61
63
64#ifdef __cplusplus
65}
66#endif /* __cplusplus */
67
68#endif /* FC__UPDATE_QUEUE_H */
char * incite_cost
Definition comments.c:75
bool update_queue_is_switching_page(void)
void update_queue_free(void)
bool update_queue_is_frozen(void)
void update_queue_connect_processing_finished_full(int request_id, uq_callback_t callback, void *data, uq_free_fn_t free_data_func)
void update_queue_add_full(uq_callback_t callback, void *data, uq_free_fn_t free_data_func)
void update_queue_connect_processing_started(int request_id, uq_callback_t callback, void *data)
void(* uq_free_fn_t)(void *data)
void update_queue_thaw(void)
void update_queue_init(void)
void(* uq_callback_t)(void *data)
bool update_queue_has_callback_full(uq_callback_t callback, const void **data, uq_free_fn_t *free_data_func)
void update_queue_freeze(void)
void update_queue_force_thaw(void)
void update_queue_connect_processing_started_full(int request_id, uq_callback_t callback, void *data, uq_free_fn_t free_data_func)
void update_queue_processing_finished(int request_id)
void update_queue_connect_processing_finished(int request_id, uq_callback_t callback, void *data)
void update_queue_add(uq_callback_t callback, void *data)
void update_queue_processing_started(int request_id)
bool update_queue_has_callback(uq_callback_t callback)