!_TAG_EXTRA_DESCRIPTION	anonymous	/Include tags for non-named objects like lambda/
!_TAG_EXTRA_DESCRIPTION	fileScope	/Include tags of file scope/
!_TAG_EXTRA_DESCRIPTION	pseudo	/Include pseudo tags/
!_TAG_EXTRA_DESCRIPTION	subparser	/Include tags generated by subparsers/
!_TAG_FIELD_DESCRIPTION	epoch	/the last modified time of the input file (only for F\/file kind tag)/
!_TAG_FIELD_DESCRIPTION	file	/File-restricted scoping/
!_TAG_FIELD_DESCRIPTION	input	/input file/
!_TAG_FIELD_DESCRIPTION	name	/tag name/
!_TAG_FIELD_DESCRIPTION	pattern	/pattern/
!_TAG_FIELD_DESCRIPTION	typeref	/Type and name of a variable or typedef/
!_TAG_FIELD_DESCRIPTION!C++	name	/aliased names/
!_TAG_FILE_FORMAT	2	/extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED	1	/0=unsorted, 1=sorted, 2=foldcase/
!_TAG_KIND_DESCRIPTION!C	d,macro	/macro definitions/
!_TAG_KIND_DESCRIPTION!C	e,enumerator	/enumerators (values inside an enumeration)/
!_TAG_KIND_DESCRIPTION!C	f,function	/function definitions/
!_TAG_KIND_DESCRIPTION!C	g,enum	/enumeration names/
!_TAG_KIND_DESCRIPTION!C	h,header	/included header files/
!_TAG_KIND_DESCRIPTION!C	m,member	/struct, and union members/
!_TAG_KIND_DESCRIPTION!C	s,struct	/structure names/
!_TAG_KIND_DESCRIPTION!C	t,typedef	/typedefs/
!_TAG_KIND_DESCRIPTION!C	u,union	/union names/
!_TAG_KIND_DESCRIPTION!C	v,variable	/variable definitions/
!_TAG_KIND_DESCRIPTION!C++	M,module	/modules/
!_TAG_KIND_DESCRIPTION!C++	P,partition	/partitions/
!_TAG_KIND_DESCRIPTION!C++	c,class	/classes/
!_TAG_KIND_DESCRIPTION!C++	d,macro	/macro definitions/
!_TAG_KIND_DESCRIPTION!C++	e,enumerator	/enumerators (values inside an enumeration)/
!_TAG_KIND_DESCRIPTION!C++	f,function	/function definitions/
!_TAG_KIND_DESCRIPTION!C++	g,enum	/enumeration names/
!_TAG_KIND_DESCRIPTION!C++	h,header	/included header files/
!_TAG_KIND_DESCRIPTION!C++	m,member	/class, struct, and union members/
!_TAG_KIND_DESCRIPTION!C++	n,namespace	/namespaces/
!_TAG_KIND_DESCRIPTION!C++	s,struct	/structure names/
!_TAG_KIND_DESCRIPTION!C++	t,typedef	/typedefs/
!_TAG_KIND_DESCRIPTION!C++	u,union	/union names/
!_TAG_KIND_DESCRIPTION!C++	v,variable	/variable definitions/
!_TAG_KIND_DESCRIPTION!Markdown	S,subsection	/level 2 sections/
!_TAG_KIND_DESCRIPTION!Markdown	T,l4subsection	/level 4 sections/
!_TAG_KIND_DESCRIPTION!Markdown	c,chapter	/chapters/
!_TAG_KIND_DESCRIPTION!Markdown	h,hashtag	/hashtags/
!_TAG_KIND_DESCRIPTION!Markdown	n,footnote	/footnotes/
!_TAG_KIND_DESCRIPTION!Markdown	s,section	/sections/
!_TAG_KIND_DESCRIPTION!Markdown	t,subsubsection	/level 3 sections/
!_TAG_KIND_DESCRIPTION!Markdown	u,l5subsection	/level 5 sections/
!_TAG_OUTPUT_EXCMD	mixed	/number, pattern, mixed, or combineV2/
!_TAG_OUTPUT_FILESEP	slash	/slash or backslash/
!_TAG_OUTPUT_MODE	u-ctags	/u-ctags or e-ctags/
!_TAG_OUTPUT_VERSION	0.0	/current.age/
!_TAG_PARSER_VERSION!C	1.1	/current.age/
!_TAG_PARSER_VERSION!C++	1.1	/current.age/
!_TAG_PARSER_VERSION!Markdown	1.1	/current.age/
!_TAG_PATTERN_LENGTH_LIMIT	96	/0 for no limit/
!_TAG_PROC_CWD	/home/null/Documents/better_ray_tracer/	//
!_TAG_PROGRAM_AUTHOR	Universal Ctags Team	//
!_TAG_PROGRAM_NAME	Universal Ctags	/Derived from Exuberant Ctags/
!_TAG_PROGRAM_URL	https://ctags.io/	/official site/
!_TAG_PROGRAM_VERSION	6.1.0	/653ca9204/
!_TAG_ROLE_DESCRIPTION!C!function	foreigndecl	/declared in foreign languages/
!_TAG_ROLE_DESCRIPTION!C!header	local	/local header/
!_TAG_ROLE_DESCRIPTION!C!header	system	/system header/
!_TAG_ROLE_DESCRIPTION!C!macro	undef	/undefined/
!_TAG_ROLE_DESCRIPTION!C!struct	foreigndecl	/declared in foreign languages/
!_TAG_ROLE_DESCRIPTION!C++!header	exported	/exported with "exported imported ..."/
!_TAG_ROLE_DESCRIPTION!C++!header	imported	/imported with "imported ..."/
!_TAG_ROLE_DESCRIPTION!C++!header	local	/local header/
!_TAG_ROLE_DESCRIPTION!C++!header	system	/system header/
!_TAG_ROLE_DESCRIPTION!C++!macro	undef	/undefined/
!_TAG_ROLE_DESCRIPTION!C++!module	imported	/imported with "imported ..."/
!_TAG_ROLE_DESCRIPTION!C++!module	partOwner	/used for specifying a partition/
!_TAG_ROLE_DESCRIPTION!C++!partition	imported	/imported with "imported ..."/
HEIGHT	miniRT.h	/^# define HEIGHT /;"	d
MAX_AMBIENT	miniRT.h	/^# define MAX_AMBIENT /;"	d
MAX_CAMERA	miniRT.h	/^# define MAX_CAMERA /;"	d
MAX_CYLINDERS	miniRT.h	/^# define MAX_CYLINDERS /;"	d
MAX_LIGHTS	miniRT.h	/^# define MAX_LIGHTS /;"	d
MAX_PLANES	miniRT.h	/^# define MAX_PLANES /;"	d
MAX_SPHERES	miniRT.h	/^# define MAX_SPHERES /;"	d
MINIRT_H	miniRT.h	/^# define MINIRT_H$/;"	d
WIDTH	miniRT.h	/^# define WIDTH /;"	d
a	miniRT.h	/^	float	a;$/;"	m	struct:s_calc	typeref:typename:float
ambient	miniRT.h	/^	t_ambient	ambient;$/;"	m	struct:s_scene	typeref:typename:t_ambient
ambient_color	miniRT.h	/^	t_vec3		ambient_color;$/;"	m	struct:s_ambient	typeref:typename:t_vec3
ambient_color	raytracer_formatted.c	/^t_vec3					ambient_color = {0.1f, 0.1f, 0.1f};$/;"	v	typeref:typename:t_vec3
ambient_ratio	miniRT.h	/^	float		ambient_ratio;$/;"	m	struct:s_ambient	typeref:typename:float
ambient_ratio	raytracer_formatted.c	/^float					ambient_ratio = 0.1f;$/;"	v	typeref:typename:float
axis	miniRT.h	/^	t_vec3 axis;  \/\/ Axe normalisé$/;"	m	struct:s_cylinder	typeref:typename:t_vec3
b	miniRT.h	/^	float	b;$/;"	m	struct:s_calc	typeref:typename:float
better_ray_tracer	README.md	/^# better_ray_tracer/;"	c
brightness	miniRT.h	/^	float		brightness;$/;"	m	struct:s_light	typeref:typename:float
c	miniRT.h	/^	float	c;$/;"	m	struct:s_calc	typeref:typename:float
camDir	miniRT.h	/^	t_vec3		camDir;$/;"	m	struct:s_camera	typeref:typename:t_vec3
camDir	raytracer_formatted.c	/^t_vec3					camDir = {0.0f, 0.0f, -1.0f};$/;"	v	typeref:typename:t_vec3
camPos	miniRT.h	/^	t_vec3		camPos;$/;"	m	struct:s_camera	typeref:typename:t_vec3
camPos	raytracer_formatted.c	/^t_vec3					camPos = {0.0f, 0.0f, 0.0f};$/;"	v	typeref:typename:t_vec3
camera	miniRT.h	/^	t_camera	camera;$/;"	m	struct:s_scene	typeref:typename:t_camera
center	miniRT.h	/^	t_vec3		center;$/;"	m	struct:s_cylinder	typeref:typename:t_vec3
center	miniRT.h	/^	t_vec3		center;$/;"	m	struct:s_sphere	typeref:typename:t_vec3
check_if_max	check.c	/^inline void check_if_max(t_scene scene, const int to_test, const int max)$/;"	f	typeref:typename:void
check_tokens	check.c	/^inline int	check_tokens(char **tokens, int expected)$/;"	f	typeref:typename:int
color	miniRT.h	/^	t_vec3		color;$/;"	m	struct:s_cylinder	typeref:typename:t_vec3
color	miniRT.h	/^	t_vec3		color;$/;"	m	struct:s_light	typeref:typename:t_vec3
color	miniRT.h	/^	t_vec3		color;$/;"	m	struct:s_plane	typeref:typename:t_vec3
color	miniRT.h	/^	t_vec3		color;$/;"	m	struct:s_sphere	typeref:typename:t_vec3
cp	miniRT.h	/^	t_vec3	cp;$/;"	m	struct:s_calc	typeref:typename:t_vec3
create_scene	scene.c	/^t_scene	create_scene(void)$/;"	f	typeref:typename:t_scene
cylinders	miniRT.h	/^	t_cylinder	cylinders[MAX_CYLINDERS];$/;"	m	struct:s_scene	typeref:typename:t_cylinder[]
d	miniRT.h	/^	t_vec3	d;$/;"	m	struct:s_calc	typeref:typename:t_vec3
d_dot_v	miniRT.h	/^	float	d_dot_v;$/;"	m	struct:s_calc	typeref:typename:float
d_perp	miniRT.h	/^	t_vec3	d_perp;$/;"	m	struct:s_calc	typeref:typename:t_vec3
dir	miniRT.h	/^	t_vec3		dir;$/;"	m	struct:s_ray	typeref:typename:t_vec3
disc	miniRT.h	/^	float	disc;$/;"	m	struct:s_calc	typeref:typename:float
dist	miniRT.h	/^	float	dist;$/;"	m	struct:s_calc	typeref:typename:float
fd_if_exit	miniRT.h	/^	const int		fd_if_exit;$/;"	m	struct:s_scene	typeref:typename:const int
fov	miniRT.h	/^	float		fov;$/;"	m	struct:s_camera	typeref:typename:float
fov	raytracer_formatted.c	/^float					fov = 90.0f;$/;"	v	typeref:typename:float
get_tokens_secure	parsing_utils.c	/^inline	char	**get_tokens_secure(t_scene scene, const int numObject, const int numObjectMax, cons/;"	f	typeref:typename:char **
height	miniRT.h	/^	float		height;$/;"	m	struct:s_cylinder	typeref:typename:float
hitPoint	miniRT.h	/^	t_vec3	hitPoint;$/;"	m	struct:s_calc	typeref:typename:t_vec3
intersectCylinder	parsing_cylinder.c	/^float	intersectCylinder(Ray ray, Cylinder cy, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
intersectCylinder	raytracer_formatted.c	/^float	intersectCylinder(Ray ray, Cylinder cy, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
intersectPlane	parsing_plane.c	/^float	intersectPlane(Ray ray, Plane p, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
intersectPlane	raytracer_formatted.c	/^float	intersectPlane(Ray ray, Plane p, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
intersectSphere	parsing_sphere.c	/^float	intersectSphere(Ray ray, Sphere s, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
intersectSphere	raytracer_formatted.c	/^float	intersectSphere(Ray ray, Sphere s, t_vec3 *hitNormal)$/;"	f	typeref:typename:float
isInShadow	raytracer_formatted.c	/^bool	isInShadow(t_vec3 hitPoint, t_vec3 lightPos)$/;"	f	typeref:typename:bool
lights	miniRT.h	/^	t_light		lights[MAX_LIGHTS];$/;"	m	struct:s_scene	typeref:typename:t_light[]
line_if_exit	miniRT.h	/^	const char 		*line_if_exit;$/;"	m	struct:s_scene	typeref:typename:const char *
load_config	config.c	/^t_scene	load_config(const char *filename)$/;"	f	typeref:typename:t_scene
load_config	raytracer_formatted.c	/^void	load_config(const char *filename)$/;"	f	typeref:typename:void
main	raytracer_formatted.c	/^int	main(int argc, char *argv[])$/;"	f	typeref:typename:int
n	miniRT.h	/^	t_vec3	n;$/;"	m	struct:s_calc	typeref:typename:t_vec3
normal	miniRT.h	/^	t_vec3		normal;$/;"	m	struct:s_plane	typeref:typename:t_vec3
numAmbient	miniRT.h	/^	int			numAmbient;$/;"	m	struct:s_scene	typeref:typename:int
numCylinders	miniRT.h	/^	int			numCylinders;$/;"	m	struct:s_scene	typeref:typename:int
numLights	miniRT.h	/^	int			numLights;$/;"	m	struct:s_scene	typeref:typename:int
numPlanes	miniRT.h	/^	int			numPlanes;$/;"	m	struct:s_scene	typeref:typename:int
numSpheres	miniRT.h	/^	int			numSpheres;$/;"	m	struct:s_scene	typeref:typename:int
oc	miniRT.h	/^	t_vec3	oc;$/;"	m	struct:s_calc	typeref:typename:t_vec3
oc_dot_v	miniRT.h	/^	float	oc_dot_v;$/;"	m	struct:s_calc	typeref:typename:float
oc_perp	miniRT.h	/^	t_vec3	oc_perp;$/;"	m	struct:s_calc	typeref:typename:t_vec3
origin	miniRT.h	/^	t_vec3		origin;$/;"	m	struct:s_ray	typeref:typename:t_vec3
p	miniRT.h	/^	t_vec3	p;$/;"	m	struct:s_calc	typeref:typename:t_vec3
parse_color	parsing_color.c	/^t_vec3	parse_color(const char *token, t_scene scene)$/;"	f	typeref:typename:t_vec3
parse_vector	parsing_vector.c	/^t_vec3	parse_vector(const char *token, t_scene scene)$/;"	f	typeref:typename:t_vec3
parse_vector_normalize	parsing_vector.c	/^t_vec3	parse_vector_normalize(const char *token, t_scene scene)$/;"	f	typeref:typename:t_vec3
parsing_ambiant	parsing_ambiant.c	/^t_scene	parsing_ambiant(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
parsing_camera	parsing_camera.c	/^t_scene parsing_camera(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
parsing_cylinder	parsing_cylinder.c	/^t_scene	parsing_cylinder(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
parsing_light	parsing_light.c	/^t_scene	parsing_light(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
parsing_line	config.c	/^static inline t_scene	parsing_line(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene	file:
parsing_plane	parsing_plane.c	/^t_scene	parsing_plane(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
parsing_sphere	parsing_sphere.c	/^t_scene	parsing_sphere(const char *line, t_scene scene)$/;"	f	typeref:typename:t_scene
pitch	miniRT.h	/^	float		pitch; \/\/ vue de haut en bas en radians$/;"	m	struct:s_camera	typeref:typename:float
pitch	raytracer_formatted.c	/^float					pitch = 0.0f; \/\/ vue de haut en bas en radians$/;"	v	typeref:typename:float
planes	miniRT.h	/^	t_plane		planes[MAX_PLANES];$/;"	m	struct:s_scene	typeref:typename:t_plane[]
point	miniRT.h	/^	t_vec3		point;$/;"	m	struct:s_plane	typeref:typename:t_vec3
pos	miniRT.h	/^	t_vec3		pos;$/;"	m	struct:s_light	typeref:typename:t_vec3
proj	miniRT.h	/^	float	proj;$/;"	m	struct:s_calc	typeref:typename:float
radius	miniRT.h	/^	float		radius;$/;"	m	struct:s_sphere	typeref:typename:float
radius	miniRT.h	/^	float radius; \/\/ Demi-diamètre$/;"	m	struct:s_cylinder	typeref:typename:float
range_is_ok	parsing_color.c	/^static inline int	range_is_ok(char **token_color)$/;"	f	typeref:typename:int	file:
range_is_ok	parsing_vector.c	/^static inline int	range_is_ok(char **token_vector)$/;"	f	typeref:typename:int	file:
s_ambient	miniRT.h	/^typedef struct s_ambient$/;"	s
s_calc	miniRT.h	/^typdef struct s_calc$/;"	s
s_camera	miniRT.h	/^typedef struct s_camera$/;"	s
s_cylinder	miniRT.h	/^typedef struct s_cylinder$/;"	s
s_light	miniRT.h	/^typedef struct s_light$/;"	s
s_plane	miniRT.h	/^typedef struct s_plane$/;"	s
s_ray	miniRT.h	/^typedef struct s_ray$/;"	s
s_scene	miniRT.h	/^typedef struct s_scene$/;"	s
s_sphere	miniRT.h	/^typedef struct s_sphere$/;"	s
s_vec3	miniRT.h	/^typedef struct s_vec3$/;"	s
spheres	miniRT.h	/^	t_sphere	spheres[MAX_SPHERES];$/;"	m	struct:s_scene	typeref:typename:t_sphere[]
sqrtDisc	miniRT.h	/^	float	sqrtDisc;$/;"	m	struct:s_calc	typeref:typename:float
t	miniRT.h	/^	float	t;$/;"	m	struct:s_calc	typeref:typename:float
t0	miniRT.h	/^	float	t0;$/;"	m	struct:s_calc	typeref:typename:float
t1	miniRT.h	/^	float	t1;$/;"	m	struct:s_calc	typeref:typename:float
t_ambient	miniRT.h	/^}				t_ambient;$/;"	t	typeref:struct:s_ambient
t_bot	miniRT.h	/^	float	t_bot;$/;"	m	struct:s_calc	typeref:typename:float
t_calc	miniRT.h	/^}				t_calc;$/;"	v	typeref:struct:s_calc
t_camera	miniRT.h	/^}				t_camera;$/;"	t	typeref:struct:s_camera
t_cap	miniRT.h	/^	float	t_cap;$/;"	m	struct:s_calc	typeref:typename:float
t_cylinder	miniRT.h	/^}				t_cylinder;$/;"	t	typeref:struct:s_cylinder
t_final	miniRT.h	/^	float	t_final;$/;"	m	struct:s_calc	typeref:typename:float
t_light	miniRT.h	/^}				t_light;$/;"	t	typeref:struct:s_light
t_plane	miniRT.h	/^}				t_plane;$/;"	t	typeref:struct:s_plane
t_ray	miniRT.h	/^}				t_ray;$/;"	t	typeref:struct:s_ray
t_scene	miniRT.h	/^}				t_scene;$/;"	t	typeref:struct:s_scene
t_side	miniRT.h	/^	float	t_side;$/;"	m	struct:s_calc	typeref:typename:float
t_sphere	miniRT.h	/^}				t_sphere;$/;"	t	typeref:struct:s_sphere
t_top	miniRT.h	/^	float	t_top;$/;"	m	struct:s_calc	typeref:typename:float
t_vec3	miniRT.h	/^}				t_vec3;$/;"	t	typeref:struct:s_vec3
token_if_exit	miniRT.h	/^	const char		**token_if_exit;$/;"	m	struct:s_scene	typeref:typename:const char **
trace	raytracer_formatted.c	/^t_vec3	trace(Ray ray)$/;"	f	typeref:typename:t_vec3
v	miniRT.h	/^	t_vec3	v;$/;"	m	struct:s_calc	typeref:typename:t_vec3
vec3_add	calcul_de_vecteur.c	/^t_vec3	vec3_add(t_vec3 a, t_vec3 b)$/;"	f	typeref:typename:t_vec3
vec3_cross	calcul_de_vecteur.c	/^t_vec3	vec3_cross(t_vec3 a, t_vec3 b)$/;"	f	typeref:typename:t_vec3
vec3_dot	calcul_de_vecteur.c	/^float	vec3_dot(t_vec3 a, t_vec3 b)$/;"	f	typeref:typename:float
vec3_length	calcul_de_vecteur2.c	/^float	vec3_length(t_vec3 a)$/;"	f	typeref:typename:float
vec3_mul	calcul_de_vecteur2.c	/^t_vec3	vec3_mul(t_vec3 a, t_vec3 b)$/;"	f	typeref:typename:t_vec3
vec3_normalize	calcul_de_vecteur2.c	/^t_vec3	vec3_normalize(t_vec3 a)$/;"	f	typeref:typename:t_vec3
vec3_scale	calcul_de_vecteur.c	/^t_vec3	vec3_scale(t_vec3 a, float s)$/;"	f	typeref:typename:t_vec3
vec3_sub	calcul_de_vecteur.c	/^t_vec3	vec3_sub(t_vec3 a, t_vec3 b)$/;"	f	typeref:typename:t_vec3
x	miniRT.h	/^	float		x;$/;"	m	struct:s_vec3	typeref:typename:float
y	miniRT.h	/^	float		y;$/;"	m	struct:s_vec3	typeref:typename:float
y	miniRT.h	/^	float	y;$/;"	m	struct:s_calc	typeref:typename:float
yaw	miniRT.h	/^	float		yaw;\/\/ vue de gauche a droite$/;"	m	struct:s_camera	typeref:typename:float
yaw	raytracer_formatted.c	/^float					yaw = 0.0f;\/\/ vue de gauche a droite$/;"	v	typeref:typename:float
z	miniRT.h	/^	float		z;$/;"	m	struct:s_vec3	typeref:typename:float
