include/graphics.h File Reference include/graphics.h graphics header #include "base.h"#include <epoxy/gl.h>#include <GL/glu.h> Classes struct graphics_stack_t Structure describing a gl_area and its parameters, used to create a table of Gem-graph client current gl_areas. Macros #define VERTEX_SHADER_FILE   "src/shader.vert" #define FRAG_SHADER_FILE   "src/shader.frag" #define GL_TARGET_MAJOR_VERSION   0 #define GL_TARGET_MINOR_VERSION   4 Functions bool graphics_render_stack (GtkWidget *container_widget) Structure describing a gl_area and its parameters, used to create a table of Gem-graph client current gl_areas. bool graphics_setup_glarea (int target_mode, GtkWidget *target_widget) int graphics_init (void *error_buffer) Initializes a gl_area. void graphics_draw (const int graphics_stack_id) Draws the current buffer to a gl_area. bool graphics_shutdown (const int graphics_stack_id, void *error_buffer) Draws the current buffer to a gl_area. bool graphics_init_shaders (const int graphics_stack_id) Initializes the shaders of a gl_area and link them to a program. bool graphics_init_graphics_stack (void *container_widget, GError *error_buffer) bool graphics_shutdown_graphics_stack (void *container_widget, GError *error_buffer) bool graphics_update_axis_stack (GtkWidget *container_widget, int axis, int value) void graphics_init_buffers (const int graphics_stack_id) Initializes the buffer of a gl_area Calls according to the user preferences. void graphics_draw_vertex (const int graphics_stack_id, GLfloat x, GLfloat y, GLfloat z) Draws a vertex (x, y, z) if (console) prints (x, y, z) values to console. void graphics_draw_line (const int graphics_stack_id, GLuint a, GLuint b) Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console. void graphics_draw_plan (const int graphics_stack_id, GLuint a, GLuint b, GLuint c) Writes values to describe an (a,b,c) plan (triangle) into the plan buffer. void graphics_draw_color (const int graphics_stack_id, GLfloat r, GLfloat g, GLfloat b) Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console. void graphics_model_setup (const int graphics_stack_id) TODO #pragma omp parallel schedule(static, 12) void attribute((optimize("no-unroll-loops"))) main_test_graphics (void) {}. int graphics_draw_one_arrow_vertex (const int graphics_stack_id, int space_X, int space_Y, int space_Z, int weight, int site, int x, int y, int z) int graphics_draw_one_arrow_line (const int graphics_stack_id, int offset_vertex) int graphics_draw_space_ridges_vertex (const int graphics_stack_id, long offset_vertex, long x, long y, long z) Writes grid ridges to vertex and color buffers. int graphics_draw_space_ridges_lines (const int graphics_stack_id) phantom documentation used to test the functioning of doxygen long graphics_draw_grids_on_space_faces_vertex (const int graphics_stack_id, long x, long y, long z) Writes grid lines on space faces. long graphics_draw_grids_on_space_faces_lines (const int graphics_stack_id, long offset_vertex, long x, long y, long z) phantom documentation used to test the functioning of doxygen int graphics_set_arrow (int graphics_stack_id, int arrows_nb, int space_X, int space_Y, int space_Z, int requested_weight, int site, int arrow_x, int arrow_y, int arrow_z) Variables struct graphics_stack_t * graphics_stack Dynamic array of ptrs to dynamically allocated gl_area_entry.
Detailed Description graphics header This file is part of Gem-graph.
Function Documentation
graphics_draw() graphics_drawgraphics.h graphics.hgraphics_draw void graphics_draw (const int stack_id) Draws the current buffer to a gl_area. Parameters gl_area, ptr to the gl_area widget
Returns void
graphics_draw_color() graphics_draw_colorgraphics.h graphics.hgraphics_draw_color void graphics_draw_color (const int stack_id, GLfloat r, GLfloat g, GLfloat b) Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console. Parameters GLfloat r, GLfloat g, GLfloat b
Returns void Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console.
Parameters color GLfloat(r,g,b)
Returns void
graphics_draw_grids_on_space_faces_vertex() graphics_draw_grids_on_space_faces_vertexgraphics.h graphics.hgraphics_draw_grids_on_space_faces_vertex long graphics_draw_grids_on_space_faces_vertex (const int stack_id, long x, long y, long z) Writes grid lines on space faces. Parameters coords long (x,y,z)
Returns void Writes grid lines on space faces.
graphics_draw_line() graphics_draw_linegraphics.h graphics.hgraphics_draw_line void graphics_draw_line (const int stack_id, GLuint a, GLuint b) Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console. Writes values to describe a line from a to b into the line buffer. Parameters GLfloat r, GLfloat g, GLfloat b
Returns void Writes values to describe a line from a to b into the line buffer @use liste de fonctions GTK
Parameters coords GLuint (a,b)
Returns void Parameters coords GLuint (a,b)
Returns void Draws the color (r, g, b) associated to a vertex if (console) prints (r, g, b) values to console.
Parameters coords GLuint (a,b)
Returns void
graphics_draw_plan() graphics_draw_plangraphics.h graphics.hgraphics_draw_plan void graphics_draw_plan (const int stack_id, GLuint a, GLuint b, GLuint c) Writes values to describe an (a,b,c) plan (triangle) into the plan buffer. Parameters coords GLuint (a,b,c)
Returns void
graphics_draw_space_ridges_vertex() graphics_draw_space_ridges_vertexgraphics.h graphics.hgraphics_draw_space_ridges_vertex int graphics_draw_space_ridges_vertex (const int stack_id, long offset_vertex, long x, long y, long z) Writes grid ridges to vertex and color buffers. Parameters coords long (x,y,z), step_x, step_y, step_z
Returns void Writes grid ridges to vertex and color buffers.
graphics_draw_vertex() graphics_draw_vertexgraphics.h graphics.hgraphics_draw_vertex void graphics_draw_vertex (const int stack_id, GLfloat x, GLfloat y, GLfloat z) Draws a vertex (x, y, z) if (console) prints (x, y, z) values to console. Parameters GLfloat x, GLfloat y, GLfloat z
Returns void Draws a vertex (x, y, z) if (console) prints (x, y, z) values to console.
Parameters coords GLfloat(x,y,z)
Returns void
graphics_init() graphics_initgraphics.h graphics.hgraphics_init int graphics_init (void * error_buffer) Initializes a gl_area. Parameters gl_area, ptr to the gl_area widget
Returns true if initialized Initializes a gl_area.
Parameters gl_area, ptr to the gl_area widget
Returns id if initialized
graphics_init_buffers() graphics_init_buffersgraphics.h graphics.hgraphics_init_buffers void graphics_init_buffers (const int stack_id) Initializes the buffer of a gl_area Calls according to the user preferences. Parameters gl_area, ptr to the gl_area widget
Returns void
graphics_init_shaders() graphics_init_shadersgraphics.h graphics.hgraphics_init_shaders bool graphics_init_shaders (const int stack_id) Initializes the shaders of a gl_area and link them to a program. Parameters gl_area, ptr to the gl_area widget
Returns true if initialized
graphics_model_setup() graphics_model_setupgraphics.h graphics.hgraphics_model_setup void graphics_model_setup (const int stack_id) TODO #pragma omp parallel schedule(static, 12) void attribute((optimize("no-unroll-loops"))) main_test_graphics (void) {}. assert : space dimensions (x,y,z) > 0 assert : arrows localization within space and sites assert : no more than one arrow per address notify : weights are replaced, NOT added (could be !) Init space and arrows (= initial state) and allows ulterior creations, suppressions or modifications of the arrows[] array draws the space() triggers graphics_set_arrows() that modifies the list () and draws arrows Initialisation du générateur pseudo-aléatoire Attention, les vertex centraux de chaque unité d'espace (cube) peuvent être redondants (max 6)
graphics_shutdown() graphics_shutdowngraphics.h graphics.hgraphics_shutdown bool graphics_shutdown (const int id, void * error_buffer) Draws the current buffer to a gl_area. Parameters gl_area, ptr to the gl_area widget
Returns void Shutdowns a gl_area Parameters gl_area, ptr to the gl_area widget
Returns true if success Draws the current buffer to a gl_area.
Parameters gl_area, ptr to the gl_area widget
Returns true if success
Variable Documentation
graphics_stack graphics_stackgraphics.h graphics.hgraphics_stack struct graphics_stack_t* graphics_stack[extern] Dynamic array of ptrs to dynamically allocated gl_area_entry. Dynamic array of ptrs to dynamically allocated gl_area_entry.