RT
t_data.h
Go to the documentation of this file.
1 /* ************************************************************************** */
2 /* */
3 /* ::: :::::::: */
4 /* t_data.h :+: :+: :+: */
5 /* +:+ +:+ +:+ */
6 /* By: nihuynh <nihuynh@student.42.fr> +#+ +:+ +#+ */
7 /* +#+#+#+#+#+ +#+ */
8 /* Created: 2019/06/03 00:06:56 by nihuynh #+# #+# */
9 /* Updated: 2019/06/26 17:46:31 by nihuynh ### ########.fr */
10 /* */
11 /* ************************************************************************** */
12 
13 #ifndef T_DATA_H
14 # define T_DATA_H
15 
16 # include "option.h"
17 # include "rtstruct.h"
18 # include "t_scene.h"
19 # include "ftlist.h"
20 # include "libui.h"
21 # include "t_gui.h"
22 # include "t_settings.h"
23 
24 typedef struct s_data
25 {
26  char *arg;
27  t_option option;
30  t_list *lst_mat;
31  t_list *lst_tex;
32  t_list *lst_scenes;
36 } t_data;
37 
38 /*
39 ** Core :
40 */
41 
42 int process_pixel(int x, int y, void *arg);
43 void prep_render(t_sdl *sdl);
44 t_obj *find_obj_at_pixel(t_data *app, int x, int y);
45 void interface(t_data *app);
46 t_data *get_app(t_data *app);
47 void free_app(t_data *app);
48 /*
49 ** Loading :
50 */
51 
52 void hook_sdl(t_data *app);
53 void init_textures(t_data *app);
54 void parse_material_csv(t_data *app, char *csv_file);
55 void get_scenes(t_data *app);
56 int reader(char *str, t_data *app);
57 void load_scene(t_data *app, char *filename);
58 
59 /*
60 ** Unloading :
61 */
62 
63 void free_scene(t_data *app);
64 void free_lst(t_data *data);
65 
66 /*
67 ** Others :
68 */
69 
70 void export_animation(int fd, t_data *app);
71 void record_frame(t_data *app);
72 
73 #endif
find_obj_at_pixel
t_obj * find_obj_at_pixel(t_data *app, int x, int y)
Definition: object_tools.c:17
s_cam
Definition: rtstruct.h:130
get_app
t_data * get_app(t_data *app)
Definition: main.c:19
t_scene.h
s_sdl
Definition: libui.h:43
s_settings
Definition: t_settings.h:19
s_data::sdl
t_sdl * sdl
Definition: t_data.h:33
free_scene
void free_scene(t_data *app)
Definition: free_scene.c:55
s_data::gui
t_gui gui
Definition: t_data.h:34
s_data::lst_tex
t_list * lst_tex
Definition: t_data.h:31
record_frame
void record_frame(t_data *app)
Definition: save_screenshot.c:81
reader
int reader(char *str, t_data *app)
: Top function to organise the parsing
Definition: read.c:98
libui.h
s_obj
Definition: rtstruct.h:245
t_gui.h
s_data::lst_scenes
t_list * lst_scenes
Definition: t_data.h:32
prep_render
void prep_render(t_sdl *sdl)
Definition: pre_render.c:52
init_textures
void init_textures(t_data *app)
Definition: texture_toolbox.c:49
t_data
struct s_data t_data
free_lst
void free_lst(t_data *data)
Definition: free_scene.c:75
process_pixel
int process_pixel(int x, int y, void *arg)
s_data::cam
t_cam cam
Definition: t_data.h:28
s_data::settings
t_settings settings
Definition: t_data.h:35
t_settings.h
rtstruct.h
s_data
Definition: t_data.h:24
s_data::scene
t_scene scene
Definition: t_data.h:29
s_gui
Definition: t_gui.h:21
get_scenes
void get_scenes(t_data *app)
Definition: get_scenes.c:32
interface
void interface(t_data *app)
Definition: interface.c:50
s_data::lst_mat
t_list * lst_mat
Definition: t_data.h:30
s_data::arg
char * arg
Definition: t_data.h:26
load_scene
void load_scene(t_data *app, char *filename)
Definition: reload.c:93
export_animation
void export_animation(int fd, t_data *app)
Definition: export_anim.c:83
s_data::option
t_option option
Definition: t_data.h:27
s_scene
Definition: t_scene.h:18
free_app
void free_app(t_data *app)
Definition: free.c:62
hook_sdl
void hook_sdl(t_data *app)
Definition: hook.c:38
parse_material_csv
void parse_material_csv(t_data *app, char *csv_file)
Definition: utils.c:59