Go to the documentation of this file.
20 # define BATCH_SIZE 16
21 # define C_MASK 0xFF000000
22 # define P_TIME_LEN 80
57 void (*
key_map)(
int*, SDL_Keycode,
void*,
bool state);
123 void *prg_d, uint16_t thr_count);
t_data_thr * data_thr
Definition: libui.h:55
t_sdl * sdl
Definition: libui.h:76
int height_vp
Definition: libui.h:53
void(* render_gui)(void *arg)
Definition: libui.h:61
float gui_time[GUI_FPS]
Definition: libui.h:69
int idx
Definition: libui.h:75
void push_render_time(t_sdl *sdl, float time_frame_ms)
Definition: render_time.c:15
void * prg_data
Definition: libui.h:95
short idle_count
Definition: libui.h:91
bool sepia
Definition: libui.h:63
uint32_t * pixels
Definition: libui.h:36
pthread_t * thrs
Definition: libui.h:96
short thr_count
Definition: libui.h:84
int(* do_pxl)(int, int, void *)
Definition: libui.h:77
t_img img
Definition: libui.h:45
int destroy_pool(t_thr_pool *pool)
Definition: render_pool.c:123
float render_time[P_TIME_LEN]
Definition: libui.h:68
int is_stopped
Definition: libui.h:83
t_sdl * init_sdl(int width, int height)
Definition: init_sdl.c:19
pthread_mutex_t idle_lock
Definition: libui.h:90
void(* click_map)(SDL_Event *, void *)
Definition: libui.h:59
int width
Definition: libui.h:37
int height
Definition: libui.h:38
int(* do_pxl)(int, int, void *)
Definition: libui.h:94
void render_mthr_sdl(t_sdl *sdl)
Definition: render_mthr_sdl.c:90
int pxl_idx
Definition: libui.h:87
bool sub_s
Definition: libui.h:67
int width_vp
Definition: libui.h:52
int pool_render(t_thr_pool *pool)
Definition: render_pool.c:101
bool layout
Definition: libui.h:51
int limit
Definition: libui.h:88
void push_gui_time(t_sdl *sdl, long new_frame)
Definition: render_time.c:25
#define P_TIME_LEN
Definition: libui.h:22
void(* update)(void *arg)
Definition: libui.h:60
t_sdl * sdl
Definition: libui.h:93
void apply_simple_filter(t_sdl *sdl, uint32_t(*fun)(uint32_t))
void render_sdl(t_sdl *sdl, int(*f)(int, int, void *), void *d)
Definition: render_sdl.c:31
bool cartoon
Definition: libui.h:65
int init_pool(t_sdl *sdl, int(*do_pxl)(int, int, void *), void *prg_d, uint16_t thr_count)
Definition: render_pool.c:70
void exit_sdl(t_sdl *sdl)
Definition: exit_sdl.c:16
bool fullscreen
Definition: libui.h:50
void * prg_data
Definition: libui.h:78
void(* key_map)(int *, SDL_Keycode, void *, bool state)
Definition: libui.h:57
void error_sdl(t_sdl *sdl)
Definition: error_sdl.c:17
void save_screenshot(t_sdl *sdl, char *arg)
Definition: save_screenshot.c:66
pthread_mutex_t wait_lock
Definition: libui.h:85
bool needs_render
Definition: libui.h:48
int sub_sample
Definition: libui.h:47
pthread_cond_t render_done
Definition: libui.h:92
int thr_len
Definition: libui.h:54
void prep_render(t_sdl *sdl)
Definition: pre_render.c:52
float progress_sub_sample
Definition: libui.h:46
bool grayscale
Definition: libui.h:64
bool negative
Definition: libui.h:66
uint32_t * pixels
Definition: libui.h:74
#define GUI_FPS
Definition: libui.h:23
bool partial_render
Definition: libui.h:49
void(* mouse_map)(SDL_Event *, void *)
Definition: libui.h:58
int x
Definition: libui.h:27
void init_mthr_sdl(t_sdl *sdl, int(*do_pxl)(int, int, void *), void *data, void(*prep_render)(t_sdl *))
Definition: init_mthr_sdl.c:18
void(* prep_render)(t_sdl *sdl)
Definition: libui.h:62
SDL_Window * win
Definition: libui.h:56
void mthr_task(t_data_thr *data_thr, void *(*func)(void *))
Definition: init_mthr_sdl.c:41
pthread_mutex_t idx_lock
Definition: libui.h:89
pthread_cond_t wait_sig
Definition: libui.h:86
int y
Definition: libui.h:28
void loop_sdl(t_sdl *sdl, void *arg)
Loop waiting for events to happen.
Definition: loop_sdl.c:61