From e93d71435758c59399a6e2865b2b30c8c525c99d Mon Sep 17 00:00:00 2001 From: Nicolas Gresset-Bourgeois Date: Tue, 25 Jun 2024 16:02:59 +0200 Subject: [PATCH] doc is no longer been followed --- .gitignore | 3 +- docs/html/algo_8c.html | 564 ---- docs/html/algo_8c.js | 10 - docs/html/algo_8c__incl.dot | 34 - docs/html/algo_8h.html | 323 --- docs/html/algo_8h.js | 5 - docs/html/algo_8h__dep__incl.dot | 13 - docs/html/algo_8h__incl.dot | 15 - docs/html/algo_8h_source.html | 116 - docs/html/annotated.html | 114 - docs/html/annotated_dup.js | 13 - docs/html/arbres_8c.html | 239 -- docs/html/arbres_8c.js | 4 - docs/html/arbres_8c__incl.dot | 48 - docs/html/array-list_8c.html | 537 ---- docs/html/array-list_8c.js | 15 - docs/html/array-list_8c__incl.dot | 14 - docs/html/array-list_8h.html | 558 ---- docs/html/array-list_8h.js | 15 - docs/html/array-list_8h__dep__incl.dot | 63 - docs/html/array-list_8h__incl.dot | 9 - docs/html/array-list_8h_source.html | 144 - docs/html/bc_s.png | Bin 676 -> 0 bytes docs/html/bdwn.png | Bin 147 -> 0 bytes docs/html/classes.html | 138 - docs/html/closed.png | Bin 132 -> 0 bytes docs/html/dir_000001_000000.html | 97 - .../dir_68267d1309a1af8e8297ef4c3efbcdba.html | 133 - .../dir_68267d1309a1af8e8297ef4c3efbcdba.js | 14 - ...r_68267d1309a1af8e8297ef4c3efbcdba_dep.dot | 8 - .../dir_d44c64559bbebec7f509842c48db8b23.html | 127 - .../dir_d44c64559bbebec7f509842c48db8b23.js | 14 - docs/html/display_8c.html | 707 ----- docs/html/display_8c.js | 14 - docs/html/display_8c__incl.dot | 22 - docs/html/display_8h.html | 366 --- docs/html/display_8h.js | 6 - docs/html/display_8h__dep__incl.dot | 15 - docs/html/display_8h__incl.dot | 17 - docs/html/display_8h_source.html | 124 - docs/html/doc.png | Bin 746 -> 0 bytes docs/html/doxygen.css | 1771 ------------ docs/html/doxygen.png | Bin 3779 -> 0 bytes docs/html/dynsections.js | 120 - docs/html/files.html | 128 - docs/html/files_dup.js | 5 - docs/html/folderclosed.png | Bin 616 -> 0 bytes docs/html/folderopen.png | Bin 597 -> 0 bytes docs/html/fonctions_8c.html | 312 -- docs/html/fonctions_8c.js | 7 - docs/html/fonctions_8c__incl.dot | 23 - docs/html/fonctions_8h.html | 271 -- docs/html/fonctions_8h.js | 7 - docs/html/fonctions_8h__dep__incl.dot | 15 - docs/html/fonctions_8h__incl.dot | 19 - docs/html/fonctions_8h_source.html | 121 - docs/html/functions.html | 241 -- docs/html/functions_vars.html | 241 -- docs/html/globals.html | 469 --- docs/html/globals_defs.html | 111 - docs/html/globals_func.html | 423 --- docs/html/globals_type.html | 131 - docs/html/graph_legend.dot | 23 - docs/html/graph_legend.html | 160 -- docs/html/index.html | 136 - docs/html/jquery.js | 35 - docs/html/manageSIGINT_8c.html | 210 -- docs/html/manageSIGINT_8c.js | 5 - docs/html/manageSIGINT_8c__incl.dot | 17 - docs/html/manageSIGINT_8h.html | 216 -- docs/html/manageSIGINT_8h.js | 5 - docs/html/manageSIGINT_8h__dep__incl.dot | 11 - docs/html/manageSIGINT_8h__incl.dot | 11 - docs/html/manageSIGINT_8h_source.html | 111 - docs/html/menu.js | 50 - docs/html/menudata.js | 107 - docs/html/nav_f.png | Bin 153 -> 0 bytes docs/html/nav_g.png | Bin 95 -> 0 bytes docs/html/nav_h.png | Bin 98 -> 0 bytes docs/html/navtree.css | 146 - docs/html/navtree.js | 544 ---- docs/html/navtreedata.js | 57 - docs/html/navtreeindex0.js | 223 -- docs/html/open.png | Bin 123 -> 0 bytes docs/html/options_8c.html | 303 -- docs/html/options_8c.js | 6 - docs/html/options_8c__incl.dot | 21 - docs/html/options_8h.html | 239 -- docs/html/options_8h.js | 4 - docs/html/options_8h__dep__incl.dot | 11 - docs/html/options_8h__incl.dot | 14 - docs/html/options_8h_source.html | 109 - docs/html/parse_8c.html | 1029 ------- docs/html/parse_8c.js | 16 - docs/html/parse_8c__incl.dot | 39 - docs/html/parse_8h.html | 1029 ------- docs/html/parse_8h.js | 16 - docs/html/parse_8h__dep__incl.dot | 13 - docs/html/parse_8h__incl.dot | 15 - docs/html/parse_8h_source.html | 154 - docs/html/pile_8c.html | 271 -- docs/html/pile_8c.js | 9 - docs/html/pile_8c__incl.dot | 15 - docs/html/pile_8h.html | 298 -- docs/html/pile_8h.js | 10 - docs/html/pile_8h__dep__incl.dot | 11 - docs/html/pile_8h__incl.dot | 9 - docs/html/pile_8h_source.html | 124 - docs/html/resize.js | 137 - docs/html/restrictiveOptions_8c.html | 483 ---- docs/html/restrictiveOptions_8c.js | 9 - docs/html/restrictiveOptions_8c__incl.dot | 29 - docs/html/restrictiveOptions_8h.html | 209 -- docs/html/restrictiveOptions_8h.js | 4 - .../html/restrictiveOptions_8h__dep__incl.dot | 11 - docs/html/restrictiveOptions_8h__incl.dot | 15 - docs/html/restrictiveOptions_8h_source.html | 111 - docs/html/search/all_0.html | 30 - docs/html/search/all_0.js | 10 - docs/html/search/all_1.html | 30 - docs/html/search/all_1.js | 4 - docs/html/search/all_10.html | 30 - docs/html/search/all_10.js | 10 - docs/html/search/all_11.html | 30 - docs/html/search/all_11.js | 6 - docs/html/search/all_12.html | 30 - docs/html/search/all_12.js | 6 - docs/html/search/all_13.html | 30 - docs/html/search/all_13.js | 4 - docs/html/search/all_14.html | 30 - docs/html/search/all_14.js | 4 - docs/html/search/all_2.html | 30 - docs/html/search/all_2.js | 7 - docs/html/search/all_3.html | 30 - docs/html/search/all_3.js | 9 - docs/html/search/all_4.html | 30 - docs/html/search/all_4.js | 7 - docs/html/search/all_5.html | 30 - docs/html/search/all_5.js | 7 - docs/html/search/all_6.html | 30 - docs/html/search/all_6.js | 17 - docs/html/search/all_7.html | 30 - docs/html/search/all_7.js | 7 - docs/html/search/all_8.html | 30 - docs/html/search/all_8.js | 11 - docs/html/search/all_9.html | 30 - docs/html/search/all_9.js | 17 - docs/html/search/all_a.html | 30 - docs/html/search/all_a.js | 11 - docs/html/search/all_b.html | 30 - docs/html/search/all_b.js | 6 - docs/html/search/all_c.html | 30 - docs/html/search/all_c.js | 9 - docs/html/search/all_d.html | 30 - docs/html/search/all_d.js | 17 - docs/html/search/all_e.html | 30 - docs/html/search/all_e.js | 8 - docs/html/search/all_f.html | 30 - docs/html/search/all_f.js | 14 - docs/html/search/classes_0.html | 30 - docs/html/search/classes_0.js | 4 - docs/html/search/classes_1.html | 30 - docs/html/search/classes_1.js | 5 - docs/html/search/classes_2.html | 30 - docs/html/search/classes_2.js | 4 - docs/html/search/classes_3.html | 30 - docs/html/search/classes_3.js | 4 - docs/html/search/classes_4.html | 30 - docs/html/search/classes_4.js | 4 - docs/html/search/classes_5.html | 30 - docs/html/search/classes_5.js | 4 - docs/html/search/classes_6.html | 30 - docs/html/search/classes_6.js | 5 - docs/html/search/classes_7.html | 30 - docs/html/search/classes_7.js | 4 - docs/html/search/close.png | Bin 273 -> 0 bytes docs/html/search/defines_0.html | 30 - docs/html/search/defines_0.js | 4 - docs/html/search/defines_1.html | 30 - docs/html/search/defines_1.js | 4 - docs/html/search/defines_2.html | 30 - docs/html/search/defines_2.js | 4 - docs/html/search/defines_3.html | 30 - docs/html/search/defines_3.js | 4 - docs/html/search/files_0.html | 30 - docs/html/search/files_0.js | 8 - docs/html/search/files_1.html | 30 - docs/html/search/files_1.js | 5 - docs/html/search/files_2.html | 30 - docs/html/search/files_2.js | 5 - docs/html/search/files_3.html | 30 - docs/html/search/files_3.js | 5 - docs/html/search/files_4.html | 30 - docs/html/search/files_4.js | 5 - docs/html/search/files_5.html | 30 - docs/html/search/files_5.js | 7 - docs/html/search/files_6.html | 30 - docs/html/search/files_6.js | 5 - docs/html/search/files_7.html | 30 - docs/html/search/files_7.js | 6 - docs/html/search/functions_0.html | 30 - docs/html/search/functions_0.js | 4 - docs/html/search/functions_1.html | 30 - docs/html/search/functions_1.js | 4 - docs/html/search/functions_10.html | 30 - docs/html/search/functions_10.js | 6 - docs/html/search/functions_11.html | 30 - docs/html/search/functions_11.js | 4 - docs/html/search/functions_12.html | 30 - docs/html/search/functions_12.js | 5 - docs/html/search/functions_2.html | 30 - docs/html/search/functions_2.js | 5 - docs/html/search/functions_3.html | 30 - docs/html/search/functions_3.js | 6 - docs/html/search/functions_4.html | 30 - docs/html/search/functions_4.js | 4 - docs/html/search/functions_5.html | 30 - docs/html/search/functions_5.js | 5 - docs/html/search/functions_6.html | 30 - docs/html/search/functions_6.js | 14 - docs/html/search/functions_7.html | 30 - docs/html/search/functions_7.js | 6 - docs/html/search/functions_8.html | 30 - docs/html/search/functions_8.js | 7 - docs/html/search/functions_9.html | 30 - docs/html/search/functions_9.js | 14 - docs/html/search/functions_a.html | 30 - docs/html/search/functions_a.js | 9 - docs/html/search/functions_b.html | 30 - docs/html/search/functions_b.js | 4 - docs/html/search/functions_c.html | 30 - docs/html/search/functions_c.js | 5 - docs/html/search/functions_d.html | 30 - docs/html/search/functions_d.js | 11 - docs/html/search/functions_e.html | 30 - docs/html/search/functions_e.js | 4 - docs/html/search/functions_f.html | 30 - docs/html/search/functions_f.js | 9 - docs/html/search/mag_sel.png | Bin 465 -> 0 bytes docs/html/search/nomatches.html | 12 - docs/html/search/search.css | 271 -- docs/html/search/search.js | 814 ------ docs/html/search/search_l.png | Bin 567 -> 0 bytes docs/html/search/search_m.png | Bin 158 -> 0 bytes docs/html/search/search_r.png | Bin 553 -> 0 bytes docs/html/search/searchdata.js | 33 - docs/html/search/typedefs_0.html | 30 - docs/html/search/typedefs_0.js | 4 - docs/html/search/typedefs_1.html | 30 - docs/html/search/typedefs_1.js | 5 - docs/html/search/typedefs_2.html | 30 - docs/html/search/typedefs_2.js | 4 - docs/html/search/typedefs_3.html | 30 - docs/html/search/typedefs_3.js | 4 - docs/html/search/typedefs_4.html | 30 - docs/html/search/typedefs_4.js | 4 - docs/html/search/typedefs_5.html | 30 - docs/html/search/typedefs_5.js | 5 - docs/html/search/typedefs_6.html | 30 - docs/html/search/typedefs_6.js | 5 - docs/html/search/typedefs_7.html | 30 - docs/html/search/typedefs_7.js | 4 - docs/html/search/variables_0.html | 30 - docs/html/search/variables_0.js | 4 - docs/html/search/variables_1.html | 30 - docs/html/search/variables_1.js | 4 - docs/html/search/variables_2.html | 30 - docs/html/search/variables_2.js | 4 - docs/html/search/variables_3.html | 30 - docs/html/search/variables_3.js | 4 - docs/html/search/variables_4.html | 30 - docs/html/search/variables_4.js | 6 - docs/html/search/variables_5.html | 30 - docs/html/search/variables_5.js | 5 - docs/html/search/variables_6.html | 30 - docs/html/search/variables_6.js | 6 - docs/html/search/variables_7.html | 30 - docs/html/search/variables_7.js | 5 - docs/html/search/variables_8.html | 30 - docs/html/search/variables_8.js | 4 - docs/html/search/variables_9.html | 30 - docs/html/search/variables_9.js | 4 - docs/html/search/variables_a.html | 30 - docs/html/search/variables_a.js | 4 - docs/html/search/variables_b.html | 30 - docs/html/search/variables_b.js | 6 - docs/html/search/variables_c.html | 30 - docs/html/search/variables_c.js | 5 - docs/html/search/variables_d.html | 30 - docs/html/search/variables_d.js | 4 - docs/html/search/variables_e.html | 30 - docs/html/search/variables_e.js | 4 - docs/html/search/variables_f.html | 30 - docs/html/search/variables_f.js | 4 - docs/html/splitbar.png | Bin 314 -> 0 bytes docs/html/stat_8c.html | 548 ---- docs/html/stat_8c.js | 11 - docs/html/stat_8c__incl.dot | 38 - docs/html/stat_8h.html | 288 -- docs/html/stat_8h.js | 6 - docs/html/stat_8h__dep__incl.dot | 11 - docs/html/stat_8h__incl.dot | 15 - docs/html/stat_8h_source.html | 120 - docs/html/struct_8h.html | 326 --- docs/html/struct_8h.js | 21 - docs/html/struct_8h__dep__incl.dot | 56 - docs/html/struct_8h__incl.dot | 12 - docs/html/struct_8h_source.html | 221 -- docs/html/structarbre.html | 181 -- docs/html/structarbre.js | 6 - docs/html/structarbre__coll__graph.dot | 9 - docs/html/structarete.html | 162 -- docs/html/structarete.js | 5 - docs/html/structarete__coll__graph.dot | 11 - docs/html/structcorres__genre.html | 162 -- docs/html/structcorres__genre.js | 5 - .../html/structcorres__genre__coll__graph.dot | 7 - docs/html/structcorres__genus.html | 162 -- docs/html/structcorres__genus.js | 5 - .../html/structcorres__genus__coll__graph.dot | 7 - docs/html/structedge.html | 162 -- docs/html/structedge.js | 5 - docs/html/structedge2.html | 156 - docs/html/structedge2.js | 5 - docs/html/structedge2__coll__graph.dot | 7 - docs/html/structedge__coll__graph.dot | 11 - docs/html/structlist__t.html | 165 -- docs/html/structlist__t.js | 6 - docs/html/structlist__t__coll__graph.dot | 7 - docs/html/structnode.html | 140 - docs/html/structnode.js | 4 - docs/html/structnode__coll__graph.dot | 9 - docs/html/structopt.html | 300 -- docs/html/structopt.js | 14 - docs/html/structopt__coll__graph.dot | 7 - docs/html/structposition.html | 162 -- docs/html/structposition.js | 5 - docs/html/structposition__coll__graph.dot | 7 - docs/html/structtab__genre.html | 162 -- docs/html/structtab__genre.js | 5 - docs/html/structtab__genre__coll__graph.dot | 9 - docs/html/structtab__genus.html | 162 -- docs/html/structtab__genus.js | 5 - docs/html/structtab__genus__coll__graph.dot | 9 - docs/html/structtree.html | 181 -- docs/html/structtree.js | 6 - docs/html/structtree__coll__graph.dot | 9 - docs/html/structvertex.html | 181 -- docs/html/structvertex.js | 6 - docs/html/structvertex__coll__graph.dot | 7 - docs/html/sync_off.png | Bin 853 -> 0 bytes docs/html/sync_on.png | Bin 845 -> 0 bytes docs/html/tab_a.png | Bin 142 -> 0 bytes docs/html/tab_b.png | Bin 169 -> 0 bytes docs/html/tab_h.png | Bin 177 -> 0 bytes docs/html/tab_s.png | Bin 184 -> 0 bytes docs/html/tabs.css | 1 - docs/latex/Makefile | 23 - docs/latex/algo_8c.tex | 303 -- docs/latex/algo_8c__incl.dot | 34 - docs/latex/algo_8h.tex | 5 - docs/latex/algo_8h.tex.tmp | 152 - docs/latex/algo_8h__dep__incl.dot | 13 - docs/latex/algo_8h__incl.dot | 15 - docs/latex/annotated.tex | 13 - docs/latex/arbres_8c.tex | 100 - docs/latex/arbres_8c__incl.dot | 48 - docs/latex/array-list_8c.tex | 286 -- docs/latex/array-list_8c__incl.dot | 14 - docs/latex/array-list_8h.tex | 295 -- docs/latex/array-list_8h__dep__incl.dot | 63 - docs/latex/array-list_8h__incl.dot | 9 - .../dir_68267d1309a1af8e8297ef4c3efbcdba.tex | 29 - ...r_68267d1309a1af8e8297ef4c3efbcdba_dep.dot | 8 - .../dir_d44c64559bbebec7f509842c48db8b23.tex | 27 - docs/latex/display_8c.tex | 393 --- docs/latex/display_8c__incl.dot | 22 - docs/latex/display_8h.tex | 167 -- docs/latex/display_8h__dep__incl.dot | 15 - docs/latex/display_8h__incl.dot | 17 - docs/latex/doxygen.sty | 576 ---- docs/latex/files.tex | 25 - docs/latex/fonctions_8c.tex | 141 - docs/latex/fonctions_8c__incl.dot | 23 - docs/latex/fonctions_8h.tex | 108 - docs/latex/fonctions_8h__dep__incl.dot | 15 - docs/latex/fonctions_8h__incl.dot | 19 - docs/latex/index.tex | 35 - docs/latex/longtable_doxygen.sty | 448 --- docs/latex/manageSIGINT_8c.tex | 64 - docs/latex/manageSIGINT_8c__incl.dot | 17 - docs/latex/manageSIGINT_8h.tex | 64 - docs/latex/manageSIGINT_8h__dep__incl.dot | 11 - docs/latex/manageSIGINT_8h__incl.dot | 11 - docs/latex/options_8c.tex | 158 - docs/latex/options_8c__incl.dot | 21 - docs/latex/options_8h.tex | 104 - docs/latex/options_8h__dep__incl.dot | 11 - docs/latex/options_8h__incl.dot | 14 - docs/latex/parse_8c.tex | 640 ----- docs/latex/parse_8c__incl.dot | 39 - docs/latex/parse_8h.tex | 634 ---- docs/latex/parse_8h__dep__incl.dot | 13 - docs/latex/parse_8h__incl.dot | 15 - docs/latex/pile_8c.tex | 104 - docs/latex/pile_8c__incl.dot | 15 - docs/latex/pile_8h.tex | 118 - docs/latex/pile_8h__dep__incl.dot | 11 - docs/latex/pile_8h__incl.dot | 9 - docs/latex/refman.tex | 224 -- docs/latex/restrictiveOptions_8c.tex | 224 -- docs/latex/restrictiveOptions_8c__incl.dot | 29 - docs/latex/restrictiveOptions_8h.tex | 64 - .../restrictiveOptions_8h__dep__incl.dot | 11 - docs/latex/restrictiveOptions_8h__incl.dot | 15 - docs/latex/stat_8c.tex | 244 -- docs/latex/stat_8c__incl.dot | 38 - docs/latex/stat_8h.tex | 98 - docs/latex/stat_8h__dep__incl.dot | 11 - docs/latex/stat_8h__incl.dot | 15 - docs/latex/struct_8h.tex | 143 - docs/latex/struct_8h__dep__incl.dot | 56 - docs/latex/struct_8h__incl.dot | 12 - docs/latex/structarbre.tex | 65 - docs/latex/structarbre__coll__graph.dot | 9 - docs/latex/structarete.tex | 55 - docs/latex/structarete__coll__graph.dot | 11 - docs/latex/structcorres__genre.tex | 53 - .../structcorres__genre__coll__graph.dot | 7 - docs/latex/structcorres__genus.tex | 53 - .../structcorres__genus__coll__graph.dot | 7 - docs/latex/structedge.tex | 55 - docs/latex/structedge2.tex | 47 - docs/latex/structedge2__coll__graph.dot | 7 - docs/latex/structedge__coll__graph.dot | 11 - docs/latex/structlist__t.tex | 41 - docs/latex/structlist__t__coll__graph.dot | 7 - docs/latex/structnode.tex | 39 - docs/latex/structnode__coll__graph.dot | 9 - docs/latex/structopt.tex | 117 - docs/latex/structopt__coll__graph.dot | 7 - docs/latex/structposition.tex | 53 - docs/latex/structposition__coll__graph.dot | 7 - docs/latex/structtab__genre.tex | 53 - docs/latex/structtab__genre__coll__graph.dot | 9 - docs/latex/structtab__genus.tex | 53 - docs/latex/structtab__genus__coll__graph.dot | 9 - docs/latex/structtree.tex | 65 - docs/latex/structtree__coll__graph.dot | 9 - docs/latex/structvertex.tex | 67 - docs/latex/structvertex__coll__graph.dot | 7 - docs/latex/tabu_doxygen.sty | 2557 ----------------- 452 files changed, 2 insertions(+), 34579 deletions(-) delete mode 100644 docs/html/algo_8c.html delete mode 100644 docs/html/algo_8c.js delete mode 100644 docs/html/algo_8c__incl.dot delete mode 100644 docs/html/algo_8h.html delete mode 100644 docs/html/algo_8h.js delete mode 100644 docs/html/algo_8h__dep__incl.dot delete mode 100644 docs/html/algo_8h__incl.dot delete mode 100644 docs/html/algo_8h_source.html delete mode 100644 docs/html/annotated.html delete mode 100644 docs/html/annotated_dup.js delete mode 100644 docs/html/arbres_8c.html delete mode 100644 docs/html/arbres_8c.js delete mode 100644 docs/html/arbres_8c__incl.dot delete mode 100644 docs/html/array-list_8c.html delete mode 100644 docs/html/array-list_8c.js delete mode 100644 docs/html/array-list_8c__incl.dot delete mode 100644 docs/html/array-list_8h.html delete mode 100644 docs/html/array-list_8h.js delete mode 100644 docs/html/array-list_8h__dep__incl.dot delete mode 100644 docs/html/array-list_8h__incl.dot delete mode 100644 docs/html/array-list_8h_source.html delete mode 100644 docs/html/bc_s.png delete mode 100644 docs/html/bdwn.png delete mode 100644 docs/html/classes.html delete mode 100644 docs/html/closed.png delete mode 100644 docs/html/dir_000001_000000.html delete mode 100644 docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html delete mode 100644 docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js delete mode 100644 docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot delete mode 100644 docs/html/dir_d44c64559bbebec7f509842c48db8b23.html delete mode 100644 docs/html/dir_d44c64559bbebec7f509842c48db8b23.js delete mode 100644 docs/html/display_8c.html delete mode 100644 docs/html/display_8c.js delete mode 100644 docs/html/display_8c__incl.dot delete mode 100644 docs/html/display_8h.html delete mode 100644 docs/html/display_8h.js delete mode 100644 docs/html/display_8h__dep__incl.dot delete mode 100644 docs/html/display_8h__incl.dot delete mode 100644 docs/html/display_8h_source.html delete mode 100644 docs/html/doc.png delete mode 100644 docs/html/doxygen.css delete mode 100644 docs/html/doxygen.png delete mode 100644 docs/html/dynsections.js delete mode 100644 docs/html/files.html delete mode 100644 docs/html/files_dup.js delete mode 100644 docs/html/folderclosed.png delete mode 100644 docs/html/folderopen.png delete mode 100644 docs/html/fonctions_8c.html delete mode 100644 docs/html/fonctions_8c.js delete mode 100644 docs/html/fonctions_8c__incl.dot delete mode 100644 docs/html/fonctions_8h.html delete mode 100644 docs/html/fonctions_8h.js delete mode 100644 docs/html/fonctions_8h__dep__incl.dot delete mode 100644 docs/html/fonctions_8h__incl.dot delete mode 100644 docs/html/fonctions_8h_source.html delete mode 100644 docs/html/functions.html delete mode 100644 docs/html/functions_vars.html delete mode 100644 docs/html/globals.html delete mode 100644 docs/html/globals_defs.html delete mode 100644 docs/html/globals_func.html delete mode 100644 docs/html/globals_type.html delete mode 100644 docs/html/graph_legend.dot delete mode 100644 docs/html/graph_legend.html delete mode 100644 docs/html/index.html delete mode 100644 docs/html/jquery.js delete mode 100644 docs/html/manageSIGINT_8c.html delete mode 100644 docs/html/manageSIGINT_8c.js delete mode 100644 docs/html/manageSIGINT_8c__incl.dot delete mode 100644 docs/html/manageSIGINT_8h.html delete mode 100644 docs/html/manageSIGINT_8h.js delete mode 100644 docs/html/manageSIGINT_8h__dep__incl.dot delete mode 100644 docs/html/manageSIGINT_8h__incl.dot delete mode 100644 docs/html/manageSIGINT_8h_source.html delete mode 100644 docs/html/menu.js delete mode 100644 docs/html/menudata.js delete mode 100644 docs/html/nav_f.png delete mode 100644 docs/html/nav_g.png delete mode 100644 docs/html/nav_h.png delete mode 100644 docs/html/navtree.css delete mode 100644 docs/html/navtree.js delete mode 100644 docs/html/navtreedata.js delete mode 100644 docs/html/navtreeindex0.js delete mode 100644 docs/html/open.png delete mode 100644 docs/html/options_8c.html delete mode 100644 docs/html/options_8c.js delete mode 100644 docs/html/options_8c__incl.dot delete mode 100644 docs/html/options_8h.html delete mode 100644 docs/html/options_8h.js delete mode 100644 docs/html/options_8h__dep__incl.dot delete mode 100644 docs/html/options_8h__incl.dot delete mode 100644 docs/html/options_8h_source.html delete mode 100644 docs/html/parse_8c.html delete mode 100644 docs/html/parse_8c.js delete mode 100644 docs/html/parse_8c__incl.dot delete mode 100644 docs/html/parse_8h.html delete mode 100644 docs/html/parse_8h.js delete mode 100644 docs/html/parse_8h__dep__incl.dot delete mode 100644 docs/html/parse_8h__incl.dot delete mode 100644 docs/html/parse_8h_source.html delete mode 100644 docs/html/pile_8c.html delete mode 100644 docs/html/pile_8c.js delete mode 100644 docs/html/pile_8c__incl.dot delete mode 100644 docs/html/pile_8h.html delete mode 100644 docs/html/pile_8h.js delete mode 100644 docs/html/pile_8h__dep__incl.dot delete mode 100644 docs/html/pile_8h__incl.dot delete mode 100644 docs/html/pile_8h_source.html delete mode 100644 docs/html/resize.js delete mode 100644 docs/html/restrictiveOptions_8c.html delete mode 100644 docs/html/restrictiveOptions_8c.js delete mode 100644 docs/html/restrictiveOptions_8c__incl.dot delete mode 100644 docs/html/restrictiveOptions_8h.html delete mode 100644 docs/html/restrictiveOptions_8h.js delete mode 100644 docs/html/restrictiveOptions_8h__dep__incl.dot delete mode 100644 docs/html/restrictiveOptions_8h__incl.dot delete mode 100644 docs/html/restrictiveOptions_8h_source.html delete mode 100644 docs/html/search/all_0.html delete mode 100644 docs/html/search/all_0.js delete mode 100644 docs/html/search/all_1.html delete mode 100644 docs/html/search/all_1.js delete mode 100644 docs/html/search/all_10.html delete mode 100644 docs/html/search/all_10.js delete mode 100644 docs/html/search/all_11.html delete mode 100644 docs/html/search/all_11.js delete mode 100644 docs/html/search/all_12.html delete mode 100644 docs/html/search/all_12.js delete mode 100644 docs/html/search/all_13.html delete mode 100644 docs/html/search/all_13.js delete mode 100644 docs/html/search/all_14.html delete mode 100644 docs/html/search/all_14.js delete mode 100644 docs/html/search/all_2.html delete mode 100644 docs/html/search/all_2.js delete mode 100644 docs/html/search/all_3.html delete mode 100644 docs/html/search/all_3.js delete mode 100644 docs/html/search/all_4.html delete mode 100644 docs/html/search/all_4.js delete mode 100644 docs/html/search/all_5.html delete mode 100644 docs/html/search/all_5.js delete mode 100644 docs/html/search/all_6.html delete mode 100644 docs/html/search/all_6.js delete mode 100644 docs/html/search/all_7.html delete mode 100644 docs/html/search/all_7.js delete mode 100644 docs/html/search/all_8.html delete mode 100644 docs/html/search/all_8.js delete mode 100644 docs/html/search/all_9.html delete mode 100644 docs/html/search/all_9.js delete mode 100644 docs/html/search/all_a.html delete mode 100644 docs/html/search/all_a.js delete mode 100644 docs/html/search/all_b.html delete mode 100644 docs/html/search/all_b.js delete mode 100644 docs/html/search/all_c.html delete mode 100644 docs/html/search/all_c.js delete mode 100644 docs/html/search/all_d.html delete mode 100644 docs/html/search/all_d.js delete mode 100644 docs/html/search/all_e.html delete mode 100644 docs/html/search/all_e.js delete mode 100644 docs/html/search/all_f.html delete mode 100644 docs/html/search/all_f.js delete mode 100644 docs/html/search/classes_0.html delete mode 100644 docs/html/search/classes_0.js delete mode 100644 docs/html/search/classes_1.html delete mode 100644 docs/html/search/classes_1.js delete mode 100644 docs/html/search/classes_2.html delete mode 100644 docs/html/search/classes_2.js delete mode 100644 docs/html/search/classes_3.html delete mode 100644 docs/html/search/classes_3.js delete mode 100644 docs/html/search/classes_4.html delete mode 100644 docs/html/search/classes_4.js delete mode 100644 docs/html/search/classes_5.html delete mode 100644 docs/html/search/classes_5.js delete mode 100644 docs/html/search/classes_6.html delete mode 100644 docs/html/search/classes_6.js delete mode 100644 docs/html/search/classes_7.html delete mode 100644 docs/html/search/classes_7.js delete mode 100644 docs/html/search/close.png delete mode 100644 docs/html/search/defines_0.html delete mode 100644 docs/html/search/defines_0.js delete mode 100644 docs/html/search/defines_1.html delete mode 100644 docs/html/search/defines_1.js delete mode 100644 docs/html/search/defines_2.html delete mode 100644 docs/html/search/defines_2.js delete mode 100644 docs/html/search/defines_3.html delete mode 100644 docs/html/search/defines_3.js delete mode 100644 docs/html/search/files_0.html delete mode 100644 docs/html/search/files_0.js delete mode 100644 docs/html/search/files_1.html delete mode 100644 docs/html/search/files_1.js delete mode 100644 docs/html/search/files_2.html delete mode 100644 docs/html/search/files_2.js delete mode 100644 docs/html/search/files_3.html delete mode 100644 docs/html/search/files_3.js delete mode 100644 docs/html/search/files_4.html delete mode 100644 docs/html/search/files_4.js delete mode 100644 docs/html/search/files_5.html delete mode 100644 docs/html/search/files_5.js delete mode 100644 docs/html/search/files_6.html delete mode 100644 docs/html/search/files_6.js delete mode 100644 docs/html/search/files_7.html delete mode 100644 docs/html/search/files_7.js delete mode 100644 docs/html/search/functions_0.html delete mode 100644 docs/html/search/functions_0.js delete mode 100644 docs/html/search/functions_1.html delete mode 100644 docs/html/search/functions_1.js delete mode 100644 docs/html/search/functions_10.html delete mode 100644 docs/html/search/functions_10.js delete mode 100644 docs/html/search/functions_11.html delete mode 100644 docs/html/search/functions_11.js delete mode 100644 docs/html/search/functions_12.html delete mode 100644 docs/html/search/functions_12.js delete mode 100644 docs/html/search/functions_2.html delete mode 100644 docs/html/search/functions_2.js delete mode 100644 docs/html/search/functions_3.html delete mode 100644 docs/html/search/functions_3.js delete mode 100644 docs/html/search/functions_4.html delete mode 100644 docs/html/search/functions_4.js delete mode 100644 docs/html/search/functions_5.html delete mode 100644 docs/html/search/functions_5.js delete mode 100644 docs/html/search/functions_6.html delete mode 100644 docs/html/search/functions_6.js delete mode 100644 docs/html/search/functions_7.html delete mode 100644 docs/html/search/functions_7.js delete mode 100644 docs/html/search/functions_8.html delete mode 100644 docs/html/search/functions_8.js delete mode 100644 docs/html/search/functions_9.html delete mode 100644 docs/html/search/functions_9.js delete mode 100644 docs/html/search/functions_a.html delete mode 100644 docs/html/search/functions_a.js delete mode 100644 docs/html/search/functions_b.html delete mode 100644 docs/html/search/functions_b.js delete mode 100644 docs/html/search/functions_c.html delete mode 100644 docs/html/search/functions_c.js delete mode 100644 docs/html/search/functions_d.html delete mode 100644 docs/html/search/functions_d.js delete mode 100644 docs/html/search/functions_e.html delete mode 100644 docs/html/search/functions_e.js delete mode 100644 docs/html/search/functions_f.html delete mode 100644 docs/html/search/functions_f.js delete mode 100644 docs/html/search/mag_sel.png delete mode 100644 docs/html/search/nomatches.html delete mode 100644 docs/html/search/search.css delete mode 100644 docs/html/search/search.js delete mode 100644 docs/html/search/search_l.png delete mode 100644 docs/html/search/search_m.png delete mode 100644 docs/html/search/search_r.png delete mode 100644 docs/html/search/searchdata.js delete mode 100644 docs/html/search/typedefs_0.html delete mode 100644 docs/html/search/typedefs_0.js delete mode 100644 docs/html/search/typedefs_1.html delete mode 100644 docs/html/search/typedefs_1.js delete mode 100644 docs/html/search/typedefs_2.html delete mode 100644 docs/html/search/typedefs_2.js delete mode 100644 docs/html/search/typedefs_3.html delete mode 100644 docs/html/search/typedefs_3.js delete mode 100644 docs/html/search/typedefs_4.html delete mode 100644 docs/html/search/typedefs_4.js delete mode 100644 docs/html/search/typedefs_5.html delete mode 100644 docs/html/search/typedefs_5.js delete mode 100644 docs/html/search/typedefs_6.html delete mode 100644 docs/html/search/typedefs_6.js delete mode 100644 docs/html/search/typedefs_7.html delete mode 100644 docs/html/search/typedefs_7.js delete mode 100644 docs/html/search/variables_0.html delete mode 100644 docs/html/search/variables_0.js delete mode 100644 docs/html/search/variables_1.html delete mode 100644 docs/html/search/variables_1.js delete mode 100644 docs/html/search/variables_2.html delete mode 100644 docs/html/search/variables_2.js delete mode 100644 docs/html/search/variables_3.html delete mode 100644 docs/html/search/variables_3.js delete mode 100644 docs/html/search/variables_4.html delete mode 100644 docs/html/search/variables_4.js delete mode 100644 docs/html/search/variables_5.html delete mode 100644 docs/html/search/variables_5.js delete mode 100644 docs/html/search/variables_6.html delete mode 100644 docs/html/search/variables_6.js delete mode 100644 docs/html/search/variables_7.html delete mode 100644 docs/html/search/variables_7.js delete mode 100644 docs/html/search/variables_8.html delete mode 100644 docs/html/search/variables_8.js delete mode 100644 docs/html/search/variables_9.html delete mode 100644 docs/html/search/variables_9.js delete mode 100644 docs/html/search/variables_a.html delete mode 100644 docs/html/search/variables_a.js delete mode 100644 docs/html/search/variables_b.html delete mode 100644 docs/html/search/variables_b.js delete mode 100644 docs/html/search/variables_c.html delete mode 100644 docs/html/search/variables_c.js delete mode 100644 docs/html/search/variables_d.html delete mode 100644 docs/html/search/variables_d.js delete mode 100644 docs/html/search/variables_e.html delete mode 100644 docs/html/search/variables_e.js delete mode 100644 docs/html/search/variables_f.html delete mode 100644 docs/html/search/variables_f.js delete mode 100644 docs/html/splitbar.png delete mode 100644 docs/html/stat_8c.html delete mode 100644 docs/html/stat_8c.js delete mode 100644 docs/html/stat_8c__incl.dot delete mode 100644 docs/html/stat_8h.html delete mode 100644 docs/html/stat_8h.js delete mode 100644 docs/html/stat_8h__dep__incl.dot delete mode 100644 docs/html/stat_8h__incl.dot delete mode 100644 docs/html/stat_8h_source.html delete mode 100644 docs/html/struct_8h.html delete mode 100644 docs/html/struct_8h.js delete mode 100644 docs/html/struct_8h__dep__incl.dot delete mode 100644 docs/html/struct_8h__incl.dot delete mode 100644 docs/html/struct_8h_source.html delete mode 100644 docs/html/structarbre.html delete mode 100644 docs/html/structarbre.js delete mode 100644 docs/html/structarbre__coll__graph.dot delete mode 100644 docs/html/structarete.html delete mode 100644 docs/html/structarete.js delete mode 100644 docs/html/structarete__coll__graph.dot delete mode 100644 docs/html/structcorres__genre.html delete mode 100644 docs/html/structcorres__genre.js delete mode 100644 docs/html/structcorres__genre__coll__graph.dot delete mode 100644 docs/html/structcorres__genus.html delete mode 100644 docs/html/structcorres__genus.js delete mode 100644 docs/html/structcorres__genus__coll__graph.dot delete mode 100644 docs/html/structedge.html delete mode 100644 docs/html/structedge.js delete mode 100644 docs/html/structedge2.html delete mode 100644 docs/html/structedge2.js delete mode 100644 docs/html/structedge2__coll__graph.dot delete mode 100644 docs/html/structedge__coll__graph.dot delete mode 100644 docs/html/structlist__t.html delete mode 100644 docs/html/structlist__t.js delete mode 100644 docs/html/structlist__t__coll__graph.dot delete mode 100644 docs/html/structnode.html delete mode 100644 docs/html/structnode.js delete mode 100644 docs/html/structnode__coll__graph.dot delete mode 100644 docs/html/structopt.html delete mode 100644 docs/html/structopt.js delete mode 100644 docs/html/structopt__coll__graph.dot delete mode 100644 docs/html/structposition.html delete mode 100644 docs/html/structposition.js delete mode 100644 docs/html/structposition__coll__graph.dot delete mode 100644 docs/html/structtab__genre.html delete mode 100644 docs/html/structtab__genre.js delete mode 100644 docs/html/structtab__genre__coll__graph.dot delete mode 100644 docs/html/structtab__genus.html delete mode 100644 docs/html/structtab__genus.js delete mode 100644 docs/html/structtab__genus__coll__graph.dot delete mode 100644 docs/html/structtree.html delete mode 100644 docs/html/structtree.js delete mode 100644 docs/html/structtree__coll__graph.dot delete mode 100644 docs/html/structvertex.html delete mode 100644 docs/html/structvertex.js delete mode 100644 docs/html/structvertex__coll__graph.dot delete mode 100644 docs/html/sync_off.png delete mode 100644 docs/html/sync_on.png delete mode 100644 docs/html/tab_a.png delete mode 100644 docs/html/tab_b.png delete mode 100644 docs/html/tab_h.png delete mode 100644 docs/html/tab_s.png delete mode 100644 docs/html/tabs.css delete mode 100644 docs/latex/Makefile delete mode 100644 docs/latex/algo_8c.tex delete mode 100644 docs/latex/algo_8c__incl.dot delete mode 100644 docs/latex/algo_8h.tex delete mode 100644 docs/latex/algo_8h.tex.tmp delete mode 100644 docs/latex/algo_8h__dep__incl.dot delete mode 100644 docs/latex/algo_8h__incl.dot delete mode 100644 docs/latex/annotated.tex delete mode 100644 docs/latex/arbres_8c.tex delete mode 100644 docs/latex/arbres_8c__incl.dot delete mode 100644 docs/latex/array-list_8c.tex delete mode 100644 docs/latex/array-list_8c__incl.dot delete mode 100644 docs/latex/array-list_8h.tex delete mode 100644 docs/latex/array-list_8h__dep__incl.dot delete mode 100644 docs/latex/array-list_8h__incl.dot delete mode 100644 docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex delete mode 100644 docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot delete mode 100644 docs/latex/dir_d44c64559bbebec7f509842c48db8b23.tex delete mode 100644 docs/latex/display_8c.tex delete mode 100644 docs/latex/display_8c__incl.dot delete mode 100644 docs/latex/display_8h.tex delete mode 100644 docs/latex/display_8h__dep__incl.dot delete mode 100644 docs/latex/display_8h__incl.dot delete mode 100644 docs/latex/doxygen.sty delete mode 100644 docs/latex/files.tex delete mode 100644 docs/latex/fonctions_8c.tex delete mode 100644 docs/latex/fonctions_8c__incl.dot delete mode 100644 docs/latex/fonctions_8h.tex delete mode 100644 docs/latex/fonctions_8h__dep__incl.dot delete mode 100644 docs/latex/fonctions_8h__incl.dot delete mode 100644 docs/latex/index.tex delete mode 100644 docs/latex/longtable_doxygen.sty delete mode 100644 docs/latex/manageSIGINT_8c.tex delete mode 100644 docs/latex/manageSIGINT_8c__incl.dot delete mode 100644 docs/latex/manageSIGINT_8h.tex delete mode 100644 docs/latex/manageSIGINT_8h__dep__incl.dot delete mode 100644 docs/latex/manageSIGINT_8h__incl.dot delete mode 100644 docs/latex/options_8c.tex delete mode 100644 docs/latex/options_8c__incl.dot delete mode 100644 docs/latex/options_8h.tex delete mode 100644 docs/latex/options_8h__dep__incl.dot delete mode 100644 docs/latex/options_8h__incl.dot delete mode 100644 docs/latex/parse_8c.tex delete mode 100644 docs/latex/parse_8c__incl.dot delete mode 100644 docs/latex/parse_8h.tex delete mode 100644 docs/latex/parse_8h__dep__incl.dot delete mode 100644 docs/latex/parse_8h__incl.dot delete mode 100644 docs/latex/pile_8c.tex delete mode 100644 docs/latex/pile_8c__incl.dot delete mode 100644 docs/latex/pile_8h.tex delete mode 100644 docs/latex/pile_8h__dep__incl.dot delete mode 100644 docs/latex/pile_8h__incl.dot delete mode 100644 docs/latex/refman.tex delete mode 100644 docs/latex/restrictiveOptions_8c.tex delete mode 100644 docs/latex/restrictiveOptions_8c__incl.dot delete mode 100644 docs/latex/restrictiveOptions_8h.tex delete mode 100644 docs/latex/restrictiveOptions_8h__dep__incl.dot delete mode 100644 docs/latex/restrictiveOptions_8h__incl.dot delete mode 100644 docs/latex/stat_8c.tex delete mode 100644 docs/latex/stat_8c__incl.dot delete mode 100644 docs/latex/stat_8h.tex delete mode 100644 docs/latex/stat_8h__dep__incl.dot delete mode 100644 docs/latex/stat_8h__incl.dot delete mode 100644 docs/latex/struct_8h.tex delete mode 100644 docs/latex/struct_8h__dep__incl.dot delete mode 100644 docs/latex/struct_8h__incl.dot delete mode 100644 docs/latex/structarbre.tex delete mode 100644 docs/latex/structarbre__coll__graph.dot delete mode 100644 docs/latex/structarete.tex delete mode 100644 docs/latex/structarete__coll__graph.dot delete mode 100644 docs/latex/structcorres__genre.tex delete mode 100644 docs/latex/structcorres__genre__coll__graph.dot delete mode 100644 docs/latex/structcorres__genus.tex delete mode 100644 docs/latex/structcorres__genus__coll__graph.dot delete mode 100644 docs/latex/structedge.tex delete mode 100644 docs/latex/structedge2.tex delete mode 100644 docs/latex/structedge2__coll__graph.dot delete mode 100644 docs/latex/structedge__coll__graph.dot delete mode 100644 docs/latex/structlist__t.tex delete mode 100644 docs/latex/structlist__t__coll__graph.dot delete mode 100644 docs/latex/structnode.tex delete mode 100644 docs/latex/structnode__coll__graph.dot delete mode 100644 docs/latex/structopt.tex delete mode 100644 docs/latex/structopt__coll__graph.dot delete mode 100644 docs/latex/structposition.tex delete mode 100644 docs/latex/structposition__coll__graph.dot delete mode 100644 docs/latex/structtab__genre.tex delete mode 100644 docs/latex/structtab__genre__coll__graph.dot delete mode 100644 docs/latex/structtab__genus.tex delete mode 100644 docs/latex/structtab__genus__coll__graph.dot delete mode 100644 docs/latex/structtree.tex delete mode 100644 docs/latex/structtree__coll__graph.dot delete mode 100644 docs/latex/structvertex.tex delete mode 100644 docs/latex/structvertex__coll__graph.dot delete mode 100644 docs/latex/tabu_doxygen.sty diff --git a/.gitignore b/.gitignore index febf1a4..35e57f5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /data/ /obj/ /bin/ -/.vscode/ \ No newline at end of file +/.vscode/ +docs/ \ No newline at end of file diff --git a/docs/html/algo_8c.html b/docs/html/algo_8c.html deleted file mode 100644 index e808d08..0000000 --- a/docs/html/algo_8c.html +++ /dev/null @@ -1,564 +0,0 @@ - - - - - - - -Project 2022: src/algo.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
algo.c File Reference
-
-
-
#include "../include/algo.h"
-#include "../include/fonctions.h"
-#include "../include/struct.h"
-#include <stdlib.h>
-#include "../include/display.h"
-#include <time.h>
-
-Include dependency graph for algo.c:
-
-
- -
-
- - - -

-Macros

#define INFINI   4000000
 
- - - - - - - - - - - - - - - - - - -

-Functions

size_t vertexDistMin (vertex *tab, size_t size)
 
edgeminimumSpanningTree (tree *forest, size_t size)
 Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre. More...
 
size_t firstNotHandledVertex (short *composante, size_t size)
 Pour gérer le cas où on ne veut que la plus grande composante connexe. More...
 
void addVertexes (short *composante, size_t size, size_t tree1, tree *forest, double distmax, list_t *currentcomposante)
 Ajoute à currentcomposante le premier sommet non traité à distance<distmax de tree1 et itère sur ce sommet. More...
 
void copyComposant (list_t *composante1, list_t *composante2)
 Copie le contenu de composante2 dans composante1 en supposant que size(composante2) > size(composante1) More...
 
treegetForestMaxComposante (tree *forest, size_t size, double distmax, size_t *newsize)
 Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande composante connexe, paramétrée par la distance distmax. More...
 
-

Macro Definition Documentation

- -

◆ INFINI

- -
-
- - - - -
#define INFINI   4000000
-
- -
-
-

Function Documentation

- -

◆ addVertexes()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void addVertexes (short * composante,
size_t size,
size_t tree1,
treeforest,
double distmax,
list_tcurrentcomposante 
)
-
- -

Ajoute à currentcomposante le premier sommet non traité à distance<distmax de tree1 et itère sur ce sommet.

-
Parameters
- - - - - - - -
composante
size
tree
forest
distmax
currentcomposante
-
-
-
103  {
-
104  composante[tree1] = 1;
-
105  for (size_t i = 0; i<size; i++){
-
106  if (!composante[i]){
-
107  if (distanceTrees(&forest[tree1], &forest[i]) < distmax){
-
108  list_append(currentcomposante, create_size_t(i));
-
109  addVertexes(composante, size, i, forest, distmax, currentcomposante);
-
110  }
-
111  }
-
112  }
-
113 }
-
-
-
- -

◆ copyComposant()

- -
-
- - - - - - - - - - - - - - - - - - -
void copyComposant (list_tcomposante1,
list_tcomposante2 
)
-
- -

Copie le contenu de composante2 dans composante1 en supposant que size(composante2) > size(composante1)

-
Parameters
- - - -
composante1
composante2
-
-
-
123  {
-
124  for (size_t i = 0; i<list_size(composante1); i++){
-
125  size_t elm = *((size_t*)list_get(composante2, i));
-
126  list_set(composante1, i, create_size_t(elm));
-
127  }
-
128  for (size_t i = list_size(composante1); i<list_size(composante2); i++){
-
129  size_t elm = *((size_t*)list_get(composante2, i));
-
130  list_append(composante1, create_size_t(elm));
-
131  }
-
132 }
-
-
-
- -

◆ firstNotHandledVertex()

- -
-
- - - - - - - - - - - - - - - - - - -
size_t firstNotHandledVertex (short * composante,
size_t size 
)
-
- -

Pour gérer le cas où on ne veut que la plus grande composante connexe.

-

retourne le premier sommet pas encore traité

-
Parameters
- - - -
composante
size
-
-
-
Returns
size_t
-
83  {
-
84  for (size_t i = 0; i<size; i++){
-
85  if (!composante[i]) {
-
86  composante[i] = 1;
-
87  return i;
-
88  }
-
89  }
-
90  return -1;
-
91 }
-
-
-
- -

◆ getForestMaxComposante()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
tree* getForestMaxComposante (treeforest,
size_t size,
double distmax,
size_t * newsize 
)
-
- -

Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande composante connexe, paramétrée par la distance distmax.

-
Parameters
- - - - - -
forest
sizela taille de forest
distmax
newsizepointeur vers la nouvelle taille de la forêt
-
-
-
Returns
tree*
-
136  {
-
137  clock_t start = clock();
-
138  short composante[size]; //si l'arbre appartient déjà à une composante
-
139  size_t numberOfVertexHandled = 0;
-
140 
-
141  for (size_t i = 0; i<size; i++){
-
142  composante[i] = 0;
-
143  }
-
144 
-
145  list_t* composantemax = list_create();
-
146 
-
147 
-
148  while (numberOfVertexHandled < size){
-
149  list_t* currentcomposante = list_create();
-
150  list_append(currentcomposante, create_size_t(firstNotHandledVertex(composante, size)));
-
151  addVertexes(composante, size, *((size_t*)list_get(currentcomposante, 0)), forest, distmax, currentcomposante);
-
152 
-
153  numberOfVertexHandled+=list_size(currentcomposante);
-
154  loadingBar(numberOfVertexHandled, size, clock() - start);
-
155  if (list_size(currentcomposante) > list_size(composantemax)){;
-
156  copyComposant(composantemax, currentcomposante);
-
157  }
-
158  list_free(currentcomposante);
-
159  }
-
160 
-
161  tree* forest2 = malloc(sizeof(*forest2)*list_size(composantemax));
-
162 
-
163  for (size_t i = 0; i<list_size(composantemax); i++){
-
164  size_t tree = *((size_t*)list_get(composantemax, i));
-
165  forest2[i] = forest[tree];
-
166  }
-
167 
-
168  *newsize = list_size(composantemax);
-
169  list_free(composantemax);
-
170  return forest2;
-
171 }
-
-
-
- -

◆ minimumSpanningTree()

- -
-
- - - - - - - - - - - - - - - - - - -
edge* minimumSpanningTree (treeforest,
size_t size 
)
-
- -

Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre.

-
Parameters
- - - -
forestle graphe dont on calcule l'arbre
sizela taille du graphe
-
-
-
Returns
arete* : la liste des arètes constituant l'arbre recouvrant minimal
-
25  {
-
26  clock_t start = clock();
-
27  vertex tab[size];
-
28  size_t sizeOfComposante = 1;
-
29  double minimumDistance = INFINI;
-
30 
-
31  for (size_t i = 0; i<size; i++){
-
32  tab[i].distMin = minimumDistance;
-
33  tab[i].vertexMin = 0;
-
34  tab[i].isInComponent = 0;
-
35  }
-
36  tab[0].isInComponent = 1;
-
37 
-
38  edge* listeOfAretes = malloc((size - 1)*sizeof(edge));
-
39  if (listeOfAretes== NULL){
-
40  fprintf(stderr, "Allocation error in function arbreRecouvrantMinimal");
-
41  exit(1);
-
42  }
-
43 
-
44  size_t minimumVertex;
-
45  size_t lastHandledVertex = 0;
-
46  double currentDist;
-
47 
-
48  while(sizeOfComposante <= size - 1){ //nb aretes <= nsommets - 1
-
49  for (size_t i = 0; i<size; i++){ //sur tous les arbres de la structure sauf le premier
-
50  if ( !tab[i].isInComponent){ //sommet pas dans la composante connexe
-
51  if ( (currentDist = distanceTrees(&forest[i], &forest[lastHandledVertex])) < tab[i].distMin){
-
52  tab[i].distMin = currentDist;
-
53  tab[i].vertexMin = lastHandledVertex;
-
54  }
-
55  }
-
56  }
-
57 
-
58  minimumVertex = vertexDistMin(tab, size);
-
59 
-
60  listeOfAretes[sizeOfComposante-1].tree1 = &forest[minimumVertex];
-
61  listeOfAretes[sizeOfComposante-1].tree2 = &forest[tab[minimumVertex].vertexMin];
-
62  sizeOfComposante++;
-
63  lastHandledVertex = minimumVertex;
-
64  tab[minimumVertex].isInComponent= 1;
-
65  loadingBar(sizeOfComposante - 1, size - 1, clock() - start);
-
66  }
-
67 
-
68  printf("\nCalcul de l'arbre recouvrant minimal terminé \n");
-
69  return listeOfAretes;
-
70 }
-
-
-
- -

◆ vertexDistMin()

- -
-
- - - - - - - - - - - - - - - - - - -
size_t vertexDistMin (vertextab,
size_t size 
)
-
-
13  {
-
14  double distmin = tab[0].distMin;
-
15  size_t imin = 0;
-
16  for (size_t i = 0; i<size; i++){
-
17  if ( (tab[i].distMin < distmin) && !tab[i].isInComponent){
-
18  distmin = tab[i].distMin;
-
19  imin = i;
-
20  }
-
21  }
-
22  return imin;
-
23 }
-
-
-
-
-
-
size_t list_size(list_t *it)
revoie la taille de la liste
Definition: array-list.c:54
-
struct tree tree
structure informations importantes concernant un arbre
-
size_t vertexDistMin(vertex *tab, size_t size)
Definition: algo.c:13
-
double distanceTrees(tree *tree1, tree *tree2)
Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude...
Definition: fonctions.c:50
-
void list_set(list_t *it, int pos, void *element)
remplace l'élément à la position donnée par l'élément donné
Definition: array-list.c:50
-
void list_free(list_t *it)
libère la liste et tous ses éléments
Definition: array-list.c:84
-
size_t vertexMin
le sommet réalisant cette distance
Definition: struct.h:104
-
list_t * list_create(void)
Crée une liste vide.
Definition: array-list.c:11
-
double distMin
la distance minimale aux autres sommets enregistrée
Definition: struct.h:102
-
structure définissant une arête
Definition: struct.h:75
-
tree * tree1
premier arbre connecté
Definition: struct.h:77
-
Definition: array-list.c:5
-
void copyComposant(list_t *composante1, list_t *composante2)
Copie le contenu de composante2 dans composante1 en supposant que size(composante2) > size(composante...
Definition: algo.c:123
-
size_t firstNotHandledVertex(short *composante, size_t size)
Pour gérer le cas où on ne veut que la plus grande composante connexe.
Definition: algo.c:83
-
tree * tree2
deuxième arbre connecté
Definition: struct.h:79
-
void * list_get(list_t *it, int pos)
retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
Definition: array-list.c:46
-
int list_append(list_t *it, void *element_to_append)
Ajoute un élément à la fin de la liste.
Definition: array-list.c:27
-
void loadingBar(int current, int total, clock_t delta)
Une fonction permettant de visualiser l'avancement d'un processus.
Definition: display.c:178
-
structure informations importantes concernant un arbre
Definition: struct.h:18
-
size_t * create_size_t(size_t i)
Definition: array-list.c:92
-
short isInComponent
1 si le sommet est déjà dans la composante
Definition: struct.h:100
-
void addVertexes(short *composante, size_t size, size_t tree1, tree *forest, double distmax, list_t *currentcomposante)
Ajoute à currentcomposante le premier sommet non traité à distance<distmax de tree1 et itère sur ce s...
Definition: algo.c:103
-
#define INFINI
Definition: algo.c:9
-
structure représentant un sommet pour la fonction minimumSpanningTree
Definition: struct.h:98
- - - - diff --git a/docs/html/algo_8c.js b/docs/html/algo_8c.js deleted file mode 100644 index b32e060..0000000 --- a/docs/html/algo_8c.js +++ /dev/null @@ -1,10 +0,0 @@ -var algo_8c = -[ - [ "INFINI", "algo_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a", null ], - [ "addVertexes", "algo_8c.html#a0c4590f35ac72bce8e6e93c59b120e00", null ], - [ "copyComposant", "algo_8c.html#ad93045f895f3eff95932b687479497ee", null ], - [ "firstNotHandledVertex", "algo_8c.html#afda0b5b5cb8bd315ffe91b00cf20abdb", null ], - [ "getForestMaxComposante", "algo_8c.html#ab0c982f403cbd716f39ace419829a668", null ], - [ "minimumSpanningTree", "algo_8c.html#ae3566388dc2dbe7eb6197bbf6b7979e4", null ], - [ "vertexDistMin", "algo_8c.html#ac12979f67142d15820bc04e3965f6076", null ] -]; \ No newline at end of file diff --git a/docs/html/algo_8c__incl.dot b/docs/html/algo_8c__incl.dot deleted file mode 100644 index 0a2bc0d..0000000 --- a/docs/html/algo_8c__incl.dot +++ /dev/null @@ -1,34 +0,0 @@ -digraph "src/algo.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node6 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/algo_8h.html b/docs/html/algo_8h.html deleted file mode 100644 index bd1ab0c..0000000 --- a/docs/html/algo_8h.html +++ /dev/null @@ -1,323 +0,0 @@ - - - - - - - -Project 2022: include/algo.h File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
algo.h File Reference
-
-
-
#include "struct.h"
-#include <stdio.h>
-
-Include dependency graph for algo.h:
-
-
-
-
-This graph shows which files directly or indirectly include this file:
-
-
-
-
-

Go to the source code of this file.

- - - - - - - - -

-Functions

edgeminimumSpanningTree (tree *forest, size_t size)
 Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre. More...
 
treegetForestMaxComposante (tree *forest, size_t size, double distmax, size_t *newsize)
 Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande composante connexe, paramétrée par la distance distmax. More...
 
-

Function Documentation

- -

◆ getForestMaxComposante()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
tree* getForestMaxComposante (treeforest,
size_t size,
double distmax,
size_t * newsize 
)
-
- -

Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande composante connexe, paramétrée par la distance distmax.

-
Parameters
- - - - - -
forest
sizela taille de forest
distmax
newsizepointeur vers la nouvelle taille de la forêt
-
-
-
Returns
tree*
-
136  {
-
137  clock_t start = clock();
-
138  short composante[size]; //si l'arbre appartient déjà à une composante
-
139  size_t numberOfVertexHandled = 0;
-
140 
-
141  for (size_t i = 0; i<size; i++){
-
142  composante[i] = 0;
-
143  }
-
144 
-
145  list_t* composantemax = list_create();
-
146 
-
147 
-
148  while (numberOfVertexHandled < size){
-
149  list_t* currentcomposante = list_create();
-
150  list_append(currentcomposante, create_size_t(firstNotHandledVertex(composante, size)));
-
151  addVertexes(composante, size, *((size_t*)list_get(currentcomposante, 0)), forest, distmax, currentcomposante);
-
152 
-
153  numberOfVertexHandled+=list_size(currentcomposante);
-
154  loadingBar(numberOfVertexHandled, size, clock() - start);
-
155  if (list_size(currentcomposante) > list_size(composantemax)){;
-
156  copyComposant(composantemax, currentcomposante);
-
157  }
-
158  list_free(currentcomposante);
-
159  }
-
160 
-
161  tree* forest2 = malloc(sizeof(*forest2)*list_size(composantemax));
-
162 
-
163  for (size_t i = 0; i<list_size(composantemax); i++){
-
164  size_t tree = *((size_t*)list_get(composantemax, i));
-
165  forest2[i] = forest[tree];
-
166  }
-
167 
-
168  *newsize = list_size(composantemax);
-
169  list_free(composantemax);
-
170  return forest2;
-
171 }
-
-
-
- -

◆ minimumSpanningTree()

- -
-
- - - - - - - - - - - - - - - - - - -
edge* minimumSpanningTree (treeforest,
size_t size 
)
-
- -

Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre.

-
Parameters
- - - -
forestle graphe dont on calcule l'arbre
sizela taille du graphe
-
-
-
Returns
arete* : la liste des arètes constituant l'arbre recouvrant minimal
-
25  {
-
26  clock_t start = clock();
-
27  vertex tab[size];
-
28  size_t sizeOfComposante = 1;
-
29  double minimumDistance = INFINI;
-
30 
-
31  for (size_t i = 0; i<size; i++){
-
32  tab[i].distMin = minimumDistance;
-
33  tab[i].vertexMin = 0;
-
34  tab[i].isInComponent = 0;
-
35  }
-
36  tab[0].isInComponent = 1;
-
37 
-
38  edge* listeOfAretes = malloc((size - 1)*sizeof(edge));
-
39  if (listeOfAretes== NULL){
-
40  fprintf(stderr, "Allocation error in function arbreRecouvrantMinimal");
-
41  exit(1);
-
42  }
-
43 
-
44  size_t minimumVertex;
-
45  size_t lastHandledVertex = 0;
-
46  double currentDist;
-
47 
-
48  while(sizeOfComposante <= size - 1){ //nb aretes <= nsommets - 1
-
49  for (size_t i = 0; i<size; i++){ //sur tous les arbres de la structure sauf le premier
-
50  if ( !tab[i].isInComponent){ //sommet pas dans la composante connexe
-
51  if ( (currentDist = distanceTrees(&forest[i], &forest[lastHandledVertex])) < tab[i].distMin){
-
52  tab[i].distMin = currentDist;
-
53  tab[i].vertexMin = lastHandledVertex;
-
54  }
-
55  }
-
56  }
-
57 
-
58  minimumVertex = vertexDistMin(tab, size);
-
59 
-
60  listeOfAretes[sizeOfComposante-1].tree1 = &forest[minimumVertex];
-
61  listeOfAretes[sizeOfComposante-1].tree2 = &forest[tab[minimumVertex].vertexMin];
-
62  sizeOfComposante++;
-
63  lastHandledVertex = minimumVertex;
-
64  tab[minimumVertex].isInComponent= 1;
-
65  loadingBar(sizeOfComposante - 1, size - 1, clock() - start);
-
66  }
-
67 
-
68  printf("\nCalcul de l'arbre recouvrant minimal terminé \n");
-
69  return listeOfAretes;
-
70 }
-
-
-
-
-
-
size_t list_size(list_t *it)
revoie la taille de la liste
Definition: array-list.c:54
-
struct tree tree
structure informations importantes concernant un arbre
-
size_t vertexDistMin(vertex *tab, size_t size)
Definition: algo.c:13
-
double distanceTrees(tree *tree1, tree *tree2)
Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude...
Definition: fonctions.c:50
-
void list_free(list_t *it)
libère la liste et tous ses éléments
Definition: array-list.c:84
-
size_t vertexMin
le sommet réalisant cette distance
Definition: struct.h:104
-
list_t * list_create(void)
Crée une liste vide.
Definition: array-list.c:11
-
double distMin
la distance minimale aux autres sommets enregistrée
Definition: struct.h:102
-
structure définissant une arête
Definition: struct.h:75
-
tree * tree1
premier arbre connecté
Definition: struct.h:77
-
Definition: array-list.c:5
-
void copyComposant(list_t *composante1, list_t *composante2)
Copie le contenu de composante2 dans composante1 en supposant que size(composante2) > size(composante...
Definition: algo.c:123
-
size_t firstNotHandledVertex(short *composante, size_t size)
Pour gérer le cas où on ne veut que la plus grande composante connexe.
Definition: algo.c:83
-
tree * tree2
deuxième arbre connecté
Definition: struct.h:79
-
void * list_get(list_t *it, int pos)
retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
Definition: array-list.c:46
-
int list_append(list_t *it, void *element_to_append)
Ajoute un élément à la fin de la liste.
Definition: array-list.c:27
-
void loadingBar(int current, int total, clock_t delta)
Une fonction permettant de visualiser l'avancement d'un processus.
Definition: display.c:178
-
structure informations importantes concernant un arbre
Definition: struct.h:18
-
size_t * create_size_t(size_t i)
Definition: array-list.c:92
-
short isInComponent
1 si le sommet est déjà dans la composante
Definition: struct.h:100
-
void addVertexes(short *composante, size_t size, size_t tree1, tree *forest, double distmax, list_t *currentcomposante)
Ajoute à currentcomposante le premier sommet non traité à distance<distmax de tree1 et itère sur ce s...
Definition: algo.c:103
-
#define INFINI
Definition: algo.c:9
-
structure représentant un sommet pour la fonction minimumSpanningTree
Definition: struct.h:98
- - - - diff --git a/docs/html/algo_8h.js b/docs/html/algo_8h.js deleted file mode 100644 index 2f85677..0000000 --- a/docs/html/algo_8h.js +++ /dev/null @@ -1,5 +0,0 @@ -var algo_8h = -[ - [ "getForestMaxComposante", "algo_8h.html#ab0c982f403cbd716f39ace419829a668", null ], - [ "minimumSpanningTree", "algo_8h.html#ae3566388dc2dbe7eb6197bbf6b7979e4", null ] -]; \ No newline at end of file diff --git a/docs/html/algo_8h__dep__incl.dot b/docs/html/algo_8h__dep__incl.dot deleted file mode 100644 index 0edd906..0000000 --- a/docs/html/algo_8h__dep__incl.dot +++ /dev/null @@ -1,13 +0,0 @@ -digraph "include/algo.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/html/algo_8h__incl.dot b/docs/html/algo_8h__incl.dot deleted file mode 100644 index 28696c2..0000000 --- a/docs/html/algo_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/algo.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/algo_8h_source.html b/docs/html/algo_8h_source.html deleted file mode 100644 index 2e52118..0000000 --- a/docs/html/algo_8h_source.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - -Project 2022: include/algo.h Source File - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
algo.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "struct.h"
-
3 #include <stdio.h>
-
4 
-
5 
-
6 
-
16 edge* minimumSpanningTree(tree* forest, size_t size);
-
17 
-
18 
-
29 tree* getForestMaxComposante(tree* forest, size_t size, double distmax, size_t* newsize);
-
-
-
edge * minimumSpanningTree(tree *forest, size_t size)
Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre.
Definition: algo.c:25
-
structure définissant une arête
Definition: struct.h:75
-
tree * getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize)
Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande com...
Definition: algo.c:136
-
-
structure informations importantes concernant un arbre
Definition: struct.h:18
- - - - diff --git a/docs/html/annotated.html b/docs/html/annotated.html deleted file mode 100644 index 11340de..0000000 --- a/docs/html/annotated.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - -Project 2022: Data Structures - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
Data Structures
-
-
-
Here are the data structures with brief descriptions:
- - - - - - - - - - - -
 Ccorres_genusStructure associant une genre à une identifiant
 CedgeStructure définissant une arête
 Cedge22ième structure définissant une arête (pour options)
 Clist_t
 CnodeStructure définissant un noeud
 CoptGestion des options en argument
 CpositionStructure donnant la localisation d'un arbre
 Ctab_genusStructure de tableau et taille associée
 CtreeStructure informations importantes concernant un arbre
 CvertexStructure représentant un sommet pour la fonction minimumSpanningTree
-
-
-
- - - - diff --git a/docs/html/annotated_dup.js b/docs/html/annotated_dup.js deleted file mode 100644 index 0cd017b..0000000 --- a/docs/html/annotated_dup.js +++ /dev/null @@ -1,13 +0,0 @@ -var annotated_dup = -[ - [ "corres_genus", "structcorres__genus.html", "structcorres__genus" ], - [ "edge", "structedge.html", "structedge" ], - [ "edge2", "structedge2.html", "structedge2" ], - [ "list_t", "structlist__t.html", "structlist__t" ], - [ "node", "structnode.html", "structnode" ], - [ "opt", "structopt.html", "structopt" ], - [ "position", "structposition.html", "structposition" ], - [ "tab_genus", "structtab__genus.html", "structtab__genus" ], - [ "tree", "structtree.html", "structtree" ], - [ "vertex", "structvertex.html", "structvertex" ] -]; \ No newline at end of file diff --git a/docs/html/arbres_8c.html b/docs/html/arbres_8c.html deleted file mode 100644 index e3d29d3..0000000 --- a/docs/html/arbres_8c.html +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - -Project 2022: src/arbres.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
arbres.c File Reference
-
-
-
#include <stdio.h>
-#include "../include/struct.h"
-#include "../include/fonctions.h"
-#include "../include/options.h"
-#include "../include/parse.h"
-#include "../include/algo.h"
-#include "../include/display.h"
-#include "../include/stat.h"
-#include "../include/restrictiveOptions.h"
-
-Include dependency graph for arbres.c:
-
-
- -
-
- - - -

-Functions

int main (int argc, char **argv)
 
-

Function Documentation

- -

◆ main()

- -
-
- - - - - - - - - - - - - - - - - - -
int main (int argc,
char ** argv 
)
-
-
56  {
-
57  (void)argc;
-
58 
-
59  opt handlingOptions;
-
60  options(argc,argv,&handlingOptions);
-
61 
-
62  int size;
-
63  tree * trees=malloc(300000*sizeof(tree));
-
64  if(trees == NULL) { exit(15); }
-
65  memset(trees,0,sizeof(*trees)*300000);
-
66  handlingFile(handlingOptions,trees,&size);
-
67 
-
68  int sizeSelection;
-
69  tree * treesSelection=malloc(300000*sizeof(tree));
-
70  if(treesSelection == NULL){ exit(15); }
-
71  edge * MST;
-
72  size_t newsize;
-
73  char * endPointer;
-
74 
-
75 
-
76  projectionTrees(trees, size);
-
77 
-
78  //printf("%ld",strtod(handlingOptions.location,&endPointer));
-
79 
-
80  if(handlingOptions.height == NULL && handlingOptions.genus == NULL && handlingOptions.limit_value == NULL){
-
81 
-
82  if(handlingOptions.location != NULL) {
-
83  tree* treesSelection2 = getForestMaxComposante(trees, size, pow(strtod(handlingOptions.location,&endPointer)/RAYON, 2), &newsize);
-
84  MST = minimumSpanningTree(treesSelection2, newsize);
-
85  stat(handlingOptions,MST,newsize, treesSelection2);
-
86  displayTrees(MST, newsize, treesSelection2);
-
87  writeEdges(MST,newsize-1,handlingOptions);
-
88 
-
89  }else{
-
90  MST = minimumSpanningTree(trees, size);
-
91  stat(handlingOptions,MST,size, trees);
-
92  displayTrees(MST, size, trees);
-
93  writeEdges(MST,size-1,handlingOptions);
-
94 
-
95  }
-
96 
-
97  }else{
-
98 
-
99  handlingRestrictingOptions(handlingOptions,trees,treesSelection,size,&sizeSelection);
-
100  if(handlingOptions.location != NULL) {
-
101  tree* treesSelection2 = getForestMaxComposante(treesSelection, sizeSelection, pow(strtod(handlingOptions.location,&endPointer)/RAYON, 2), &newsize);
-
102  MST = minimumSpanningTree(treesSelection2, newsize);
-
103  stat(handlingOptions,MST,newsize, treesSelection2);
-
104  displayTrees(MST, newsize, treesSelection2);
-
105  writeEdges(MST,newsize-1,handlingOptions);
-
106 
-
107  }else{
-
108 
-
109  MST = minimumSpanningTree(treesSelection, sizeSelection);
-
110  stat(handlingOptions,MST,size, treesSelection);
-
111  displayTrees(MST, sizeSelection, treesSelection);
-
112  writeEdges(MST,sizeSelection-1,handlingOptions);
-
113 
-
114  }
-
115 
-
116  }
-
117 
-
118 
-
119  free(MST);
-
120  free(trees);
-
121  free(treesSelection);
-
122  return 0;
-
123 
-
124 }
-
-
-
-
-
-
void options(int argc, char **argv, opt *options)
Cette fonction gère les options mises en argument.
Definition: options.c:37
-
structure définissant une arête
Definition: struct.h:75
-
void handlingFile(opt handlingOptions, tree *tree, int *nbTrees)
Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc.
Definition: parse.c:294
-
char * limit_value
Definition: struct.h:39
-
char * location
Definition: struct.h:38
-
void projectionTrees(tree *forest, size_t size)
Fais la projection équirectangulaire des arbres de la liste forest de taille size.
Definition: fonctions.c:38
-
gestion des options en argument
Definition: struct.h:31
-
#define RAYON
Definition: fonctions.h:7
-
void writeEdges(edge *MST, size_t size, opt handlingOptions)
Cette fonction écrit dans un fichier l'arbre recouvrant minimal.
Definition: parse.c:271
-
void handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection)
Cette fonction met les arbres concernés par les options dans treesSelection.
Definition: restrictiveOptions.c:112
-
edge * minimumSpanningTree(tree *forest, size_t size)
Une fonction qui calcule l'arbre recouvrant minimal du graphe structure passé en paramètre.
Definition: algo.c:25
-
char * genus
Definition: struct.h:40
-
char * height
Definition: struct.h:41
-
tree * getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize)
Get the Forest Max Composante object Renvoie la liste d'arbres "forêt" composée de la plus grande com...
Definition: algo.c:136
-
structure informations importantes concernant un arbre
Definition: struct.h:18
-
void stat(opt handlingOptions, edge *MST, size_t size, tree *forest)
Definition: stat.c:27
-
void displayTrees(edge *edgeList, size_t size, tree *forest)
Une fonction qui permet d'afficher l'arbre recouvrant minimal.
Definition: display.c:45
- - - - diff --git a/docs/html/arbres_8c.js b/docs/html/arbres_8c.js deleted file mode 100644 index c81c99e..0000000 --- a/docs/html/arbres_8c.js +++ /dev/null @@ -1,4 +0,0 @@ -var arbres_8c = -[ - [ "main", "arbres_8c.html#a3c04138a5bfe5d72780bb7e82a18e627", null ] -]; \ No newline at end of file diff --git a/docs/html/arbres_8c__incl.dot b/docs/html/arbres_8c__incl.dot deleted file mode 100644 index da0af8c..0000000 --- a/docs/html/arbres_8c__incl.dot +++ /dev/null @@ -1,48 +0,0 @@ -digraph "src/arbres.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="../include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node5 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node5 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="../include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node10 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node11 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 -> Node12 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node13 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 [label="../include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node13 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node14 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 [label="../include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node14 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/array-list_8c.html b/docs/html/array-list_8c.html deleted file mode 100644 index e3fd810..0000000 --- a/docs/html/array-list_8c.html +++ /dev/null @@ -1,537 +0,0 @@ - - - - - - - -Project 2022: src/array-list.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
array-list.c File Reference
-
-
-
#include "../include/array-list.h"
-#include <stdio.h>
-#include <stdlib.h>
-
-Include dependency graph for array-list.c:
-
-
- -
-
- - - -

-Data Structures

struct  list_t
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Functions

list_tlist_create (void)
 Crée une liste vide. More...
 
int list_append (list_t *it, void *element_to_append)
 Ajoute un élément à la fin de la liste. More...
 
void * list_get (list_t *it, int pos)
 retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt More...
 
void list_set (list_t *it, int pos, void *element)
 remplace l'élément à la position donnée par l'élément donné More...
 
size_t list_size (list_t *it)
 revoie la taille de la liste More...
 
int list_insert (list_t *it, size_t pos, void *elmt)
 insère un élément à la position idx More...
 
int list_prepend (list_t *it, void *elmt)
 Ajoute un élément en début de liste. More...
 
void * list_take (list_t *it, int pos)
 retourne l'élément à la position idc, puis enlève cet élément de la liste More...
 
void list_free (list_t *it)
 libère la liste et tous ses éléments More...
 
size_t * create_size_t (size_t i)
 
void list_free2 (list_t *it)
 
-

Function Documentation

- -

◆ create_size_t()

- -
-
- - - - - - - - -
size_t* create_size_t (size_t i)
-
-
92  {
-
93  size_t* p = malloc(sizeof(size_t));
-
94  *p = i;
-
95  return p;
-
96 }
-
-
-
- -

◆ list_append()

- -
-
- - - - - - - - - - - - - - - - - - -
int list_append (list_t,
void *  
)
-
- -

Ajoute un élément à la fin de la liste.

-
Returns
0 en cas de problème, 1 sinon
-
27  {
-
28  if( it->size < it->allocated){
-
29  it->element[it->size] = element_to_append;
-
30  it->size ++;
-
31  return 1;
-
32  }
-
33 
-
34  void** tmp = realloc(it->element,(it->allocated+15)*sizeof(it->element[0]));
-
35  if (tmp == NULL){
-
36  return 0;
-
37  }
-
38 
-
39  it->element = tmp;
-
40  it->allocated += 15;
-
41  it->element[it->size] = element_to_append;
-
42  it->size ++;
-
43  return 1;
-
44 }
-
-
-
- -

◆ list_create()

- -
-
- - - - - - - - -
list_t* list_create (void )
-
- -

Crée une liste vide.

-
Returns
list_t* ou NULL en cas de problème
-
11  {
-
12  list_t* it = malloc(sizeof(*it));
-
13  if (it == NULL) return NULL;
-
14 
-
15  it->element = malloc(10*sizeof(it->element[0]));
-
16  if (it->element == NULL){
-
17  free(it);
-
18  return NULL;
-
19  }
-
20 
-
21  it->allocated = 10;
-
22  it->size = 0;
-
23  return it;
-
24 }
-
-
-
- -

◆ list_free()

- -
-
- - - - - - - - -
void list_free (list_t)
-
- -

libère la liste et tous ses éléments

-
84  {
-
85  for(size_t i = 0; i < list_size(it); i++)
-
86  free(list_get(it, i));
-
87 
-
88  free(it->element);
-
89  free(it); //modif concernant le projet programmation
-
90 }
-
-
-
- -

◆ list_free2()

- -
-
- - - - - - - - -
void list_free2 (list_tit)
-
-
98  {
-
99  free(it->element);
-
100  free(it);
-
101 }
-
-
-
- -

◆ list_get()

- -
-
- - - - - - - - - - - - - - - - - - -
void* list_get (list_t,
int  
)
-
- -

retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt

-
Returns
void*
-
46  {
-
47  return it->element[pos];
-
48 }
-
-
-
- -

◆ list_insert()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
int list_insert (list_t,
size_t ,
void *  
)
-
- -

insère un élément à la position idx

-
Returns
0 en cas de problème, 1 sinon
-
58  {
-
59 
-
60  if (list_append(it, elmt) == 0) return 0;
-
61 
-
62  for (size_t i = it->size - 1; i>pos; i--){
-
63  list_set(it, i, list_get(it, i-1));
-
64  }
-
65  list_set(it, pos, elmt);
-
66  return 1;
-
67 }
-
-
-
- -

◆ list_prepend()

- -
-
- - - - - - - - - - - - - - - - - - -
int list_prepend (list_t,
void *  
)
-
- -

Ajoute un élément en début de liste.

-
Returns
0 en cas de problème, 1 sinon
-
69  {
-
70  return list_insert(it, 0, elmt);
-
71 }
-
-
-
- -

◆ list_set()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void list_set (list_t,
int ,
void *  
)
-
- -

remplace l'élément à la position donnée par l'élément donné

-
50  {
-
51  it->element[pos] = element;
-
52 }
-
-
-
- -

◆ list_size()

- -
-
- - - - - - - - -
size_t list_size (list_t)
-
- -

revoie la taille de la liste

-
Returns
size_t
-
54  {
-
55  return it->size;
-
56 }
-
-
-
- -

◆ list_take()

- -
-
- - - - - - - - - - - - - - - - - - -
void* list_take (list_t,
int  
)
-
- -

retourne l'élément à la position idc, puis enlève cet élément de la liste

-
Returns
void*
-
73  {
-
74  void* elmt = list_get(it, pos);
-
75 
-
76  for (size_t i = pos; i < it->size-1; i++){
-
77  it->element[i] = it->element[i+1];
-
78  }
-
79  it->size--;
-
80  return elmt;
-
81 }
-
-
-
-
-
-
void ** element
Definition: array-list.c:6
-
size_t list_size(list_t *it)
revoie la taille de la liste
Definition: array-list.c:54
-
void list_set(list_t *it, int pos, void *element)
remplace l'élément à la position donnée par l'élément donné
Definition: array-list.c:50
-
Definition: array-list.c:5
-
void * list_get(list_t *it, int pos)
retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
Definition: array-list.c:46
-
int list_append(list_t *it, void *element_to_append)
Ajoute un élément à la fin de la liste.
Definition: array-list.c:27
-
size_t size
Definition: array-list.c:8
-
int list_insert(list_t *it, size_t pos, void *elmt)
insère un élément à la position idx
Definition: array-list.c:58
-
size_t allocated
Definition: array-list.c:7
- - - - diff --git a/docs/html/array-list_8c.js b/docs/html/array-list_8c.js deleted file mode 100644 index b705c21..0000000 --- a/docs/html/array-list_8c.js +++ /dev/null @@ -1,15 +0,0 @@ -var array_list_8c = -[ - [ "list_t", "structlist__t.html", "structlist__t" ], - [ "create_size_t", "array-list_8c.html#a7b8af2083784734274bbee9e5c67d34b", null ], - [ "list_append", "array-list_8c.html#abd5d607adddcc300a324588f12b00ed8", null ], - [ "list_create", "array-list_8c.html#a29f30488e60e8e4222c5118d754f0dbb", null ], - [ "list_free", "array-list_8c.html#adb3fd6e587db7dbce8703815a8200441", null ], - [ "list_free2", "array-list_8c.html#a09e105a966c9826976187aa227f67194", null ], - [ "list_get", "array-list_8c.html#a8da0eb9133b9b1821cfa6811d88f4259", null ], - [ "list_insert", "array-list_8c.html#ab3e47ea7db86a9f33d93fca5a25b87cc", null ], - [ "list_prepend", "array-list_8c.html#a5eb5f590f52fa4763c75eabcda9abe36", null ], - [ "list_set", "array-list_8c.html#a1ec39ae5962d70f4484c0b656956fbb5", null ], - [ "list_size", "array-list_8c.html#adcfa11f7eafb9f7562fba20f0d7f4e2a", null ], - [ "list_take", "array-list_8c.html#a086e3f7f2956e50db180c011845cb776", null ] -]; \ No newline at end of file diff --git a/docs/html/array-list_8c__incl.dot b/docs/html/array-list_8c__incl.dot deleted file mode 100644 index 589e0e6..0000000 --- a/docs/html/array-list_8c__incl.dot +++ /dev/null @@ -1,14 +0,0 @@ -digraph "src/array-list.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/array-list.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/array-list_8h.html b/docs/html/array-list_8h.html deleted file mode 100644 index 60e303f..0000000 --- a/docs/html/array-list_8h.html +++ /dev/null @@ -1,558 +0,0 @@ - - - - - - - -Project 2022: include/array-list.h File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
array-list.h File Reference
-
-
-
#include <stdio.h>
-
-Include dependency graph for array-list.h:
-
-
- -
-
-This graph shows which files directly or indirectly include this file:
-
-
- -
-
-

Go to the source code of this file.

- - - - -

-Typedefs

typedef struct list_t list_t
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Functions

list_tlist_create (void)
 Crée une liste vide. More...
 
int list_append (list_t *, void *)
 Ajoute un élément à la fin de la liste. More...
 
int list_prepend (list_t *, void *)
 Ajoute un élément en début de liste. More...
 
void * list_get (list_t *, int)
 retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt More...
 
void list_set (list_t *, int, void *)
 remplace l'élément à la position donnée par l'élément donné More...
 
size_t list_size (list_t *)
 revoie la taille de la liste More...
 
int list_insert (list_t *, size_t, void *)
 insère un élément à la position idx More...
 
void * list_take (list_t *, int)
 retourne l'élément à la position idc, puis enlève cet élément de la liste More...
 
void list_free (list_t *)
 libère la liste et tous ses éléments More...
 
size_t * create_size_t (size_t i)
 
void list_free2 (list_t *it)
 
-

Typedef Documentation

- -

◆ list_t

- -
-
- - - - -
typedef struct list_t list_t
-
- -
-
-

Function Documentation

- -

◆ create_size_t()

- -
-
- - - - - - - - -
size_t* create_size_t (size_t i)
-
-
92  {
-
93  size_t* p = malloc(sizeof(size_t));
-
94  *p = i;
-
95  return p;
-
96 }
-
-
-
- -

◆ list_append()

- -
-
- - - - - - - - - - - - - - - - - - -
int list_append (list_t,
void *  
)
-
- -

Ajoute un élément à la fin de la liste.

-
Returns
0 en cas de problème, 1 sinon
-
27  {
-
28  if( it->size < it->allocated){
-
29  it->element[it->size] = element_to_append;
-
30  it->size ++;
-
31  return 1;
-
32  }
-
33 
-
34  void** tmp = realloc(it->element,(it->allocated+15)*sizeof(it->element[0]));
-
35  if (tmp == NULL){
-
36  return 0;
-
37  }
-
38 
-
39  it->element = tmp;
-
40  it->allocated += 15;
-
41  it->element[it->size] = element_to_append;
-
42  it->size ++;
-
43  return 1;
-
44 }
-
-
-
- -

◆ list_create()

- -
-
- - - - - - - - -
list_t* list_create (void )
-
- -

Crée une liste vide.

-
Returns
list_t* ou NULL en cas de problème
-
11  {
-
12  list_t* it = malloc(sizeof(*it));
-
13  if (it == NULL) return NULL;
-
14 
-
15  it->element = malloc(10*sizeof(it->element[0]));
-
16  if (it->element == NULL){
-
17  free(it);
-
18  return NULL;
-
19  }
-
20 
-
21  it->allocated = 10;
-
22  it->size = 0;
-
23  return it;
-
24 }
-
-
-
- -

◆ list_free()

- -
-
- - - - - - - - -
void list_free (list_t)
-
- -

libère la liste et tous ses éléments

-
84  {
-
85  for(size_t i = 0; i < list_size(it); i++)
-
86  free(list_get(it, i));
-
87 
-
88  free(it->element);
-
89  free(it); //modif concernant le projet programmation
-
90 }
-
-
-
- -

◆ list_free2()

- -
-
- - - - - - - - -
void list_free2 (list_tit)
-
-
98  {
-
99  free(it->element);
-
100  free(it);
-
101 }
-
-
-
- -

◆ list_get()

- -
-
- - - - - - - - - - - - - - - - - - -
void* list_get (list_t,
int  
)
-
- -

retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt

-
Returns
void*
-
46  {
-
47  return it->element[pos];
-
48 }
-
-
-
- -

◆ list_insert()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
int list_insert (list_t,
size_t ,
void *  
)
-
- -

insère un élément à la position idx

-
Returns
0 en cas de problème, 1 sinon
-
58  {
-
59 
-
60  if (list_append(it, elmt) == 0) return 0;
-
61 
-
62  for (size_t i = it->size - 1; i>pos; i--){
-
63  list_set(it, i, list_get(it, i-1));
-
64  }
-
65  list_set(it, pos, elmt);
-
66  return 1;
-
67 }
-
-
-
- -

◆ list_prepend()

- -
-
- - - - - - - - - - - - - - - - - - -
int list_prepend (list_t,
void *  
)
-
- -

Ajoute un élément en début de liste.

-
Returns
0 en cas de problème, 1 sinon
-
69  {
-
70  return list_insert(it, 0, elmt);
-
71 }
-
-
-
- -

◆ list_set()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void list_set (list_t,
int ,
void *  
)
-
- -

remplace l'élément à la position donnée par l'élément donné

-
50  {
-
51  it->element[pos] = element;
-
52 }
-
-
-
- -

◆ list_size()

- -
-
- - - - - - - - -
size_t list_size (list_t)
-
- -

revoie la taille de la liste

-
Returns
size_t
-
54  {
-
55  return it->size;
-
56 }
-
-
-
- -

◆ list_take()

- -
-
- - - - - - - - - - - - - - - - - - -
void* list_take (list_t,
int  
)
-
- -

retourne l'élément à la position idc, puis enlève cet élément de la liste

-
Returns
void*
-
73  {
-
74  void* elmt = list_get(it, pos);
-
75 
-
76  for (size_t i = pos; i < it->size-1; i++){
-
77  it->element[i] = it->element[i+1];
-
78  }
-
79  it->size--;
-
80  return elmt;
-
81 }
-
-
-
-
-
-
void ** element
Definition: array-list.c:6
-
size_t list_size(list_t *it)
revoie la taille de la liste
Definition: array-list.c:54
-
void list_set(list_t *it, int pos, void *element)
remplace l'élément à la position donnée par l'élément donné
Definition: array-list.c:50
-
Definition: array-list.c:5
-
void * list_get(list_t *it, int pos)
retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
Definition: array-list.c:46
-
int list_append(list_t *it, void *element_to_append)
Ajoute un élément à la fin de la liste.
Definition: array-list.c:27
-
size_t size
Definition: array-list.c:8
-
int list_insert(list_t *it, size_t pos, void *elmt)
insère un élément à la position idx
Definition: array-list.c:58
-
size_t allocated
Definition: array-list.c:7
- - - - diff --git a/docs/html/array-list_8h.js b/docs/html/array-list_8h.js deleted file mode 100644 index 29859c7..0000000 --- a/docs/html/array-list_8h.js +++ /dev/null @@ -1,15 +0,0 @@ -var array_list_8h = -[ - [ "list_t", "array-list_8h.html#a2400033025820f5e82c0e72c47386627", null ], - [ "create_size_t", "array-list_8h.html#a7b8af2083784734274bbee9e5c67d34b", null ], - [ "list_append", "array-list_8h.html#a8841ba80500e11a4380929d3c3597de9", null ], - [ "list_create", "array-list_8h.html#a29f30488e60e8e4222c5118d754f0dbb", null ], - [ "list_free", "array-list_8h.html#a74dde820738687bc183a09495909e64c", null ], - [ "list_free2", "array-list_8h.html#a09e105a966c9826976187aa227f67194", null ], - [ "list_get", "array-list_8h.html#af058305b3e75702ca11274d23f820515", null ], - [ "list_insert", "array-list_8h.html#ab1c2550e5093d373e875893339936fad", null ], - [ "list_prepend", "array-list_8h.html#ad59e715707419ee7577c66d23c9573a2", null ], - [ "list_set", "array-list_8h.html#a7e05e7fb0fca583ed13ee9dc29450a08", null ], - [ "list_size", "array-list_8h.html#a6555dbaf1bf1ecafac79e7dcfafa05d9", null ], - [ "list_take", "array-list_8h.html#ad8ea0715edb588b046fbe943a9c6577b", null ] -]; \ No newline at end of file diff --git a/docs/html/array-list_8h__dep__incl.dot b/docs/html/array-list_8h__dep__incl.dot deleted file mode 100644 index bf28a2b..0000000 --- a/docs/html/array-list_8h__dep__incl.dot +++ /dev/null @@ -1,63 +0,0 @@ -digraph "include/array-list.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node3 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node3 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node3 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; - Node2 -> Node7 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node7 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 -> Node8 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node7 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node9 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node9 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node2 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node12 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node12 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node13 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; - Node2 -> Node15 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node15 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node15 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node15 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node16 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node16 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node16 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node16 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node17 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node17 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8c.html",tooltip=" "]; - Node2 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node18 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node18 [label="src/array-list.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8c.html",tooltip=" "]; - Node1 -> Node19 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node19 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8c.html",tooltip=" "]; - Node1 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/array-list_8h__incl.dot b/docs/html/array-list_8h__incl.dot deleted file mode 100644 index 307e982..0000000 --- a/docs/html/array-list_8h__incl.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "include/array-list.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/array-list_8h_source.html b/docs/html/array-list_8h_source.html deleted file mode 100644 index f3ea5d4..0000000 --- a/docs/html/array-list_8h_source.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - -Project 2022: include/array-list.h Source File - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
array-list.h
-
-
-Go to the documentation of this file.
1 #include <stdio.h>
-
2 
-
3 typedef struct list_t list_t ;
-
4 
-
5 
-
6 
-
12 list_t* list_create(void);
-
13 
-
14 
-
20 int list_append(list_t*, void*);
-
21 
-
27 int list_prepend(list_t*, void*);
-
28 
-
29 
-
36 void* list_get(list_t*, int);
-
37 
-
38 
-
43 void list_set(list_t*, int, void*);
-
44 
-
50 size_t list_size(list_t*);
-
51 
-
57 int list_insert(list_t*, size_t, void*);
-
58 
-
64 void* list_take(list_t*, int);
-
65 
-
70 void list_free(list_t*);
-
71 
-
72 
-
73 size_t* create_size_t(size_t i);
-
74 
-
75 void list_free2(list_t* it);
-
-
-
size_t * create_size_t(size_t i)
Definition: array-list.c:92
-
size_t list_size(list_t *)
revoie la taille de la liste
Definition: array-list.c:54
-
int list_append(list_t *, void *)
Ajoute un élément à la fin de la liste.
Definition: array-list.c:27
-
Definition: array-list.c:5
-
void * list_get(list_t *, int)
retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
Definition: array-list.c:46
-
void * list_take(list_t *, int)
retourne l'élément à la position idc, puis enlève cet élément de la liste
Definition: array-list.c:73
-
list_t * list_create(void)
Crée une liste vide.
Definition: array-list.c:11
-
int list_prepend(list_t *, void *)
Ajoute un élément en début de liste.
Definition: array-list.c:69
-
int list_insert(list_t *, size_t, void *)
insère un élément à la position idx
Definition: array-list.c:58
-
void list_set(list_t *, int, void *)
remplace l'élément à la position donnée par l'élément donné
Definition: array-list.c:50
-
void list_free(list_t *)
libère la liste et tous ses éléments
Definition: array-list.c:84
-
void list_free2(list_t *it)
Definition: array-list.c:98
- - - - diff --git a/docs/html/bc_s.png b/docs/html/bc_s.png deleted file mode 100644 index 224b29aa9847d5a4b3902efd602b7ddf7d33e6c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT diff --git a/docs/html/bdwn.png b/docs/html/bdwn.png deleted file mode 100644 index 940a0b950443a0bb1b216ac03c45b8a16c955452..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T - - - - - - -Project 2022: Data Structure Index - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
Data Structure Index
-
-
-
c | e | l | n | o | p | t | v
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
  c  
-
edge2   
  o  
-
  t  
-
  l  
-
corres_genus   opt   tab_genus   
  e  
-
list_t   
  p  
-
tree   
  n  
-
  v  
-
edge   position   
node   vertex   
-
c | e | l | n | o | p | t | v
-
-
- - - - diff --git a/docs/html/closed.png b/docs/html/closed.png deleted file mode 100644 index 98cc2c909da37a6df914fbf67780eebd99c597f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT diff --git a/docs/html/dir_000001_000000.html b/docs/html/dir_000001_000000.html deleted file mode 100644 index 93bbd8b..0000000 --- a/docs/html/dir_000001_000000.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - -Project 2022: src -> include Relation - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- - - - - - diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html deleted file mode 100644 index c02c35c..0000000 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - -Project 2022: src Directory Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
src Directory Reference
-
-
-
-Directory dependency graph for src:
-
-
src
- -
- - - - - - - - - - - - - - - - - - - - - - - - -

-Files

file  algo.c
 
file  arbres.c
 
file  array-list.c
 
file  display.c
 
file  fonctions.c
 
file  manageSIGINT.c
 
file  options.c
 
file  parse.c
 
file  pile.c
 
file  restrictiveOptions.c
 
file  stat.c
 
-
-
- - - - diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js deleted file mode 100644 index 8b7e642..0000000 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js +++ /dev/null @@ -1,14 +0,0 @@ -var dir_68267d1309a1af8e8297ef4c3efbcdba = -[ - [ "algo.c", "algo_8c.html", "algo_8c" ], - [ "arbres.c", "arbres_8c.html", "arbres_8c" ], - [ "array-list.c", "array-list_8c.html", "array-list_8c" ], - [ "display.c", "display_8c.html", "display_8c" ], - [ "fonctions.c", "fonctions_8c.html", "fonctions_8c" ], - [ "manageSIGINT.c", "manageSIGINT_8c.html", "manageSIGINT_8c" ], - [ "options.c", "options_8c.html", "options_8c" ], - [ "parse.c", "parse_8c.html", "parse_8c" ], - [ "pile.c", "pile_8c.html", "pile_8c" ], - [ "restrictiveOptions.c", "restrictiveOptions_8c.html", "restrictiveOptions_8c" ], - [ "stat.c", "stat_8c.html", "stat_8c" ] -]; \ No newline at end of file diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot deleted file mode 100644 index 6447659..0000000 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot +++ /dev/null @@ -1,8 +0,0 @@ -digraph "src" { - compound=true - node [ fontsize="10", fontname="Helvetica"]; - edge [ labelfontsize="10", labelfontname="Helvetica"]; - dir_68267d1309a1af8e8297ef4c3efbcdba [shape=box, label="src", style="filled", fillcolor="#eeeeff", pencolor="black", URL="dir_68267d1309a1af8e8297ef4c3efbcdba.html"]; - dir_d44c64559bbebec7f509842c48db8b23 [shape=box label="include" URL="dir_d44c64559bbebec7f509842c48db8b23.html"]; - dir_68267d1309a1af8e8297ef4c3efbcdba->dir_d44c64559bbebec7f509842c48db8b23 [headlabel="34", labeldistance=1.5 headhref="dir_000001_000000.html"]; -} diff --git a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html b/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html deleted file mode 100644 index 8eefb74..0000000 --- a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - -Project 2022: include Directory Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
include Directory Reference
-
-
- - - - - - - - - - - - - - - - - - - - - - - - -

-Files

file  algo.h [code]
 
file  array-list.h [code]
 
file  display.h [code]
 
file  fonctions.h [code]
 
file  manageSIGINT.h [code]
 
file  options.h [code]
 
file  parse.h [code]
 
file  pile.h [code]
 
file  restrictiveOptions.h [code]
 
file  stat.h [code]
 
file  struct.h [code]
 
-
-
- - - - diff --git a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.js b/docs/html/dir_d44c64559bbebec7f509842c48db8b23.js deleted file mode 100644 index 124167d..0000000 --- a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.js +++ /dev/null @@ -1,14 +0,0 @@ -var dir_d44c64559bbebec7f509842c48db8b23 = -[ - [ "algo.h", "algo_8h.html", "algo_8h" ], - [ "array-list.h", "array-list_8h.html", "array-list_8h" ], - [ "display.h", "display_8h.html", "display_8h" ], - [ "fonctions.h", "fonctions_8h.html", "fonctions_8h" ], - [ "manageSIGINT.h", "manageSIGINT_8h.html", "manageSIGINT_8h" ], - [ "options.h", "options_8h.html", "options_8h" ], - [ "parse.h", "parse_8h.html", "parse_8h" ], - [ "pile.h", "pile_8h.html", "pile_8h" ], - [ "restrictiveOptions.h", "restrictiveOptions_8h.html", "restrictiveOptions_8h" ], - [ "stat.h", "stat_8h.html", "stat_8h" ], - [ "struct.h", "struct_8h.html", "struct_8h" ] -]; \ No newline at end of file diff --git a/docs/html/display_8c.html b/docs/html/display_8c.html deleted file mode 100644 index 6c31194..0000000 --- a/docs/html/display_8c.html +++ /dev/null @@ -1,707 +0,0 @@ - - - - - - - -Project 2022: src/display.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
display.c File Reference
-
-
-
#include "../include/display.h"
-#include "../include/struct.h"
-#include <tps.h>
-
-Include dependency graph for display.c:
-
-
- -
-
- - - - - -

-Macros

#define HEIGHT   800
 
#define WIDTH   800
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Functions

void infoDisplay (void)
 
void scaleTree (tree *forest, size_t size, int zoom, int left, int up)
 Effectue une transformation affine des coordonnées des arbres de la liste forest de taille size, de manière à recadrer les arbres dans la fenêtre de taille WIDTH*HEIGHT, et à prendre compte du zoom et du déplacement avec les flèches. More...
 
void displayTrees (edge *edgeList, size_t size, tree *forest)
 Une fonction qui permet d'afficher l'arbre recouvrant minimal. More...
 
double minX (tree *forest, size_t size)
 Renvoie le champ geoloc.x minimum de la liste forest de taille size. More...
 
double minY (tree *forest, size_t size)
 Renvoie le champ geoloc.y minimum de la liste forest de taille size. More...
 
double maxX (tree *forest, size_t size)
 Renvoie le champ geoloc.x maximum de la liste forest de taille size. More...
 
double maxY (tree *forest, size_t size)
 Renvoie le champ geoloc.y maximum de la liste forest de taille size. More...
 
void getExtremum (tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY)
 Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des champs geoloc.x et geoloc.y de la forêt d'arbre forest de taille size. More...
 
void loadingBar (int current, int total, clock_t delta)
 Une fonction permettant de visualiser l'avancement d'un processus. More...
 
-

Macro Definition Documentation

- -

◆ HEIGHT

- -
-
- - - - -
#define HEIGHT   800
-
- -
-
- -

◆ WIDTH

- -
-
- - - - -
#define WIDTH   800
-
- -
-
-

Function Documentation

- -

◆ displayTrees()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void displayTrees (edgelisteAretes,
size_t size,
treestructure 
)
-
- -

Une fonction qui permet d'afficher l'arbre recouvrant minimal.

-
Parameters
- - - - -
listeAretesla liste des aretes de l'arbre
sizela taille du graphe (la structure)
structurela structure de l'arbre de taille size + 1
-
-
-
45  {
-
46  infoDisplay();
-
47 
-
48  size--;
-
49  double x1, x2, y1, y2;
-
50  tps_createWindow("Arbres de Paris", WIDTH, HEIGHT);
-
51  tps_background(255, 255, 255);
-
52  tps_setColor(0, 0, 0);
-
53  scaleTree(forest, size + 1,0,0,0);
-
54 
-
55  for (size_t i = 0; i<size; i++){
-
56  x1 = edgeList[i].tree1->geoloc.x;
-
57  y1 = edgeList[i].tree1->geoloc.y;
-
58  x2 = edgeList[i].tree2->geoloc.x;
-
59  y2 = edgeList[i].tree2->geoloc.y;
-
60  tps_drawLine(x1, y1, x2, y2);
-
61  }
-
62 
-
63  int zoom=0;
-
64  int left=0;
-
65  int up=0;
-
66  while(tps_isRunning()){
-
67 
-
68  if(tps_getKeyPressed() == SDLK_p ) {zoom++;}
-
69  if(tps_getKeyPressed() == SDLK_m ) {zoom--;}
-
70 
-
71  if(tps_getKeyPressed() == SDLK_LEFT ) {left++;}
-
72  if(tps_getKeyPressed() == SDLK_RIGHT ) {left--;}
-
73 
-
74  if(tps_getKeyPressed() == SDLK_UP ) {up++;}
-
75  if(tps_getKeyPressed() == SDLK_DOWN ) {up--;}
-
76 
-
77 
-
78  tps_background(255, 255, 255);
-
79  scaleTree(forest, size + 1,zoom,left,up);
-
80  for (size_t i = 0; i<size; i++){
-
81  x1 = edgeList[i].tree1->geoloc.x;
-
82  y1 = edgeList[i].tree1->geoloc.y;
-
83  x2 = edgeList[i].tree2->geoloc.x;
-
84  y2 = edgeList[i].tree2->geoloc.y;
-
85  tps_drawLine(x1, y1, x2, y2);
-
86  }
-
87 
-
88  tps_render();
-
89  }
-
90  tps_closeWindow();
-
91  return;
-
92 }
-
-
-
- -

◆ getExtremum()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void getExtremum (treeforest,
size_t size,
double * minimumX,
double * minimumY,
double * maximumX,
double * maximumY 
)
-
- -

Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des champs geoloc.x et geoloc.y de la forêt d'arbre forest de taille size.

-
Parameters
- - - - - - - -
forest
size
minimumX
minimumY
maximumX
maximumY
-
-
-
171  {
-
172  *minimumX = minX(forest, size);
-
173  *minimumY = minY(forest, size);
-
174  *maximumX = maxX(forest, size);
-
175  *maximumY = maxY(forest, size);
-
176 }
-
-
-
- -

◆ infoDisplay()

- -
-
- - - - - - - - -
void infoDisplay (void )
-
-
9  {
-
10  printf("**********************************************\n");
-
11  printf("Pour zoomer appuyer sur p.\n");
-
12  printf("Pour dézoomer appuyer sur m.\n");
-
13  printf("Pour se déplacer utiliser les flèches.\n");
-
14  printf("\n**********************************************\n");
-
15 }
-
-
-
- -

◆ loadingBar()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void loadingBar (int current,
int total,
clock_t delta 
)
-
- -

Une fonction permettant de visualiser l'avancement d'un processus.

-
Parameters
- - - - -
currentla quantité actuelle d'avancement du processus
totalla quantité totale de référencee
deltale nombre de millisecondes écoulées depuis le début du programme
-
-
-
178  {
-
179  static double previoustime = 0;
-
180  double newtime;
-
181  if (current != total && current%100 == 0){
-
182  printf("%d/%d -- ", current, total);
-
183  printf("Time since beginning : %fs -- ", ((double)delta)/CLOCKS_PER_SEC);
-
184  newtime = 0.5*previoustime + 0.5*(((double)(delta * ((float)total/(float)current)))/CLOCKS_PER_SEC);
-
185  printf("Time left estimated : %fs\r", newtime - ((double)delta)/CLOCKS_PER_SEC);
-
186  previoustime = newtime;
-
187  }
-
188 
-
189  else if(current == total){
-
190  printf("%d/%d -- ", current, total);
-
191  printf("Time since beginning : %fs -- ", ((double)delta)/CLOCKS_PER_SEC);
-
192  printf("Time left estimated : 0\n");
-
193  }
-
194 }
-
-
-
- -

◆ maxX()

- -
-
- - - - - - - - - - - - - - - - - - -
double maxX (treeforest,
size_t size 
)
-
- -

Renvoie le champ geoloc.x maximum de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
140  {
-
141  size_t i = 0;
-
142  double distMax = forest[i].geoloc.x;
-
143 
-
144  for (i = 1; i<size; i++){
-
145  if (forest[i].geoloc.x > distMax) distMax = forest[i].geoloc.x;
-
146  }
-
147 
-
148  return distMax;
-
149 }
-
-
-
- -

◆ maxY()

- -
-
- - - - - - - - - - - - - - - - - - -
double maxY (treeforest,
size_t size 
)
-
- -

Renvoie le champ geoloc.y maximum de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
158  {
-
159  size_t i = 0;
-
160  double distMax = forest[i].geoloc.y;
-
161 
-
162  for (i = 1; i<size; i++){
-
163  if (forest[i].geoloc.y > distMax) distMax = forest[i].geoloc.y;
-
164  }
-
165 
-
166  return distMax;
-
167 }
-
-
-
- -

◆ minX()

- -
-
- - - - - - - - - - - - - - - - - - -
double minX (treeforest,
size_t size 
)
-
- -

Renvoie le champ geoloc.x minimum de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
104  {
-
105  size_t i = 0;
-
106  double distMin = forest[i].geoloc.x;
-
107 
-
108  for (i = 1; i<size; i++){
-
109  if (forest[i].geoloc.x < distMin) distMin = forest[i].geoloc.x;
-
110  }
-
111 
-
112  return distMin;
-
113 }
-
-
-
- -

◆ minY()

- -
-
- - - - - - - - - - - - - - - - - - -
double minY (treeforest,
size_t size 
)
-
- -

Renvoie le champ geoloc.y minimum de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
122  {
-
123  size_t i = 0;
-
124  double distMin = forest[i].geoloc.y;
-
125 
-
126  for (i = 1; i<size; i++){
-
127  if (forest[i].geoloc.y < distMin) distMin = forest[i].geoloc.y;
-
128  }
-
129 
-
130  return distMin;
-
131 }
-
-
-
- -

◆ scaleTree()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void scaleTree (treeforest,
size_t size,
int zoom,
int left,
int up 
)
-
- -

Effectue une transformation affine des coordonnées des arbres de la liste forest de taille size, de manière à recadrer les arbres dans la fenêtre de taille WIDTH*HEIGHT, et à prendre compte du zoom et du déplacement avec les flèches.

-
Parameters
- - - - - - -
forest
size
zoom
left
up
-
-
-
30  {
-
31  double xmin, xmax, ymin, ymax;
-
32  getExtremum(forest, size, &xmin, &ymin, &xmax, &ymax);
-
33 
-
34 
-
35  double alpha = (WIDTH)/(xmax - xmin )*(1+ 0.02*zoom);
-
36  double beta = (HEIGHT)/(ymax - ymin )*(1+ 0.02*zoom);
-
37 
-
38  for (size_t i = 0; i<size; i++){
-
39  forest[i].geoloc.x = (forest[i].geoloc.x - xmin ) * alpha - 10*zoom + 5*left;
-
40  forest[i].geoloc.y = (forest[i].geoloc.y - ymin ) * beta - 10*zoom + 5*up;
-
41  }
-
42  return;
-
43 }
-
-
-
-
-
-
double maxY(tree *forest, size_t size)
Renvoie le champ geoloc.y maximum de la liste forest de taille size.
Definition: display.c:158
-
double y
longitude position arbre (en degré)
Definition: struct.h:12
-
position geoloc
struture correspondant à la position de l'arbre
Definition: struct.h:20
-
tree * tree1
premier arbre connecté
Definition: struct.h:77
-
tree * tree2
deuxième arbre connecté
Definition: struct.h:79
-
double x
latitude position arbre (en degré)
Definition: struct.h:10
-
void getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY)
Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des cha...
Definition: display.c:170
-
double maxX(tree *forest, size_t size)
Renvoie le champ geoloc.x maximum de la liste forest de taille size.
Definition: display.c:140
-
double minX(tree *forest, size_t size)
Renvoie le champ geoloc.x minimum de la liste forest de taille size.
Definition: display.c:104
-
double minY(tree *forest, size_t size)
Renvoie le champ geoloc.y minimum de la liste forest de taille size.
Definition: display.c:122
-
void scaleTree(tree *forest, size_t size, int zoom, int left, int up)
Effectue une transformation affine des coordonnées des arbres de la liste forest de taille size,...
Definition: display.c:30
-
#define HEIGHT
Definition: display.c:6
-
#define WIDTH
Definition: display.c:7
-
void infoDisplay(void)
Definition: display.c:9
- - - - diff --git a/docs/html/display_8c.js b/docs/html/display_8c.js deleted file mode 100644 index e05f627..0000000 --- a/docs/html/display_8c.js +++ /dev/null @@ -1,14 +0,0 @@ -var display_8c = -[ - [ "HEIGHT", "display_8c.html#aed89bd71aee8be823e8a20ec4e093c1e", null ], - [ "WIDTH", "display_8c.html#a241aeeb764887ae5e3de58b98f04b16d", null ], - [ "displayTrees", "display_8c.html#a6d1822b75d0e0ba6328174a5d84cb875", null ], - [ "getExtremum", "display_8c.html#ab7d67ad0a7206fc20171512033d3fb2e", null ], - [ "infoDisplay", "display_8c.html#aa8ca658ab31a0f8c373547a7bc611a87", null ], - [ "loadingBar", "display_8c.html#a550e90e7a5a56b5c11d17a005ac43dee", null ], - [ "maxX", "display_8c.html#ab52bd6692aaad6ea9b396de78236e850", null ], - [ "maxY", "display_8c.html#a040ffc050c09814a96186ba85cbc87d4", null ], - [ "minX", "display_8c.html#a4eea0232034a5a41300e04edcc853f96", null ], - [ "minY", "display_8c.html#ab65f047e1be48c7ae41438104c94cd08", null ], - [ "scaleTree", "display_8c.html#abd00a978a929f7fbddb92e23286273d3", null ] -]; \ No newline at end of file diff --git a/docs/html/display_8c__incl.dot b/docs/html/display_8c__incl.dot deleted file mode 100644 index 32a50aa..0000000 --- a/docs/html/display_8c__incl.dot +++ /dev/null @@ -1,22 +0,0 @@ -digraph "src/display.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/display_8h.html b/docs/html/display_8h.html deleted file mode 100644 index b7e59bf..0000000 --- a/docs/html/display_8h.html +++ /dev/null @@ -1,366 +0,0 @@ - - - - - - - -Project 2022: include/display.h File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
display.h File Reference
-
-
-
#include "struct.h"
-#include <stdio.h>
-#include <time.h>
-
-Include dependency graph for display.h:
-
-
- -
-
-This graph shows which files directly or indirectly include this file:
-
-
- -
-
-

Go to the source code of this file.

- - - - - - - - - - - -

-Functions

void displayTrees (edge *listeAretes, size_t size, tree *structure)
 Une fonction qui permet d'afficher l'arbre recouvrant minimal. More...
 
void loadingBar (int current, int total, clock_t delta)
 Une fonction permettant de visualiser l'avancement d'un processus. More...
 
void getExtremum (tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY)
 Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des champs geoloc.x et geoloc.y de la forêt d'arbre forest de taille size. More...
 
-

Function Documentation

- -

◆ displayTrees()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void displayTrees (edgelisteAretes,
size_t size,
treestructure 
)
-
- -

Une fonction qui permet d'afficher l'arbre recouvrant minimal.

-
Parameters
- - - - -
listeAretesla liste des aretes de l'arbre
sizela taille du graphe (la structure)
structurela structure de l'arbre de taille size + 1
-
-
-
45  {
-
46  infoDisplay();
-
47 
-
48  size--;
-
49  double x1, x2, y1, y2;
-
50  tps_createWindow("Arbres de Paris", WIDTH, HEIGHT);
-
51  tps_background(255, 255, 255);
-
52  tps_setColor(0, 0, 0);
-
53  scaleTree(forest, size + 1,0,0,0);
-
54 
-
55  for (size_t i = 0; i<size; i++){
-
56  x1 = edgeList[i].tree1->geoloc.x;
-
57  y1 = edgeList[i].tree1->geoloc.y;
-
58  x2 = edgeList[i].tree2->geoloc.x;
-
59  y2 = edgeList[i].tree2->geoloc.y;
-
60  tps_drawLine(x1, y1, x2, y2);
-
61  }
-
62 
-
63  int zoom=0;
-
64  int left=0;
-
65  int up=0;
-
66  while(tps_isRunning()){
-
67 
-
68  if(tps_getKeyPressed() == SDLK_p ) {zoom++;}
-
69  if(tps_getKeyPressed() == SDLK_m ) {zoom--;}
-
70 
-
71  if(tps_getKeyPressed() == SDLK_LEFT ) {left++;}
-
72  if(tps_getKeyPressed() == SDLK_RIGHT ) {left--;}
-
73 
-
74  if(tps_getKeyPressed() == SDLK_UP ) {up++;}
-
75  if(tps_getKeyPressed() == SDLK_DOWN ) {up--;}
-
76 
-
77 
-
78  tps_background(255, 255, 255);
-
79  scaleTree(forest, size + 1,zoom,left,up);
-
80  for (size_t i = 0; i<size; i++){
-
81  x1 = edgeList[i].tree1->geoloc.x;
-
82  y1 = edgeList[i].tree1->geoloc.y;
-
83  x2 = edgeList[i].tree2->geoloc.x;
-
84  y2 = edgeList[i].tree2->geoloc.y;
-
85  tps_drawLine(x1, y1, x2, y2);
-
86  }
-
87 
-
88  tps_render();
-
89  }
-
90  tps_closeWindow();
-
91  return;
-
92 }
-
-
-
- -

◆ getExtremum()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void getExtremum (treeforest,
size_t size,
double * minimumX,
double * minimumY,
double * maximumX,
double * maximumY 
)
-
- -

Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des champs geoloc.x et geoloc.y de la forêt d'arbre forest de taille size.

-
Parameters
- - - - - - - -
forest
size
minimumX
minimumY
maximumX
maximumY
-
-
-
171  {
-
172  *minimumX = minX(forest, size);
-
173  *minimumY = minY(forest, size);
-
174  *maximumX = maxX(forest, size);
-
175  *maximumY = maxY(forest, size);
-
176 }
-
-
-
- -

◆ loadingBar()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void loadingBar (int current,
int total,
clock_t delta 
)
-
- -

Une fonction permettant de visualiser l'avancement d'un processus.

-
Parameters
- - - - -
currentla quantité actuelle d'avancement du processus
totalla quantité totale de référencee
deltale nombre de millisecondes écoulées depuis le début du programme
-
-
-
178  {
-
179  static double previoustime = 0;
-
180  double newtime;
-
181  if (current != total && current%100 == 0){
-
182  printf("%d/%d -- ", current, total);
-
183  printf("Time since beginning : %fs -- ", ((double)delta)/CLOCKS_PER_SEC);
-
184  newtime = 0.5*previoustime + 0.5*(((double)(delta * ((float)total/(float)current)))/CLOCKS_PER_SEC);
-
185  printf("Time left estimated : %fs\r", newtime - ((double)delta)/CLOCKS_PER_SEC);
-
186  previoustime = newtime;
-
187  }
-
188 
-
189  else if(current == total){
-
190  printf("%d/%d -- ", current, total);
-
191  printf("Time since beginning : %fs -- ", ((double)delta)/CLOCKS_PER_SEC);
-
192  printf("Time left estimated : 0\n");
-
193  }
-
194 }
-
-
-
-
-
-
double maxY(tree *forest, size_t size)
Renvoie le champ geoloc.y maximum de la liste forest de taille size.
Definition: display.c:158
-
double maxX(tree *forest, size_t size)
Renvoie le champ geoloc.x maximum de la liste forest de taille size.
Definition: display.c:140
-
double minX(tree *forest, size_t size)
Renvoie le champ geoloc.x minimum de la liste forest de taille size.
Definition: display.c:104
-
double minY(tree *forest, size_t size)
Renvoie le champ geoloc.y minimum de la liste forest de taille size.
Definition: display.c:122
-
void scaleTree(tree *forest, size_t size, int zoom, int left, int up)
Effectue une transformation affine des coordonnées des arbres de la liste forest de taille size,...
Definition: display.c:30
-
#define HEIGHT
Definition: display.c:6
-
#define WIDTH
Definition: display.c:7
-
void infoDisplay(void)
Definition: display.c:9
- - - - diff --git a/docs/html/display_8h.js b/docs/html/display_8h.js deleted file mode 100644 index 53cf824..0000000 --- a/docs/html/display_8h.js +++ /dev/null @@ -1,6 +0,0 @@ -var display_8h = -[ - [ "displayTrees", "display_8h.html#adb313f63bb0c4ad9ce73a49eb31e3992", null ], - [ "getExtremum", "display_8h.html#ab7d67ad0a7206fc20171512033d3fb2e", null ], - [ "loadingBar", "display_8h.html#a550e90e7a5a56b5c11d17a005ac43dee", null ] -]; \ No newline at end of file diff --git a/docs/html/display_8h__dep__incl.dot b/docs/html/display_8h__dep__incl.dot deleted file mode 100644 index a55b9b2..0000000 --- a/docs/html/display_8h__dep__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/display.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; -} diff --git a/docs/html/display_8h__incl.dot b/docs/html/display_8h__incl.dot deleted file mode 100644 index 6be868a..0000000 --- a/docs/html/display_8h__incl.dot +++ /dev/null @@ -1,17 +0,0 @@ -digraph "include/display.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/display_8h_source.html b/docs/html/display_8h_source.html deleted file mode 100644 index 6d7e122..0000000 --- a/docs/html/display_8h_source.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - -Project 2022: include/display.h Source File - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
display.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "struct.h"
-
3 #include <stdio.h>
-
4 #include <time.h>
-
5 
-
6 
-
14 void displayTrees(edge* listeAretes, size_t size, tree* structure);
-
15 
-
16 
-
17 
-
18 
-
26 void loadingBar(int current, int total, clock_t delta);
-
27 
-
28 
-
41 void getExtremum(tree* forest, size_t size, double* minimumX,
-
42 double* minimumY, double* maximumX, double* maximumY);
-
-
-
void loadingBar(int current, int total, clock_t delta)
Une fonction permettant de visualiser l'avancement d'un processus.
Definition: display.c:178
-
void getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY)
Get the Extremum object Ecrit à l'emplacement des pointeurs passés en paramètre les extremums des cha...
Definition: display.c:170
-
structure définissant une arête
Definition: struct.h:75
-
void displayTrees(edge *listeAretes, size_t size, tree *structure)
Une fonction qui permet d'afficher l'arbre recouvrant minimal.
Definition: display.c:45
-
size_t size
Definition: array-list.c:8
- -
structure informations importantes concernant un arbre
Definition: struct.h:18
- - - - diff --git a/docs/html/doc.png b/docs/html/doc.png deleted file mode 100644 index 17edabff95f7b8da13c9516a04efe05493c29501..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t diff --git a/docs/html/doxygen.css b/docs/html/doxygen.css deleted file mode 100644 index 73ecbb2..0000000 --- a/docs/html/doxygen.css +++ /dev/null @@ -1,1771 +0,0 @@ -/* The standard CSS for doxygen 1.8.17 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -p.reference, p.definition { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #879ECB; - color: #354C7B; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -ul.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; - column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -th p.starttd, p.intertd, p.endtd { - font-size: 100%; - font-weight: 700; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -p.interli { -} - -p.interdd { -} - -p.intertd { -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #FFFFFF; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #FFFFFF; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -ul { - overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ -} - -#side-nav ul { - overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ -} - -#main-nav ul { - overflow: visible; /* reset ul rule for the navigation bar drop down lists */ -} - -.fragment { - text-align: left; - direction: ltr; - overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ - overflow-y: hidden; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ - margin: 4px 8px 4px 2px; - background-color: #FBFCFD; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line:after { - content:"\000A"; - white-space: pre; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -.lineno { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -div.ah, span.ah { - background-color: black; - font-weight: bold; - color: #FFFFFF; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); -} - -div.classindex ul { - list-style: none; - padding-left: 0; -} - -div.classindex span.ai { - display: inline-block; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl, img.inline { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -blockquote.DocNodeRTL { - border-left: 0; - border-right: 2px solid #9CAFD4; - margin: 0 4px 0 24px; - padding: 0 16px 0 12px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight, .memTemplItemRight { - width: 100%; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtitle { - padding: 8px; - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - margin-bottom: -1px; - background-image: url('nav_f.png'); - background-repeat: repeat-x; - background-color: #E2E8F2; - line-height: 1.25; - font-weight: 300; - float:left; -} - -.permalink -{ - font-size: 65%; - display: inline-block; - vertical-align: middle; -} - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: 400; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-color: #DFE5F1; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -} - -.overload { - font-family: "courier new",courier,monospace; - font-size: 65%; -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 10px 2px 10px; - background-color: #FBFCFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype, .tparams .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir, .tparams .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #728DC1; - border-top:1px solid #5373B4; - border-left:1px solid #5373B4; - border-right:1px solid #C4CFE5; - border-bottom:1px solid #C4CFE5; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #9CAFD4; - border-bottom: 1px solid #9CAFD4; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #F7F8FB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #3D578C; -} - -.arrow { - color: #9CAFD4; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #728DC1; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable caption { - caption-side: top; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #A8B8D9; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #A8B8D9; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - font-size: 90%; - color: #253555; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - font-weight: 400; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #A8B8D9; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #283A5D; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#6884BD; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#364D7C; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -table.classindex -{ - margin: 10px; - white-space: nowrap; - margin-left: 3%; - margin-right: 3%; - width: 94%; - border: 0; - border-spacing: 0; - padding: 0; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -.PageDocRTL-title div.headertitle { - text-align: right; - direction: rtl; -} - -dl { - padding: 0 0 0 0; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ -dl.section { - margin-left: 0px; - padding-left: 0px; -} - -dl.section.DocNodeRTL { - margin-right: 0px; - padding-right: 0px; -} - -dl.note { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #D0C000; -} - -dl.note.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #FF0000; -} - -dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00D000; -} - -dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00D000; -} - -dl.deprecated { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #505050; -} - -dl.deprecated.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #505050; -} - -dl.todo { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00C0E0; -} - -dl.todo.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00C0E0; -} - -dl.test { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #3030E0; -} - -dl.test.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #3030E0; -} - -dl.bug { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #C08050; -} - -dl.bug.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectalign -{ - vertical-align: middle; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #5373B4; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.plantumlgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #90A5CE; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#334975; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #F4F6FA; - border: 1px solid #D8DFEE; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 8px 10px 10px; - width: 200px; -} - -.PageDocRTL-title div.toc { - float: left !important; - text-align: right; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -.PageDocRTL-title div.toc li { - background-position-x: right !important; - padding-left: 0 !important; - padding-right: 10px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #4665A2; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.PageDocRTL-title div.toc li.level1 { - margin-left: 0 !important; - margin-right: 0; -} - -.PageDocRTL-title div.toc li.level2 { - margin-left: 0 !important; - margin-right: 15px; -} - -.PageDocRTL-title div.toc li.level3 { - margin-left: 0 !important; - margin-right: 30px; -} - -.PageDocRTL-title div.toc li.level4 { - margin-left: 0 !important; - margin-right: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - -/* @group Markdown */ - -/* -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.markdownTableHead tr { -} - -table.markdownTableBodyLeft td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft { - text-align: left -} - -th.markdownTableHeadRight { - text-align: right -} - -th.markdownTableHeadCenter { - text-align: center -} -*/ - -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.markdownTable tr { -} - -th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft, td.markdownTableBodyLeft { - text-align: left -} - -th.markdownTableHeadRight, td.markdownTableBodyRight { - text-align: right -} - -th.markdownTableHeadCenter, td.markdownTableBodyCenter { - text-align: center -} - -.DocNodeRTL { - text-align: right; - direction: rtl; -} - -.DocNodeLTR { - text-align: left; - direction: ltr; -} - -table.DocNodeRTL { - width: auto; - margin-right: 0; - margin-left: auto; -} - -table.DocNodeLTR { - width: auto; - margin-right: auto; - margin-left: 0; -} - -tt, code, kbd, samp -{ - display: inline-block; - direction:ltr; -} -/* @end */ - -u { - text-decoration: underline; -} - diff --git a/docs/html/doxygen.png b/docs/html/doxygen.png deleted file mode 100644 index 3ff17d807fd8aa003bed8bb2a69e8f0909592fd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3779 zcmV;!4m|ORP)tMIv#Q0*~7*`IBSO7_x;@a8#Zk6_PeKR_s92J&)(m+);m9Iz3blw)z#Gi zP!9lj4$%+*>Hz@HCmM9L9|8c+0u=!H$O3?R0Kgx|#WP<6fKfC8fM-CQZT|_r@`>VO zX^Hgb|9cJqpdJA5$MCEK`F_2@2Y@s>^+;pF`~jdI0Pvr|vl4`=C)EH@1IFe7pdJ8F zH(qGi004~QnF)Ggga~8v08kGAs2hKTATxr7pwfNk|4#_AaT>w8P6TV+R2kbS$v==} zAjf`s0g#V8lB+b3)5oEI*q+{Yt$MZDruD2^;$+(_%Qn+%v0X-bJO=;@kiJ^ygLBnC z?1OVv_%aex1M@jKU|Z~$eI?PoF4Vj>fDzyo zAiLfpXY*a^Sj-S5D0S3@#V$sRW)g)_1e#$%8xdM>Jm7?!h zu0P2X=xoN>^!4DoPRgph2(2va07yfpXF+WH7EOg1GY%Zn z7~1A<(z7Q$ktEXhW_?GMpHp9l_UL18F3KOsxu81pqoBiNbFSGsof-W z6~eloMoz=4?OOnl2J268x5rOY`dCk0us(uS#Ud4yqOr@?=Q57a}tit|BhY>}~frH1sP`ScHS_d)oqH^lYy zZ%VP`#10MlE~P?cE(%(#(AUSv_T{+;t@$U}El}(1ig`vZo`Rm;+5&(AYzJ^Ae=h2X z@Re%vHwZU>|f0NI&%$*4eJweC5OROQrpPMA@*w|o z()A==l}(@bv^&>H1Ob3C=<^|hob?0+xJ?QQ3-ueQC}zy&JQNib!OqSO@-=>XzxlSF zAZ^U*1l6EEmg3r};_HY>&Jo_{dOPEFTWPmt=U&F#+0(O59^UIlHbNX+eF8UzyDR*T z(=5X$VF3!gm@RooS-&iiUYGG^`hMR(07zr_xP`d!^BH?uD>Phl8Rdifx3Af^Zr`Ku ztL+~HkVeL#bJ)7;`=>;{KNRvjmc}1}c58Sr#Treq=4{xo!ATy|c>iRSp4`dzMMVd@ zL8?uwXDY}Wqgh4mH`|$BTXpUIu6A1-cSq%hJw;@^Zr8TP=GMh*p(m(tN7@!^D~sl$ zz^tf4II4|};+irE$Fnm4NTc5%p{PRA`%}Zk`CE5?#h3|xcyQsS#iONZ z6H(@^i9td!$z~bZiJLTax$o>r(p}3o@< zyD7%(>ZYvy=6$U3e!F{Z`uSaYy`xQyl?b{}eg|G3&fz*`QH@mDUn)1%#5u`0m$%D} z?;tZ0u(mWeMV0QtzjgN!lT*pNRj;6510Wwx?Yi_=tYw|J#7@(Xe7ifDzXuK;JB;QO z#bg~K$cgm$@{QiL_3yr}y&~wuv=P=#O&Tj=Sr)aCUlYmZMcw?)T?c%0rUe1cS+o!qs_ zQ6Gp)-{)V!;=q}llyK3|^WeLKyjf%y;xHku;9(vM!j|~<7w1c*Mk-;P{T&yG) z@C-8E?QPynNQ<8f01D`2qexcVEIOU?y}MG)TAE6&VT5`rK8s(4PE;uQ92LTXUQ<>^ ztyQ@=@kRdh@ebUG^Z6NWWIL;_IGJ2ST>$t!$m$qvtj0Qmw8moN6GUV^!QKNK zHBXCtUH8)RY9++gH_TUV4^=-j$t}dD3qsN7GclJ^Zc&(j6&a_!$jCf}%c5ey`pm~1)@{yI3 zTdWyB+*X{JFw#z;PwRr5evb2!ueWF;v`B0HoUu4-(~aL=z;OXUUEtG`_$)Oxw6FKg zEzY`CyKaSBK3xt#8gA|r_|Kehn_HYVBMpEwbn9-fI*!u*eTA1ef8Mkl1=!jV4oYwWYM}i`A>_F4nhmlCIC6WLa zY%;4&@AlnaG11ejl61Jev21|r*m+?Kru3;1tFDl}#!OzUp6c>go4{C|^erwpG*&h6bspUPJag}oOkN2912Y3I?(eRc@U9>z#HPBHC?nps7H5!zP``90!Q1n80jo+B3TWXp!8Pe zwuKuLLI6l3Gv@+QH*Y}2wPLPQ1^EZhT#+Ed8q8Wo z1pTmIBxv14-{l&QVKxAyQF#8Q@NeJwWdKk>?cpiJLkJr+aZ!Me+Cfp!?FWSRf^j2k z73BRR{WSKaMkJ>1Nbx5dan5hg^_}O{Tj6u%iV%#QGz0Q@j{R^Ik)Z*+(YvY2ziBG)?AmJa|JV%4UT$k`hcOg5r9R?5>?o~JzK zJCrj&{i#hG>N7!B4kNX(%igb%kDj0fOQThC-8mtfap82PNRXr1D>lbgg)dYTQ(kbx z`Ee5kXG~Bh+BHQBf|kJEy6(ga%WfhvdQNDuOfQoe377l#ht&DrMGeIsI5C<&ai zWG$|hop2@@q5YDa)_-A?B02W;#fH!%k`daQLEItaJJ8Yf1L%8x;kg?)k)00P-lH+w z)5$QNV6r2$YtnV(4o=0^3{kmaXn*Dm0F*fU(@o)yVVjk|ln8ea6BMy%vZAhW9|wvA z8RoDkVoMEz1d>|5(k0Nw>22ZT){V<3$^C-cN+|~hKt2)){+l-?3m@-$c?-dlzQ)q- zZ)j%n^gerV{|+t}9m1_&&Ly!9$rtG4XX|WQ8`xYzGC~U@nYh~g(z9)bdAl#xH)xd5a=@|qql z|FzEil{P5(@gy!4ek05i$>`E^G~{;pnf6ftpLh$h#W?^#4UkPfa;;?bsIe&kz!+40 zI|6`F2n020)-r`pFaZ38F!S-lJM-o&inOw|66=GMeP@xQU5ghQH{~5Uh~TMTd;I9` z>YhVB`e^EVj*S7JF39ZgNf}A-0DwOcTT63ydN$I3b?yBQtUI*_fae~kPvzoD$zjX3 zoqBe#>12im4WzZ=f^4+u=!lA|#r%1`WB0-6*3BL#at`47#ebPpR|D1b)3BjT34nYY z%Ds%d?5$|{LgOIaRO{{oC&RK`O91$fqwM0(C_TALcozu*fWHb%%q&p-q{_8*2Zsi^ zh1ZCnr^UYa;4vQEtHk{~zi>wwMC5o{S=$P0X681y`SXwFH?Ewn{x-MOZynmc)JT5v zuHLwh;tLfxRrr%|k370}GofLl7thg>ACWWY&msqaVu&ry+`7+Ss>NL^%T1|z{IGMA zW-SKl=V-^{(f!Kf^#3(|T2W47d(%JVCI4JgRrT1pNz>+ietmFToNv^`gzC@&O-)+i zPQ~RwK8%C_vf%;%e>NyTp~dM5;!C|N0Q^6|CEb7Bw=Vz~$1#FA;Z*?mKSC)Hl-20s t8QyHj(g6VK0RYbl8UjE)0O0w=e*@m04r>stuEhWV002ovPDHLkV1hl;dM*F} diff --git a/docs/html/dynsections.js b/docs/html/dynsections.js deleted file mode 100644 index ea0a7b3..0000000 --- a/docs/html/dynsections.js +++ /dev/null @@ -1,120 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} - -function toggleLevel(level) -{ - $('table.directory tr').each(function() { - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l - - - - - - -Project 2022: File List - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
File List
-
-
-
Here is a list of all files with brief descriptions:
-
-
- - - - diff --git a/docs/html/files_dup.js b/docs/html/files_dup.js deleted file mode 100644 index 89e9042..0000000 --- a/docs/html/files_dup.js +++ /dev/null @@ -1,5 +0,0 @@ -var files_dup = -[ - [ "include", "dir_d44c64559bbebec7f509842c48db8b23.html", "dir_d44c64559bbebec7f509842c48db8b23" ], - [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] -]; \ No newline at end of file diff --git a/docs/html/folderclosed.png b/docs/html/folderclosed.png deleted file mode 100644 index bb8ab35edce8e97554e360005ee9fc5bffb36e66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA diff --git a/docs/html/fonctions_8c.html b/docs/html/fonctions_8c.html deleted file mode 100644 index 568ff5e..0000000 --- a/docs/html/fonctions_8c.html +++ /dev/null @@ -1,312 +0,0 @@ - - - - - - - -Project 2022: src/fonctions.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
fonctions.c File Reference
-
-
-
#include "../include/fonctions.h"
-#include <math.h>
-
-Include dependency graph for fonctions.c:
-
-
- -
-
- - - - - - - - - - - - - -

-Functions

double getMeanLongitude (tree *forest, size_t size)
 Get the Mean Longitude object Renvoie la longitude moyenne des arbres de la liste forest de taille size. More...
 
double getMeanLatitude (tree *forest, size_t size)
 Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size. More...
 
void projectionTrees (tree *forest, size_t size)
 Fais la projection équirectangulaire des arbres de la liste forest de taille size. More...
 
double distanceTrees (tree *tree1, tree *tree2)
 Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. More...
 
-

Function Documentation

- -

◆ distanceTrees()

- -
-
- - - - - - - - - - - - - - - - - - -
double distanceTrees (treetree1,
treetree2 
)
-
- -

Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude.

-
Parameters
- - - -
tree1premier arbre à comparer
tree2second arbre à comparer
-
-
-
Returns
double
-
50  {
-
51  return ((pow(tree1->geoloc.x - tree2->geoloc.x, 2) + pow(tree1->geoloc.y - tree2->geoloc.y, 2)));
-
52 }
-
-
-
- -

◆ getMeanLatitude()

- -
-
- - - - - - - - - - - - - - - - - - -
double getMeanLatitude (treeforest,
size_t size 
)
-
- -

Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
29  {
-
30  double meanLatitude = 0;
-
31  for (size_t i = 0; i<size; i++){
-
32  meanLatitude += forest[i].geoloc.x;
-
33  }
-
34  return meanLatitude/size;
-
35 }
-
-
-
- -

◆ getMeanLongitude()

- -
-
- - - - - - - - - - - - - - - - - - -
double getMeanLongitude (treeforest,
size_t size 
)
-
- -

Get the Mean Longitude object Renvoie la longitude moyenne des arbres de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
Returns
double
-
13  {
-
14  double meanLongitude = 0;
-
15  for (size_t i = 0; i<size; i++){
-
16  meanLongitude += forest[i].geoloc.y;
-
17  }
-
18  return meanLongitude/size;
-
19 }
-
-
-
- -

◆ projectionTrees()

- -
-
- - - - - - - - - - - - - - - - - - -
void projectionTrees (treeforest,
size_t size 
)
-
- -

Fais la projection équirectangulaire des arbres de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
38  {
-
39  double phi0 = getMeanLatitude(forest, size);
-
40  double lambda0 = getMeanLongitude(forest, size);
-
41  double cosphi0 = cos(phi0*M_PI/180);
-
42 
-
43  for(size_t i = 0; i<size; i++){
-
44  double oldx = forest[i].geoloc.x;
-
45  forest[i].geoloc.x = cosphi0*(forest[i].geoloc.y - lambda0)*M_PI/180;
-
46  forest[i].geoloc.y = (oldx - phi0)*M_PI/180;
-
47  }
-
48 }
-
-
-
-
-
-
double y
longitude position arbre (en degré)
Definition: struct.h:12
-
position geoloc
struture correspondant à la position de l'arbre
Definition: struct.h:20
-
double x
latitude position arbre (en degré)
Definition: struct.h:10
-
double getMeanLongitude(tree *forest, size_t size)
Get the Mean Longitude object Renvoie la longitude moyenne des arbres de la liste forest de taille si...
Definition: fonctions.c:13
-
double getMeanLatitude(tree *forest, size_t size)
Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size...
Definition: fonctions.c:29
- - - - diff --git a/docs/html/fonctions_8c.js b/docs/html/fonctions_8c.js deleted file mode 100644 index 396d7d7..0000000 --- a/docs/html/fonctions_8c.js +++ /dev/null @@ -1,7 +0,0 @@ -var fonctions_8c = -[ - [ "distanceTrees", "fonctions_8c.html#a069ef6fd0a0890ba4f9548734804118f", null ], - [ "getMeanLatitude", "fonctions_8c.html#a4e28ba677802ecff6a230577f4d1b3c0", null ], - [ "getMeanLongitude", "fonctions_8c.html#a62955c07d956aebbaf0db45e96e83100", null ], - [ "projectionTrees", "fonctions_8c.html#af18ef119d8c281b81165033c74ad49f1", null ] -]; \ No newline at end of file diff --git a/docs/html/fonctions_8c__incl.dot b/docs/html/fonctions_8c__incl.dot deleted file mode 100644 index 36c6ac1..0000000 --- a/docs/html/fonctions_8c__incl.dot +++ /dev/null @@ -1,23 +0,0 @@ -digraph "src/fonctions.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/fonctions_8h.html b/docs/html/fonctions_8h.html deleted file mode 100644 index d13cf44..0000000 --- a/docs/html/fonctions_8h.html +++ /dev/null @@ -1,271 +0,0 @@ - - - - - - - -Project 2022: include/fonctions.h File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
fonctions.h File Reference
-
-
-
#include "struct.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <tps.h>
-
-Include dependency graph for fonctions.h:
-
-
- -
-
-This graph shows which files directly or indirectly include this file:
-
-
- -
-
-

Go to the source code of this file.

- - - - -

-Macros

#define RAYON   6378137.0
 
- - - - - - - - - - -

-Functions

double distanceTrees (tree *tree1, tree *tree2)
 Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. More...
 
double radians (double)
 Cette fonction renvoie la conversion en radians d'un angle exprimé en degrés. More...
 
void projectionTrees (tree *forest, size_t size)
 Fais la projection équirectangulaire des arbres de la liste forest de taille size. More...
 
-

Macro Definition Documentation

- -

◆ RAYON

- -
-
- - - - -
#define RAYON   6378137.0
-
- -
-
-

Function Documentation

- -

◆ distanceTrees()

- -
-
- - - - - - - - - - - - - - - - - - -
double distanceTrees (treetree1,
treetree2 
)
-
- -

Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude.

-
Parameters
- - - -
tree1premier arbre à comparer
tree2second arbre à comparer
-
-
-
Returns
double
-
50  {
-
51  return ((pow(tree1->geoloc.x - tree2->geoloc.x, 2) + pow(tree1->geoloc.y - tree2->geoloc.y, 2)));
-
52 }
-
-
-
- -

◆ projectionTrees()

- -
-
- - - - - - - - - - - - - - - - - - -
void projectionTrees (treeforest,
size_t size 
)
-
- -

Fais la projection équirectangulaire des arbres de la liste forest de taille size.

-
Parameters
- - - -
forest
size
-
-
-
38  {
-
39  double phi0 = getMeanLatitude(forest, size);
-
40  double lambda0 = getMeanLongitude(forest, size);
-
41  double cosphi0 = cos(phi0*M_PI/180);
-
42 
-
43  for(size_t i = 0; i<size; i++){
-
44  double oldx = forest[i].geoloc.x;
-
45  forest[i].geoloc.x = cosphi0*(forest[i].geoloc.y - lambda0)*M_PI/180;
-
46  forest[i].geoloc.y = (oldx - phi0)*M_PI/180;
-
47  }
-
48 }
-
-
-
- -

◆ radians()

- -
-
- - - - - - - - -
double radians (double )
-
- -

Cette fonction renvoie la conversion en radians d'un angle exprimé en degrés.

-
Returns
double
- -
-
-
-
-
double y
longitude position arbre (en degré)
Definition: struct.h:12
-
position geoloc
struture correspondant à la position de l'arbre
Definition: struct.h:20
-
double x
latitude position arbre (en degré)
Definition: struct.h:10
-
double getMeanLongitude(tree *forest, size_t size)
Get the Mean Longitude object Renvoie la longitude moyenne des arbres de la liste forest de taille si...
Definition: fonctions.c:13
-
double getMeanLatitude(tree *forest, size_t size)
Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size...
Definition: fonctions.c:29
- - - - diff --git a/docs/html/fonctions_8h.js b/docs/html/fonctions_8h.js deleted file mode 100644 index eca2ccc..0000000 --- a/docs/html/fonctions_8h.js +++ /dev/null @@ -1,7 +0,0 @@ -var fonctions_8h = -[ - [ "RAYON", "fonctions_8h.html#a3304c99f43f534878204486fc7b9673d", null ], - [ "distanceTrees", "fonctions_8h.html#a069ef6fd0a0890ba4f9548734804118f", null ], - [ "projectionTrees", "fonctions_8h.html#af18ef119d8c281b81165033c74ad49f1", null ], - [ "radians", "fonctions_8h.html#a86aeec989899cd0691300d15d5b7de5f", null ] -]; \ No newline at end of file diff --git a/docs/html/fonctions_8h__dep__incl.dot b/docs/html/fonctions_8h__dep__incl.dot deleted file mode 100644 index 04f65a0..0000000 --- a/docs/html/fonctions_8h__dep__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/fonctions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/html/fonctions_8h__incl.dot b/docs/html/fonctions_8h__incl.dot deleted file mode 100644 index 70694c3..0000000 --- a/docs/html/fonctions_8h__incl.dot +++ /dev/null @@ -1,19 +0,0 @@ -digraph "include/fonctions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/fonctions_8h_source.html b/docs/html/fonctions_8h_source.html deleted file mode 100644 index 1943671..0000000 --- a/docs/html/fonctions_8h_source.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - -Project 2022: include/fonctions.h Source File - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
fonctions.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include "struct.h"
-
3 #include <stdio.h>
-
4 #include <stdlib.h>
-
5 #include <tps.h>
-
6 
-
7 #define RAYON 6378137.0
-
8 
-
17 double distanceTrees(tree * tree1, tree * tree2);
-
18 
-
19 
-
25 double radians(double);
-
26 
-
34 void projectionTrees(tree* forest, size_t size);
-
-
-
double distanceTrees(tree *tree1, tree *tree2)
Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude...
Definition: fonctions.c:50
-
double radians(double)
Cette fonction renvoie la conversion en radians d'un angle exprimé en degrés.
-
void projectionTrees(tree *forest, size_t size)
Fais la projection équirectangulaire des arbres de la liste forest de taille size.
Definition: fonctions.c:38
-
size_t size
Definition: array-list.c:8
- -
structure informations importantes concernant un arbre
Definition: struct.h:18
- - - - diff --git a/docs/html/functions.html b/docs/html/functions.html deleted file mode 100644 index d2f4a46..0000000 --- a/docs/html/functions.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - -Project 2022: Data Fields - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
Here is a list of all struct and union fields with links to the structures/unions they belong to:
- -

- a -

- - -

- c -

    -
  • conserve -: opt -
  • -
- - -

- d -

- - -

- e -

- - -

- g -

- - -

- h -

- - -

- i -

- - -

- l -

    -
  • limit_value -: opt -
  • -
  • location -: opt -
  • -
- - -

- n -

    -
  • neighbors -: node -
  • -
- - -

- o -

    -
  • out_path -: opt -
  • -
- - -

- r -

    -
  • recharge -: opt -
  • -
- - -

- s -

- - -

- t -

- - -

- v -

- - -

- x -

- - -

- y -

-
-
- - - - diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html deleted file mode 100644 index b4b53bb..0000000 --- a/docs/html/functions_vars.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - -Project 2022: Data Fields - Variables - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-  - -

- a -

- - -

- c -

    -
  • conserve -: opt -
  • -
- - -

- d -

- - -

- e -

- - -

- g -

- - -

- h -

- - -

- i -

- - -

- l -

    -
  • limit_value -: opt -
  • -
  • location -: opt -
  • -
- - -

- n -

    -
  • neighbors -: node -
  • -
- - -

- o -

    -
  • out_path -: opt -
  • -
- - -

- r -

    -
  • recharge -: opt -
  • -
- - -

- s -

- - -

- t -

- - -

- v -

- - -

- x -

- - -

- y -

-
-
- - - - diff --git a/docs/html/globals.html b/docs/html/globals.html deleted file mode 100644 index 2dedb8b..0000000 --- a/docs/html/globals.html +++ /dev/null @@ -1,469 +0,0 @@ - - - - - - - -Project 2022: Globals - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
- -

- a -

- - -

- b -

- - -

- c -

- - -

- d -

- - -

- e -

- - -

- f -

    -
  • firstNotHandledVertex() -: algo.c -
  • -
  • freeNode() -: stat.c -
  • -
- - -

- g -

- - -

- h -

- - -

- i -

- - -

- l -

- - -

- m -

- - -

- n -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- v -

- - -

- w -

-
-
- - - - diff --git a/docs/html/globals_defs.html b/docs/html/globals_defs.html deleted file mode 100644 index 5e529a0..0000000 --- a/docs/html/globals_defs.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Project 2022: Globals - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
- - - - diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html deleted file mode 100644 index 3075eec..0000000 --- a/docs/html/globals_func.html +++ /dev/null @@ -1,423 +0,0 @@ - - - - - - - -Project 2022: Globals - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-  - -

- a -

- - -

- b -

- - -

- c -

- - -

- d -

- - -

- e -

    -
  • exentricityVertex() -: stat.c -
  • -
- - -

- f -

    -
  • firstNotHandledVertex() -: algo.c -
  • -
  • freeNode() -: stat.c -
  • -
- - -

- g -

- - -

- h -

- - -

- i -

- - -

- l -

- - -

- m -

- - -

- n -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- v -

    -
  • vertexDistMin() -: algo.c -
  • -
- - -

- w -

-
-
- - - - diff --git a/docs/html/globals_type.html b/docs/html/globals_type.html deleted file mode 100644 index 7b556e9..0000000 --- a/docs/html/globals_type.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - -Project 2022: Globals - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
- - - - diff --git a/docs/html/graph_legend.dot b/docs/html/graph_legend.dot deleted file mode 100644 index 4d6ac8c..0000000 --- a/docs/html/graph_legend.dot +++ /dev/null @@ -1,23 +0,0 @@ -digraph "Graph Legend" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node9 [shape="box",label="Inherited",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",fillcolor="grey75",style="filled" fontcolor="black"]; - Node10 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [shape="box",label="PublicBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; - Node11 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [shape="box",label="Truncated",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="red"]; - Node13 -> Node9 [dir="back",color="darkgreen",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 [shape="box",label="ProtectedBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; - Node14 -> Node9 [dir="back",color="firebrick4",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 [shape="box",label="PrivateBase",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; - Node15 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node15 [shape="box",label="Undocumented",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="grey75"]; - Node16 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node16 [shape="box",label="Templ< int >",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; - Node17 -> Node16 [dir="back",color="orange",fontsize="10",style="dashed",label="< int >",fontname="Helvetica"]; - Node17 [shape="box",label="Templ< T >",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; - Node18 -> Node9 [dir="back",color="darkorchid3",fontsize="10",style="dashed",label="m_usedClass",fontname="Helvetica"]; - Node18 [shape="box",label="Used",fontsize="10",height=0.2,width=0.4,fontname="Helvetica",color="black"]; -} diff --git a/docs/html/graph_legend.html b/docs/html/graph_legend.html deleted file mode 100644 index 32eff1a..0000000 --- a/docs/html/graph_legend.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - - -Project 2022: Graph Legend - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
Graph Legend
-
-
-

This page explains how to interpret the graphs that are generated by doxygen.

-

Consider the following example:

/*! Invisible class because of truncation */
-
class Invisible { };
-
-
/*! Truncated class, inheritance relation is hidden */
-
class Truncated : public Invisible { };
-
-
/* Class not documented with doxygen comments */
-
class Undocumented { };
-
-
/*! Class that is inherited using public inheritance */
-
class PublicBase : public Truncated { };
-
-
/*! A template class */
-
template<class T> class Templ { };
-
-
/*! Class that is inherited using protected inheritance */
-
class ProtectedBase { };
-
-
/*! Class that is inherited using private inheritance */
-
class PrivateBase { };
-
-
/*! Class that is used by the Inherited class */
-
class Used { };
-
-
/*! Super class that inherits a number of other classes */
-
class Inherited : public PublicBase,
-
protected ProtectedBase,
-
private PrivateBase,
-
public Undocumented,
-
public Templ<int>
-
{
-
private:
-
Used *m_usedClass;
-
};
-

This will result in the following graph:

-

The boxes in the above graph have the following meaning:

-
    -
  • -A filled gray box represents the struct or class for which the graph is generated.
  • -
  • -A box with a black border denotes a documented struct or class.
  • -
  • -A box with a gray border denotes an undocumented struct or class.
  • -
  • -A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • -
-

The arrows have the following meaning:

-
    -
  • -A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • -
  • -A dark green arrow is used for protected inheritance.
  • -
  • -A dark red arrow is used for private inheritance.
  • -
  • -A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
  • -
  • -A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
  • -
-
-
- - - - diff --git a/docs/html/index.html b/docs/html/index.html deleted file mode 100644 index a45d1af..0000000 --- a/docs/html/index.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - -Project 2022: Main Page - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
Project 2022 Documentation
-
-
-

-Voici le projet 1A IR 2022-2023 de Inès LEMESLE et Nicolas GRESSET-BOURGOIS.

-

-*Commande type à entrer en ligne de commande :

-
./bin/arbres -i in_path.csv -o out_path -c save-struct-genre -f 1,1,50,50 -s -g Acer -h 10
-
-./bin/arbres -i in_path.bin -o out_path -r save-struct-genre -f 1,1,50,50 -s -g Acer -h 10
-

-*Les différentes options implémentées :

-
-Attention les options -i ... et -o ... et (-c ... ou -r ...) sont nécessaires au lancement du programme
-
--Possibilité de sauvegarder les informations du minimum spanning tree dans un fichier (-t ...)
-
--Possibilité de choisir le genre de l'arbre (-g ...)
-
--Possibilité de choisir la hauteur de l'arbre (-h ...)
-
--Possibilité de choisir un carré limite de géolocalisation (-f ...)
-
--Possibilité de voir les statistiques du graphe (-s)
-
--Possibilité de mettre une distance maximale entre 2 arbres et ne récupérer que la plus grande composante connexe (-l ...)
-

-*Tests disponibles :

-
-Test de la bonne gestion des options (test_option)
-
--Test de la réalisation du parsage (test_parsage)
-
--Test de la validité de la valeur des distances entre les arbres (test-distance)
-
--Test de la reconnaissance d'un fichier binaire ou non (test-binary)
-
--Test arrêt du programme si fichier non existant (test_error_file)
-
--Test correspondance entre les identifiants associés aux genres et les genres eux-mêmes (test_corres_genus)
-
-
-
- - - - diff --git a/docs/html/jquery.js b/docs/html/jquery.js deleted file mode 100644 index 103c32d..0000000 --- a/docs/html/jquery.js +++ /dev/null @@ -1,35 +0,0 @@ -/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element -},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** - * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler - * Licensed under MIT - * @author Ariel Flesler - * @version 2.1.2 - */ -;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 - * http://www.smartmenus.org/ - * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/docs/html/manageSIGINT_8c.html b/docs/html/manageSIGINT_8c.html deleted file mode 100644 index bc72e0b..0000000 --- a/docs/html/manageSIGINT_8c.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - -Project 2022: src/manageSIGINT.c File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
manageSIGINT.c File Reference
-
-
-
#include <unistd.h>
-#include <signal.h>
-#include <stdio.h>
-#include "../include/manageSIGINT.h"
-
-Include dependency graph for manageSIGINT.c:
-
-
- -
-
- - - - - -

-Functions

void sigIntitialise (sigset_t *masked, sigset_t *old)
 
void sigHandle (struct sigaction *ignore, sigset_t *pending, sigset_t *old)
 
-

Function Documentation

- -

◆ sigHandle()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void sigHandle (struct sigaction * ignore,
sigset_t * pending,
sigset_t * old 
)
-
-
18  {
-
19 
-
20  struct sigaction saved;
-
21 
-
22  sigpending(pending); //ajoute tous les signaux (ici SIGINT) en attente dans le set pending
-
23 
-
24  sigemptyset(&ignore->sa_mask); //initialise le set sa_mask de la structure ignore
-
25  ignore->sa_flags=0;
-
26 
-
27  sigaction(SIGINT,ignore,&saved); //donne nouveau comportement après ^C d'après ignore et stocke l'ancien dans sauvegarde
-
28 
-
29  sigprocmask(SIG_SETMASK,old,0); //retour au comportemetn normal
-
30  ignore->sa_handler=SIG_IGN;
-
31 
-
32  sigaction(SIGINT,&saved,0); //reprend l'ancien comportement
-
33 
-
34 
-
35 }
-
-
-
- -

◆ sigIntitialise()

- -
-
- - - - - - - - - - - - - - - - - - -
void sigIntitialise (sigset_t * masked,
sigset_t * old 
)
-
-
8  {
-
9 
-
10  printf("^C will be taken into account when finishing to write in the binary file.\n");
-
11 
-
12  sigemptyset(masked); //initialise le set masked (vide)
-
13  sigaddset(masked,SIGINT); //ajoute SIGINT au set masked
-
14  sigprocmask(SIG_SETMASK,masked,old); //met ce qu'il y avait dans masked dans old
-
15 }
-
-
-
-
-
- - - - diff --git a/docs/html/manageSIGINT_8c.js b/docs/html/manageSIGINT_8c.js deleted file mode 100644 index 6add8cd..0000000 --- a/docs/html/manageSIGINT_8c.js +++ /dev/null @@ -1,5 +0,0 @@ -var manageSIGINT_8c = -[ - [ "sigHandle", "manageSIGINT_8c.html#a141451f2022226a29ab278b96b477e0f", null ], - [ "sigIntitialise", "manageSIGINT_8c.html#af3362a540be27c1ebee056ba2d040832", null ] -]; \ No newline at end of file diff --git a/docs/html/manageSIGINT_8c__incl.dot b/docs/html/manageSIGINT_8c__incl.dot deleted file mode 100644 index da0e38d..0000000 --- a/docs/html/manageSIGINT_8c__incl.dot +++ /dev/null @@ -1,17 +0,0 @@ -digraph "src/manageSIGINT.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/manageSIGINT.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="../include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8h.html",tooltip=" "]; - Node5 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/manageSIGINT_8h.html b/docs/html/manageSIGINT_8h.html deleted file mode 100644 index c2bee3b..0000000 --- a/docs/html/manageSIGINT_8h.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - -Project 2022: include/manageSIGINT.h File Reference - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
- -
-
manageSIGINT.h File Reference
-
-
-
#include <unistd.h>
-#include <signal.h>
-
-Include dependency graph for manageSIGINT.h:
-
-
- -
-
-This graph shows which files directly or indirectly include this file:
-
-
- -
-
-

Go to the source code of this file.

- - - - - - -

-Functions

void sigIntitialise (sigset_t *masked, sigset_t *old)
 
void sigHandle (struct sigaction *ignore, sigset_t *pending, sigset_t *old)
 
-

Function Documentation

- -

◆ sigHandle()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void sigHandle (struct sigaction * ignore,
sigset_t * pending,
sigset_t * old 
)
-
-
18  {
-
19 
-
20  struct sigaction saved;
-
21 
-
22  sigpending(pending); //ajoute tous les signaux (ici SIGINT) en attente dans le set pending
-
23 
-
24  sigemptyset(&ignore->sa_mask); //initialise le set sa_mask de la structure ignore
-
25  ignore->sa_flags=0;
-
26 
-
27  sigaction(SIGINT,ignore,&saved); //donne nouveau comportement après ^C d'après ignore et stocke l'ancien dans sauvegarde
-
28 
-
29  sigprocmask(SIG_SETMASK,old,0); //retour au comportemetn normal
-
30  ignore->sa_handler=SIG_IGN;
-
31 
-
32  sigaction(SIGINT,&saved,0); //reprend l'ancien comportement
-
33 
-
34 
-
35 }
-
-
-
- -

◆ sigIntitialise()

- -
-
- - - - - - - - - - - - - - - - - - -
void sigIntitialise (sigset_t * masked,
sigset_t * old 
)
-
-
8  {
-
9 
-
10  printf("^C will be taken into account when finishing to write in the binary file.\n");
-
11 
-
12  sigemptyset(masked); //initialise le set masked (vide)
-
13  sigaddset(masked,SIGINT); //ajoute SIGINT au set masked
-
14  sigprocmask(SIG_SETMASK,masked,old); //met ce qu'il y avait dans masked dans old
-
15 }
-
-
-
-
-
- - - - diff --git a/docs/html/manageSIGINT_8h.js b/docs/html/manageSIGINT_8h.js deleted file mode 100644 index 0edc09f..0000000 --- a/docs/html/manageSIGINT_8h.js +++ /dev/null @@ -1,5 +0,0 @@ -var manageSIGINT_8h = -[ - [ "sigHandle", "manageSIGINT_8h.html#a141451f2022226a29ab278b96b477e0f", null ], - [ "sigIntitialise", "manageSIGINT_8h.html#af3362a540be27c1ebee056ba2d040832", null ] -]; \ No newline at end of file diff --git a/docs/html/manageSIGINT_8h__dep__incl.dot b/docs/html/manageSIGINT_8h__dep__incl.dot deleted file mode 100644 index 7c74ba6..0000000 --- a/docs/html/manageSIGINT_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/manageSIGINT.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/manageSIGINT.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; -} diff --git a/docs/html/manageSIGINT_8h__incl.dot b/docs/html/manageSIGINT_8h__incl.dot deleted file mode 100644 index 4c4ca15..0000000 --- a/docs/html/manageSIGINT_8h__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/manageSIGINT.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/manageSIGINT_8h_source.html b/docs/html/manageSIGINT_8h_source.html deleted file mode 100644 index b4e06fe..0000000 --- a/docs/html/manageSIGINT_8h_source.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Project 2022: include/manageSIGINT.h Source File - - - - - - - - - - - - - -
-
- - - - - - -
-
Project 2022 -
-
Finding a minimum spanning tree
-
-
- - - - - - - -
-
- -
-
-
- -
- -
-
- - -
- -
- -
-
-
manageSIGINT.h
-
-
-Go to the documentation of this file.
1 #pragma once
-
2 #include <unistd.h>
-
3 #include <signal.h>
-
4 
-
5 
-
6 void sigIntitialise(sigset_t * masked,sigset_t * old);
-
7 
-
8 void sigHandle(struct sigaction * ignore, sigset_t * pending, sigset_t * old);
-
-
-
void sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old)
Definition: manageSIGINT.c:18
-
void sigIntitialise(sigset_t *masked, sigset_t *old)
Definition: manageSIGINT.c:8
- - - - diff --git a/docs/html/menu.js b/docs/html/menu.js deleted file mode 100644 index 433c15b..0000000 --- a/docs/html/menu.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { - function makeTree(data,relPath) { - var result=''; - if ('children' in data) { - result+=''; - } - return result; - } - - $('#main-nav').append(makeTree(menudata,relPath)); - $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); - if (searchEnabled) { - if (serverSide) { - $('#main-menu').append('
  • '); - } else { - $('#main-menu').append('
  • '); - } - } - $('#main-menu').smartmenus(); -} -/* @license-end */ diff --git a/docs/html/menudata.js b/docs/html/menudata.js deleted file mode 100644 index 1028b44..0000000 --- a/docs/html/menudata.js +++ /dev/null @@ -1,107 +0,0 @@ -/* -@licstart The following is the entire license notice for the -JavaScript code in this file. - -Copyright (C) 1997-2019 by Dimitri van Heesch - -This program is free software; you can redistribute it and/or modify -it under the terms of version 2 of the GNU General Public License as published by -the Free Software Foundation - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License along -with this program; if not, write to the Free Software Foundation, Inc., -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -@licend The above is the entire license notice -for the JavaScript code in this file -*/ -var menudata={children:[ -{text:"Main Page",url:"index.html"}, -{text:"Data Structures",url:"annotated.html",children:[ -{text:"Data Structures",url:"annotated.html"}, -{text:"Data Structure Index",url:"classes.html"}, -{text:"Data Fields",url:"functions.html",children:[ -{text:"All",url:"functions.html",children:[ -{text:"a",url:"functions.html#index_a"}, -{text:"c",url:"functions.html#index_c"}, -{text:"d",url:"functions.html#index_d"}, -{text:"e",url:"functions.html#index_e"}, -{text:"g",url:"functions.html#index_g"}, -{text:"h",url:"functions.html#index_h"}, -{text:"i",url:"functions.html#index_i"}, -{text:"l",url:"functions.html#index_l"}, -{text:"n",url:"functions.html#index_n"}, -{text:"o",url:"functions.html#index_o"}, -{text:"r",url:"functions.html#index_r"}, -{text:"s",url:"functions.html#index_s"}, -{text:"t",url:"functions.html#index_t"}, -{text:"v",url:"functions.html#index_v"}, -{text:"x",url:"functions.html#index_x"}, -{text:"y",url:"functions.html#index_y"}]}, -{text:"Variables",url:"functions_vars.html",children:[ -{text:"a",url:"functions_vars.html#index_a"}, -{text:"c",url:"functions_vars.html#index_c"}, -{text:"d",url:"functions_vars.html#index_d"}, -{text:"e",url:"functions_vars.html#index_e"}, -{text:"g",url:"functions_vars.html#index_g"}, -{text:"h",url:"functions_vars.html#index_h"}, -{text:"i",url:"functions_vars.html#index_i"}, -{text:"l",url:"functions_vars.html#index_l"}, -{text:"n",url:"functions_vars.html#index_n"}, -{text:"o",url:"functions_vars.html#index_o"}, -{text:"r",url:"functions_vars.html#index_r"}, -{text:"s",url:"functions_vars.html#index_s"}, -{text:"t",url:"functions_vars.html#index_t"}, -{text:"v",url:"functions_vars.html#index_v"}, -{text:"x",url:"functions_vars.html#index_x"}, -{text:"y",url:"functions_vars.html#index_y"}]}]}]}, -{text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}, -{text:"Globals",url:"globals.html",children:[ -{text:"All",url:"globals.html",children:[ -{text:"a",url:"globals.html#index_a"}, -{text:"b",url:"globals.html#index_b"}, -{text:"c",url:"globals.html#index_c"}, -{text:"d",url:"globals.html#index_d"}, -{text:"e",url:"globals.html#index_e"}, -{text:"f",url:"globals.html#index_f"}, -{text:"g",url:"globals.html#index_g"}, -{text:"h",url:"globals.html#index_h"}, -{text:"i",url:"globals.html#index_i"}, -{text:"l",url:"globals.html#index_l"}, -{text:"m",url:"globals.html#index_m"}, -{text:"n",url:"globals.html#index_n"}, -{text:"o",url:"globals.html#index_o"}, -{text:"p",url:"globals.html#index_p"}, -{text:"r",url:"globals.html#index_r"}, -{text:"s",url:"globals.html#index_s"}, -{text:"t",url:"globals.html#index_t"}, -{text:"v",url:"globals.html#index_v"}, -{text:"w",url:"globals.html#index_w"}]}, -{text:"Functions",url:"globals_func.html",children:[ -{text:"a",url:"globals_func.html#index_a"}, -{text:"b",url:"globals_func.html#index_b"}, -{text:"c",url:"globals_func.html#index_c"}, -{text:"d",url:"globals_func.html#index_d"}, -{text:"e",url:"globals_func.html#index_e"}, -{text:"f",url:"globals_func.html#index_f"}, -{text:"g",url:"globals_func.html#index_g"}, -{text:"h",url:"globals_func.html#index_h"}, -{text:"i",url:"globals_func.html#index_i"}, -{text:"l",url:"globals_func.html#index_l"}, -{text:"m",url:"globals_func.html#index_m"}, -{text:"n",url:"globals_func.html#index_n"}, -{text:"o",url:"globals_func.html#index_o"}, -{text:"p",url:"globals_func.html#index_p"}, -{text:"r",url:"globals_func.html#index_r"}, -{text:"s",url:"globals_func.html#index_s"}, -{text:"t",url:"globals_func.html#index_t"}, -{text:"v",url:"globals_func.html#index_v"}, -{text:"w",url:"globals_func.html#index_w"}]}, -{text:"Typedefs",url:"globals_type.html"}, -{text:"Macros",url:"globals_defs.html"}]}]}]} diff --git a/docs/html/nav_f.png b/docs/html/nav_f.png deleted file mode 100644 index 72a58a529ed3a9ed6aa0c51a79cf207e026deee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U diff --git a/docs/html/nav_g.png b/docs/html/nav_g.png deleted file mode 100644 index 2093a237a94f6c83e19ec6e5fd42f7ddabdafa81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL=0 ? varName.substring(i+1) : varName; - return eval(n.replace(/\-/g,'_')); -} - -function stripPath(uri) -{ - return uri.substring(uri.lastIndexOf('/')+1); -} - -function stripPath2(uri) -{ - var i = uri.lastIndexOf('/'); - var s = uri.substring(i+1); - var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); - return m ? uri.substring(i-6) : s; -} - -function hashValue() -{ - return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); -} - -function hashUrl() -{ - return '#'+hashValue(); -} - -function pathName() -{ - return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); -} - -function localStorageSupported() -{ - try { - return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; - } - catch(e) { - return false; - } -} - -function storeLink(link) -{ - if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { - window.localStorage.setItem('navpath',link); - } -} - -function deleteLink() -{ - if (localStorageSupported()) { - window.localStorage.setItem('navpath',''); - } -} - -function cachedLink() -{ - if (localStorageSupported()) { - return window.localStorage.getItem('navpath'); - } else { - return ''; - } -} - -function getScript(scriptName,func,show) -{ - var head = document.getElementsByTagName("head")[0]; - var script = document.createElement('script'); - script.id = scriptName; - script.type = 'text/javascript'; - script.onload = func; - script.src = scriptName+'.js'; - head.appendChild(script); -} - -function createIndent(o,domNode,node,level) -{ - var level=-1; - var n = node; - while (n.parentNode) { level++; n=n.parentNode; } - if (node.childrenData) { - var imgNode = document.createElement("span"); - imgNode.className = 'arrow'; - imgNode.style.paddingLeft=(16*level).toString()+'px'; - imgNode.innerHTML=arrowRight; - node.plus_img = imgNode; - node.expandToggle = document.createElement("a"); - node.expandToggle.href = "javascript:void(0)"; - node.expandToggle.onclick = function() { - if (node.expanded) { - $(node.getChildrenUL()).slideUp("fast"); - node.plus_img.innerHTML=arrowRight; - node.expanded = false; - } else { - expandNode(o, node, false, false); - } - } - node.expandToggle.appendChild(imgNode); - domNode.appendChild(node.expandToggle); - } else { - var span = document.createElement("span"); - span.className = 'arrow'; - span.style.width = 16*(level+1)+'px'; - span.innerHTML = ' '; - domNode.appendChild(span); - } -} - -var animationInProgress = false; - -function gotoAnchor(anchor,aname,updateLocation) -{ - var pos, docContent = $('#doc-content'); - var ancParent = $(anchor.parent()); - if (ancParent.hasClass('memItemLeft') || - ancParent.hasClass('memtitle') || - ancParent.hasClass('fieldname') || - ancParent.hasClass('fieldtype') || - ancParent.is(':header')) - { - pos = ancParent.position().top; - } else if (anchor.position()) { - pos = anchor.position().top; - } - if (pos) { - var dist = Math.abs(Math.min( - pos-docContent.offset().top, - docContent[0].scrollHeight- - docContent.height()-docContent.scrollTop())); - animationInProgress=true; - docContent.animate({ - scrollTop: pos + docContent.scrollTop() - docContent.offset().top - },Math.max(50,Math.min(500,dist)),function(){ - if (updateLocation) window.location.href=aname; - animationInProgress=false; - }); - } -} - -function newNode(o, po, text, link, childrenData, lastNode) -{ - var node = new Object(); - node.children = Array(); - node.childrenData = childrenData; - node.depth = po.depth + 1; - node.relpath = po.relpath; - node.isLast = lastNode; - - node.li = document.createElement("li"); - po.getChildrenUL().appendChild(node.li); - node.parentNode = po; - - node.itemDiv = document.createElement("div"); - node.itemDiv.className = "item"; - - node.labelSpan = document.createElement("span"); - node.labelSpan.className = "label"; - - createIndent(o,node.itemDiv,node,0); - node.itemDiv.appendChild(node.labelSpan); - node.li.appendChild(node.itemDiv); - - var a = document.createElement("a"); - node.labelSpan.appendChild(a); - node.label = document.createTextNode(text); - node.expanded = false; - a.appendChild(node.label); - if (link) { - var url; - if (link.substring(0,1)=='^') { - url = link.substring(1); - link = url; - } else { - url = node.relpath+link; - } - a.className = stripPath(link.replace('#',':')); - if (link.indexOf('#')!=-1) { - var aname = '#'+link.split('#')[1]; - var srcPage = stripPath(pathName()); - var targetPage = stripPath(link.split('#')[0]); - a.href = srcPage!=targetPage ? url : "javascript:void(0)"; - a.onclick = function(){ - storeLink(link); - if (!$(a).parent().parent().hasClass('selected')) - { - $('.item').removeClass('selected'); - $('.item').removeAttr('id'); - $(a).parent().parent().addClass('selected'); - $(a).parent().parent().attr('id','selected'); - } - var anchor = $(aname); - gotoAnchor(anchor,aname,true); - }; - } else { - a.href = url; - a.onclick = function() { storeLink(link); } - } - } else { - if (childrenData != null) - { - a.className = "nolink"; - a.href = "javascript:void(0)"; - a.onclick = node.expandToggle.onclick; - } - } - - node.childrenUL = null; - node.getChildrenUL = function() { - if (!node.childrenUL) { - node.childrenUL = document.createElement("ul"); - node.childrenUL.className = "children_ul"; - node.childrenUL.style.display = "none"; - node.li.appendChild(node.childrenUL); - } - return node.childrenUL; - }; - - return node; -} - -function showRoot() -{ - var headerHeight = $("#top").height(); - var footerHeight = $("#nav-path").height(); - var windowHeight = $(window).height() - headerHeight - footerHeight; - (function (){ // retry until we can scroll to the selected item - try { - var navtree=$('#nav-tree'); - navtree.scrollTo('#selected',100,{offset:-windowHeight/2}); - } catch (err) { - setTimeout(arguments.callee, 0); - } - })(); -} - -function expandNode(o, node, imm, showRoot) -{ - if (node.childrenData && !node.expanded) { - if (typeof(node.childrenData)==='string') { - var varName = node.childrenData; - getScript(node.relpath+varName,function(){ - node.childrenData = getData(varName); - expandNode(o, node, imm, showRoot); - }, showRoot); - } else { - if (!node.childrenVisited) { - getNode(o, node); - } - $(node.getChildrenUL()).slideDown("fast"); - node.plus_img.innerHTML = arrowDown; - node.expanded = true; - } - } -} - -function glowEffect(n,duration) -{ - n.addClass('glow').delay(duration).queue(function(next){ - $(this).removeClass('glow');next(); - }); -} - -function highlightAnchor() -{ - var aname = hashUrl(); - var anchor = $(aname); - if (anchor.parent().attr('class')=='memItemLeft'){ - var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); - glowEffect(rows.children(),300); // member without details - } else if (anchor.parent().attr('class')=='fieldname'){ - glowEffect(anchor.parent().parent(),1000); // enum value - } else if (anchor.parent().attr('class')=='fieldtype'){ - glowEffect(anchor.parent().parent(),1000); // struct field - } else if (anchor.parent().is(":header")) { - glowEffect(anchor.parent(),1000); // section header - } else { - glowEffect(anchor.next(),1000); // normal member - } -} - -function selectAndHighlight(hash,n) -{ - var a; - if (hash) { - var link=stripPath(pathName())+':'+hash.substring(1); - a=$('.item a[class$="'+link+'"]'); - } - if (a && a.length) { - a.parent().parent().addClass('selected'); - a.parent().parent().attr('id','selected'); - highlightAnchor(); - } else if (n) { - $(n.itemDiv).addClass('selected'); - $(n.itemDiv).attr('id','selected'); - } - if ($('#nav-tree-contents .item:first').hasClass('selected')) { - $('#nav-sync').css('top','30px'); - } else { - $('#nav-sync').css('top','5px'); - } - showRoot(); -} - -function showNode(o, node, index, hash) -{ - if (node && node.childrenData) { - if (typeof(node.childrenData)==='string') { - var varName = node.childrenData; - getScript(node.relpath+varName,function(){ - node.childrenData = getData(varName); - showNode(o,node,index,hash); - },true); - } else { - if (!node.childrenVisited) { - getNode(o, node); - } - $(node.getChildrenUL()).css({'display':'block'}); - node.plus_img.innerHTML = arrowDown; - node.expanded = true; - var n = node.children[o.breadcrumbs[index]]; - if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); - else hash=''; - } - if (hash.match(/^#l\d+$/)) { - var anchor=$('a[name='+hash.substring(1)+']'); - glowEffect(anchor.parent(),1000); // line number - hash=''; // strip line number anchors - } - var url=root+hash; - var i=-1; - while (NAVTREEINDEX[i+1]<=url) i++; - if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index - if (navTreeSubIndices[i]) { - gotoNode(o,i,root,hash,relpath) - } else { - getScript(relpath+'navtreeindex'+i,function(){ - navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); - if (navTreeSubIndices[i]) { - gotoNode(o,i,root,hash,relpath); - } - },true); - } -} - -function showSyncOff(n,relpath) -{ - n.html(''); -} - -function showSyncOn(n,relpath) -{ - n.html(''); -} - -function toggleSyncButton(relpath) -{ - var navSync = $('#nav-sync'); - if (navSync.hasClass('sync')) { - navSync.removeClass('sync'); - showSyncOff(navSync,relpath); - storeLink(stripPath2(pathName())+hashUrl()); - } else { - navSync.addClass('sync'); - showSyncOn(navSync,relpath); - deleteLink(); - } -} - -var loadTriggered = false; -var readyTriggered = false; -var loadObject,loadToRoot,loadUrl,loadRelPath; - -$(window).on('load',function(){ - if (readyTriggered) { // ready first - navTo(loadObject,loadToRoot,loadUrl,loadRelPath); - showRoot(); - } - loadTriggered=true; -}); - -function initNavTree(toroot,relpath) -{ - var o = new Object(); - o.toroot = toroot; - o.node = new Object(); - o.node.li = document.getElementById("nav-tree-contents"); - o.node.childrenData = NAVTREE; - o.node.children = new Array(); - o.node.childrenUL = document.createElement("ul"); - o.node.getChildrenUL = function() { return o.node.childrenUL; }; - o.node.li.appendChild(o.node.childrenUL); - o.node.depth = 0; - o.node.relpath = relpath; - o.node.expanded = false; - o.node.isLast = true; - o.node.plus_img = document.createElement("span"); - o.node.plus_img.className = 'arrow'; - o.node.plus_img.innerHTML = arrowRight; - - if (localStorageSupported()) { - var navSync = $('#nav-sync'); - if (cachedLink()) { - showSyncOff(navSync,relpath); - navSync.removeClass('sync'); - } else { - showSyncOn(navSync,relpath); - } - navSync.click(function(){ toggleSyncButton(relpath); }); - } - - if (loadTriggered) { // load before ready - navTo(o,toroot,hashUrl(),relpath); - showRoot(); - } else { // ready before load - loadObject = o; - loadToRoot = toroot; - loadUrl = hashUrl(); - loadRelPath = relpath; - readyTriggered=true; - } - - $(window).bind('hashchange', function(){ - if (window.location.hash && window.location.hash.length>1){ - var a; - if ($(location).attr('hash')){ - var clslink=stripPath(pathName())+':'+hashValue(); - a=$('.item a[class$="'+clslink.replace(/1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM - - - - - - -Project 2022: src/options.c File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    options.c File Reference
    -
    -
    -
    #include <ctype.h>
    -#include <stdio.h>
    -#include <stdlib.h>
    -#include <unistd.h>
    -#include "../include/struct.h"
    -
    -Include dependency graph for options.c:
    -
    -
    - -
    -
    - - - - - - - - -

    -Functions

    void help (void)
     
    void initOptions (opt *options)
     
    void options (int argc, char **argv, opt *options)
     Cette fonction gère les options mises en argument. More...
     
    -

    Function Documentation

    - -

    ◆ help()

    - -
    -
    - - - - - - - - -
    void help (void )
    -
    -
    7  {
    -
    8  printf("\n**********************************************************************************************************\n");
    -
    9  printf("i option (followed by a path) : path of the file you want to parse [csv or binary]\n");
    -
    10  printf("c option (followed by a path) : path of the file where you want to save your gender correspondance table (if use of csv file)\n");
    -
    11  printf("r option (followed by a path) : path of the file from where you want to load your gender correspondance table (if use of binary file)\n");
    -
    12  printf("o option (followed by a path) : path of the file where you save the binary version of your input [binary]\n");
    -
    13  printf("t option (followed by a path) : path of the file saving the minimum panning tree informations\n");
    -
    14  printf("l option (followed by a positive int) : maximum distance allowed betwween your trees [meters]\n");
    -
    15  printf("s option (no arguments) : to get statistics on the tree\n");
    -
    16  printf("f option (followed by 4 positives int) : x minimum X1, y minimum Y1,x maximum X2, y maximum Y2 [°]\n");
    -
    17  printf("g option (followed by a string) : to get a mimimum spanning tree only considering this genus\n");
    -
    18  printf("h option (followed by an positive int) : to get a mimimum spanning tree only considering this height [meters]\n");
    -
    19  printf("**********************************************************************************************************\n");
    -
    20 }
    -
    -
    -
    - -

    ◆ initOptions()

    - -
    -
    - - - - - - - - -
    void initOptions (optoptions)
    -
    -
    22  {
    -
    23  options->in_path = NULL; //ok
    -
    24  options->out_path = NULL; //ok
    -
    25  options->span_tree_path = NULL; //ok
    -
    26  options->limit_value = NULL;
    -
    27  options->stat = 0;
    -
    28  options->location = NULL; //ok
    -
    29  options->genus = NULL; //ok
    -
    30  options->height = NULL; //ok
    -
    31  options->conserve = NULL; //ok
    -
    32  options->recharge = NULL; //ok
    -
    33  options->help = 0; //ok
    -
    34 
    -
    35 }
    -
    -
    -
    - -

    ◆ options()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void options (int argc,
    char ** argv,
    optoptions 
    )
    -
    - -

    Cette fonction gère les options mises en argument.

    -
    Parameters
    - - - - -
    argcnombre d'arguments
    argvliste des différentes chaînes de caractères écrites en arguments
    optionspointeur vers une structure stockant chaque option mise en argument
    -
    -
    -
    37  {
    -
    38 
    - -
    40  int c;
    -
    41  while ((c = getopt (argc, argv, "i:o:t:l:sf:g:h:c:r:a")) != -1)
    -
    42  switch (c) {
    -
    43  case 'i':
    -
    44  options->in_path = optarg;
    -
    45  break;
    -
    46  case 'o':
    -
    47  options->out_path = optarg;
    -
    48  break;
    -
    49  case 't':
    -
    50  options->span_tree_path = optarg;
    -
    51  break;
    -
    52  case 'f':
    -
    53  options->limit_value = optarg;
    -
    54  if(atoi(options->limit_value) <= 0) {fprintf(stderr,"The limit %d must be a positive value",atoi(options->limit_value)); help(); exit(1);}
    -
    55  break;
    -
    56  case 's':
    -
    57  options->stat= 1;
    -
    58  break;
    -
    59  case 'l':
    -
    60  options->location = optarg;
    -
    61  break;
    -
    62  case 'g':
    -
    63  options->genus = optarg;
    -
    64  break;
    -
    65  case 'h':
    -
    66  options->height = optarg;
    -
    67  if(atoi(options->height) <= 0) {fprintf(stderr,"Th height %d must be a positive value",atoi(options->height)); help(); exit(1);}
    -
    68  break;
    -
    69  case 'c':
    -
    70  options->conserve = optarg;
    -
    71  break;
    -
    72  case 'r':
    -
    73  options->recharge = optarg;
    -
    74  break;
    -
    75  case 'a':
    -
    76  options->help = 1;
    -
    77  help();
    -
    78  break;
    -
    79 
    -
    80  case '?':
    -
    81 
    -
    82  if (optopt == 'i' || optopt == 'o'|| optopt == 't' || optopt == 'l' || optopt == 'f' || optopt == 'g' || optopt == 'h'){
    -
    83  fprintf (stderr, "Option -%c requires an argument.\n", optopt);
    -
    84  help();
    -
    85  exit(2);
    -
    86 
    -
    87  }else if (isprint (optopt)){
    -
    88  fprintf (stderr, "Unknown option -%c.\n", optopt);
    -
    89  exit(3);
    -
    90 
    -
    91  }else{
    -
    92  fprintf (stderr,"Unknown option character `\\x%x'.\n", optopt);
    -
    93  exit(3);
    -
    94  }
    -
    95 
    -
    96 
    -
    97  default:
    -
    98  abort ();
    -
    99  }
    -
    100 
    -
    101 
    -
    102 }
    -
    -
    -
    -
    -
    -
    void options(int argc, char **argv, opt *options)
    Cette fonction gère les options mises en argument.
    Definition: options.c:37
    -
    void help(void)
    Definition: options.c:7
    -
    void initOptions(opt *options)
    Definition: options.c:22
    - - - - diff --git a/docs/html/options_8c.js b/docs/html/options_8c.js deleted file mode 100644 index 426fca6..0000000 --- a/docs/html/options_8c.js +++ /dev/null @@ -1,6 +0,0 @@ -var options_8c = -[ - [ "help", "options_8c.html#a0bed8474bd33a912769360766f6b10d4", null ], - [ "initOptions", "options_8c.html#a6dc7b40134f3b10f300db7e031fcb942", null ], - [ "options", "options_8c.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5", null ] -]; \ No newline at end of file diff --git a/docs/html/options_8c__incl.dot b/docs/html/options_8c__incl.dot deleted file mode 100644 index 36a07d6..0000000 --- a/docs/html/options_8c__incl.dot +++ /dev/null @@ -1,21 +0,0 @@ -digraph "src/options.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="ctype.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="../include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node7 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/options_8h.html b/docs/html/options_8h.html deleted file mode 100644 index a93bbec..0000000 --- a/docs/html/options_8h.html +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - -Project 2022: include/options.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    options.h File Reference
    -
    -
    -
    #include "struct.h"
    -
    -Include dependency graph for options.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - - -

    -Functions

    void options (int argc, char **argv, opt *options)
     Cette fonction gère les options mises en argument. More...
     
    -

    Function Documentation

    - -

    ◆ options()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void options (int argc,
    char ** argv,
    optoptions 
    )
    -
    - -

    Cette fonction gère les options mises en argument.

    -
    Parameters
    - - - - -
    argcnombre d'arguments
    argvliste des différentes chaînes de caractères écrites en arguments
    optionspointeur vers une structure stockant chaque option mise en argument
    -
    -
    -
    37  {
    -
    38 
    - -
    40  int c;
    -
    41  while ((c = getopt (argc, argv, "i:o:t:l:sf:g:h:c:r:a")) != -1)
    -
    42  switch (c) {
    -
    43  case 'i':
    -
    44  options->in_path = optarg;
    -
    45  break;
    -
    46  case 'o':
    -
    47  options->out_path = optarg;
    -
    48  break;
    -
    49  case 't':
    -
    50  options->span_tree_path = optarg;
    -
    51  break;
    -
    52  case 'f':
    -
    53  options->limit_value = optarg;
    -
    54  if(atoi(options->limit_value) <= 0) {fprintf(stderr,"The limit %d must be a positive value",atoi(options->limit_value)); help(); exit(1);}
    -
    55  break;
    -
    56  case 's':
    -
    57  options->stat= 1;
    -
    58  break;
    -
    59  case 'l':
    -
    60  options->location = optarg;
    -
    61  break;
    -
    62  case 'g':
    -
    63  options->genus = optarg;
    -
    64  break;
    -
    65  case 'h':
    -
    66  options->height = optarg;
    -
    67  if(atoi(options->height) <= 0) {fprintf(stderr,"Th height %d must be a positive value",atoi(options->height)); help(); exit(1);}
    -
    68  break;
    -
    69  case 'c':
    -
    70  options->conserve = optarg;
    -
    71  break;
    -
    72  case 'r':
    -
    73  options->recharge = optarg;
    -
    74  break;
    -
    75  case 'a':
    -
    76  options->help = 1;
    -
    77  help();
    -
    78  break;
    -
    79 
    -
    80  case '?':
    -
    81 
    -
    82  if (optopt == 'i' || optopt == 'o'|| optopt == 't' || optopt == 'l' || optopt == 'f' || optopt == 'g' || optopt == 'h'){
    -
    83  fprintf (stderr, "Option -%c requires an argument.\n", optopt);
    -
    84  help();
    -
    85  exit(2);
    -
    86 
    -
    87  }else if (isprint (optopt)){
    -
    88  fprintf (stderr, "Unknown option -%c.\n", optopt);
    -
    89  exit(3);
    -
    90 
    -
    91  }else{
    -
    92  fprintf (stderr,"Unknown option character `\\x%x'.\n", optopt);
    -
    93  exit(3);
    -
    94  }
    -
    95 
    -
    96 
    -
    97  default:
    -
    98  abort ();
    -
    99  }
    -
    100 
    -
    101 
    -
    102 }
    -
    -
    -
    -
    -
    -
    void options(int argc, char **argv, opt *options)
    Cette fonction gère les options mises en argument.
    Definition: options.c:37
    -
    void help(void)
    Definition: options.c:7
    -
    void initOptions(opt *options)
    Definition: options.c:22
    - - - - diff --git a/docs/html/options_8h.js b/docs/html/options_8h.js deleted file mode 100644 index 6fb43de..0000000 --- a/docs/html/options_8h.js +++ /dev/null @@ -1,4 +0,0 @@ -var options_8h = -[ - [ "options", "options_8h.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5", null ] -]; \ No newline at end of file diff --git a/docs/html/options_8h__dep__incl.dot b/docs/html/options_8h__dep__incl.dot deleted file mode 100644 index 22390c6..0000000 --- a/docs/html/options_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/options.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/html/options_8h__incl.dot b/docs/html/options_8h__incl.dot deleted file mode 100644 index 88a349e..0000000 --- a/docs/html/options_8h__incl.dot +++ /dev/null @@ -1,14 +0,0 @@ -digraph "include/options.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/options_8h_source.html b/docs/html/options_8h_source.html deleted file mode 100644 index 3527e86..0000000 --- a/docs/html/options_8h_source.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -Project 2022: include/options.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    options.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 
    -
    3 #include "struct.h"
    -
    4 
    -
    13 void options(int argc, char ** argv, opt * options);
    -
    -
    -
    void options(int argc, char **argv, opt *options)
    Cette fonction gère les options mises en argument.
    Definition: options.c:37
    -
    gestion des options en argument
    Definition: struct.h:31
    - - - - - diff --git a/docs/html/parse_8c.html b/docs/html/parse_8c.html deleted file mode 100644 index 1bfea9f..0000000 --- a/docs/html/parse_8c.html +++ /dev/null @@ -1,1029 +0,0 @@ - - - - - - - -Project 2022: src/parse.c File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    parse.c File Reference
    -
    -
    -
    #include <math.h>
    -#include <stdio.h>
    -#include <stdlib.h>
    -#include <string.h>
    -#include <unistd.h>
    -#include <signal.h>
    -#include "../include/parse.h"
    -#include "../include/struct.h"
    -#include "../include/manageSIGINT.h"
    -#include "../include/display.h"
    -
    -Include dependency graph for parse.c:
    -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Functions

    int genusKnown (char *genus, char *id, tab_genus *tab_corres)
     Cette fonction vérifie si le genre donné en argument est connu ou non. More...
     
    void genusId (char *genus, char *id, tab_genus *tab_corres)
     Cette fonction associe à genre un identifiant stocké dans *id. More...
     
    void getGenus (char *line, tree *tree, tab_genus *tab_corres)
     Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre pointé par tree et l'ajoute à tab_corres si non connu. More...
     
    void getHeight (char *line, tree *tree)
     Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé par tree. More...
     
    void getposX (char *line, tree *tree)
     Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc.x de l'arbre pointé par tree. More...
     
    void getposY (char *line, tree *tree)
     Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc.y de l'arbre pointé par tree. More...
     
    void parseFile (char *file, tree *forest, size_t numberoflines, tab_genus *tab)
     Cette fonction trie des données utiles d'un fichier csv. More...
     
    void binaryFile (tree *forest, size_t size, char *save)
     Cette fonction met les informations d'un arbre dans un fichier binaire. More...
     
    void parseFromBinaryFile (char *file, tree *forest, size_t numberoflines)
     Cette fonction trie des données utiles d'un fichier binaire. More...
     
    void SaveStructGenus (opt handlingOptions, tab_genus tab)
     Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char) More...
     
    int isBinary (char *file)
     Cette fonction vérifie si le fichier est un fichier binaire ou non. More...
     
    void writeEdges (edge *MST, size_t size, opt handlingOptions)
     Cette fonction écrit dans un fichier l'arbre recouvrant minimal. More...
     
    void handlingFile (opt handlingOptions, tree *tree, int *nbTrees)
     Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc. More...
     
    -

    Function Documentation

    - -

    ◆ binaryFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void binaryFile (treeforest,
    size_t size,
    char * save 
    )
    -
    - -

    Cette fonction met les informations d'un arbre dans un fichier binaire.

    -
    Parameters
    - - - - -
    structureliste de structures de tous les arbres pris en compte
    sizetaille totale du tableau
    savefichier dans lequel on sauvegarde les données de la structure
    -
    -
    -
    170  {
    -
    171 
    -
    172  sigset_t masked;
    -
    173  sigset_t old;
    -
    174  sigset_t pending;
    -
    175  struct sigaction ignore;
    -
    176 
    -
    177  sigIntitialise(&masked,&old);
    -
    178 
    -
    179  FILE* out = fopen(save, "wb");
    -
    180  if (out == NULL){
    -
    181  fprintf(stderr, "Unable to open the file in binaryFile %s\n", save);
    -
    182  exit(16);
    -
    183  }
    -
    184 
    -
    185  int nbTrees = size - 1;
    -
    186  fwrite(&nbTrees, sizeof(nbTrees), 1, out);
    -
    187 
    -
    188  char * header = "NICOLASETINES";
    -
    189 
    -
    190  if(fwrite(header, 13, 1, out)!=1){ exit(51); }
    -
    191 
    -
    192 
    -
    193  for (size_t i = 0; i<size -1; i++){
    -
    194  if(fwrite(&forest[i], sizeof(forest[i]), 1, out)!=1){ exit(51); }
    -
    195  }
    -
    196 
    -
    197  sigHandle(&ignore,&pending,&old);
    -
    198 
    -
    199  printf("Conversion to binary format ended succesfully\n");
    -
    200  if(fclose(out) != 0) {exit(17);}
    -
    201 
    -
    202 }
    -
    -
    -
    - -

    ◆ genusId()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void genusId (char * genus,
    char * id,
    tab_genustab_corres 
    )
    -
    - -

    Cette fonction associe à genre un identifiant stocké dans *id.

    -
    Parameters
    - - - - -
    genusgenre (string)
    idpointeur vers id (short)
    tab_correstableau de paires genre/id correspondant des genres déjà connus
    -
    -
    -
    22  {
    -
    23 
    -
    24  int isInTab = genusKnown(genus,id,tab_corres);
    -
    25 
    -
    26  if(isInTab == 0){
    -
    27  tab_corres->size+= 1;
    -
    28  tab_corres->genuses[tab_corres->size-1].id = tab_corres->size - 1;
    -
    29  *id = tab_corres->size - 1;;
    -
    30  strcpy(tab_corres->genuses[tab_corres->size-1].genus,genus);
    -
    31  }
    -
    32 }
    -
    -
    -
    - -

    ◆ genusKnown()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    int genusKnown (char * genus,
    char * id,
    tab_genustab_corres 
    )
    -
    - -

    Cette fonction vérifie si le genre donné en argument est connu ou non.

    -
    Parameters
    - - - - -
    genusgenre de l'arbre considéré (string)
    idpointeur vers l'identifiant id (char), on lui affecte l'id correspondant au genre obtenu dans tab_corres, on ne fait rien si genre pas dans tab_corres
    tab_correstableau de paires genre/id correspondant des genres déjà connus
    -
    -
    -
    Returns
    renvoie 1 si le genre est connu et affecte l'id correspond, renvoie 0 sinon
    -
    14  {
    -
    15 
    -
    16  for(int i=0;i<tab_corres->size;i++){
    -
    17  if(strcmp(genus,tab_corres->genuses[i].genus) == 0){ *id = tab_corres->genuses[i].id; return 1;}
    -
    18  }
    -
    19  return 0;
    -
    20 }
    -
    -
    -
    - -

    ◆ getGenus()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void getGenus (char * line,
    treetree,
    tab_genustab_corres 
    )
    -
    - -

    Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre pointé par tree et l'ajoute à tab_corres si non connu.

    -
    Parameters
    - - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    tab_correstableau des correspondances entre genre et identifiant attribué
    -
    -
    -
    34  {
    -
    35  int cursor = 0;
    -
    36  int count = 0;
    -
    37  int count_semi_colon = 0;
    -
    38 
    -
    39  char * genustree = malloc(30);
    -
    40  if(genustree == NULL) { exit(15); }
    -
    41 
    -
    42  while (count_semi_colon != 9){
    -
    43  if (line[cursor] == ';') { count_semi_colon++; }
    -
    44  cursor++;
    -
    45  }
    -
    46 
    -
    47  while (line[cursor] != ';'){
    -
    48  genustree[count] = line[cursor];
    -
    49  count++;
    -
    50  cursor++;
    -
    51  }
    -
    52  genustree[count] = '\0';
    -
    53 
    -
    54  char id;
    -
    55  genusId(genustree,&id,tab_corres);
    -
    56  tree->genus = id;
    -
    57 
    -
    58  free(genustree);
    -
    59 }
    -
    -
    -
    - -

    ◆ getHeight()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getHeight (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    61  {
    -
    62  int cursor = 0;
    -
    63  int count = 0;
    -
    64  int count_semi_colon = 0;
    -
    65 
    -
    66  char * height_tree = malloc(5);
    -
    67  if(height_tree == NULL) { exit(15); }
    -
    68 
    -
    69  while (count_semi_colon != 13){
    -
    70  if (line[cursor] == ';') { count_semi_colon++; }
    -
    71  cursor++;
    -
    72  }
    -
    73 
    -
    74  while (line[cursor] != ';' && count < 4){
    -
    75  height_tree[count] = line[cursor];
    -
    76  count++;
    -
    77  cursor++;
    -
    78  }
    -
    79  height_tree[count] = '\0';
    -
    80 
    -
    81  tree->height = (short)atoi(height_tree);
    -
    82  free(height_tree);
    -
    83 }
    -
    -
    -
    - -

    ◆ getposX()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getposX (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc.x de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    85  {
    -
    86  int cursor = 0;
    -
    87  int count = 0;
    -
    88  int count_semi_colon = 0;
    -
    89  char * posx = malloc(25);
    -
    90  if(posx == NULL) { exit(15); }
    -
    91 
    -
    92  while (count_semi_colon != 16){
    -
    93  if (line[cursor] == ';') { count_semi_colon++; }
    -
    94  cursor++;
    -
    95  }
    -
    96 
    -
    97  while (line[cursor] != ','){
    -
    98  posx[count] = line[cursor];
    -
    99  count++;
    -
    100  cursor++;
    -
    101  }
    -
    102  posx[count] = '\0';
    -
    103 
    -
    104  tree->geoloc.x = atof(posx);
    -
    105  free(posx);
    -
    106 }
    -
    -
    -
    - -

    ◆ getposY()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getposY (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc.y de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    108  {
    -
    109  int cursor = 0;
    -
    110  int count = 0;
    -
    111  int count_semi_colon = 0;
    -
    112 
    -
    113  char * posy = malloc(25);
    -
    114  if(posy == NULL) { exit(15); }
    -
    115 
    -
    116  while (count_semi_colon != 15){
    -
    117  if (line[cursor] == ';') { count_semi_colon++; }
    -
    118  cursor++;
    -
    119  }
    -
    120 
    -
    121  while (line[cursor] != ','){ cursor++; }
    -
    122  cursor++;
    -
    123 
    -
    124  while (line[cursor] != '\n' && count<18){
    -
    125  posy[count] = line[cursor];
    -
    126  count++;
    -
    127  cursor++;
    -
    128  }
    -
    129  posy[count] = '\0';
    -
    130 
    -
    131  tree->geoloc.y = atof(posy);
    -
    132  free(posy);
    -
    133 }
    -
    -
    -
    - -

    ◆ handlingFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void handlingFile (opt handlingOptions,
    treetree,
    int * nbTrees 
    )
    -
    - -

    Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc.

    -
    Parameters
    - - - -
    gestionOptionsoptions entrées en ligne de commande
    treetableau où sont stockées les informations sur les arbres après le parsage
    -
    -
    -
    294  {
    -
    295 
    -
    296  if(handlingOptions.in_path == NULL) {printf("input path needed.\n");exit(1);}
    -
    297  if(handlingOptions.out_path == NULL) {printf("output path needed.\n");exit(1);}
    -
    298 
    -
    299 
    -
    300  tab_genus tab = {.size=0};
    -
    301 
    -
    302  int size=0;
    -
    303  char line[1000];
    -
    304 
    -
    305  FILE * in = fopen(handlingOptions.in_path,"r");
    -
    306  if(in == NULL) {
    -
    307  fprintf(stderr, "Unable to open the file in binaryFile %s\n", handlingOptions.in_path);
    -
    308  exit(16);
    -
    309  }
    -
    310 
    -
    311  while(fgets(line,1000,in) != NULL){ size ++; }
    -
    312 
    -
    313 
    -
    314  if(isBinary(handlingOptions.in_path) == 0){
    -
    315 
    -
    316  if(handlingOptions.conserve == NULL){ printf("A path to save the gender correspondance table is needed with -c (to get more help : -a)\n"); exit(1);}
    -
    317  parseFile(handlingOptions.in_path,tree,size,&tab);
    -
    318  binaryFile(tree,size,handlingOptions.out_path);
    -
    319  SaveStructGenus(handlingOptions,tab);
    -
    320  *nbTrees=size -1;
    -
    321 
    -
    322  }else{
    -
    323  if(handlingOptions.recharge == NULL){ printf("A path to load the gender correspondance table is needed with -r (to get more help : -a)\n"); exit(1);}
    -
    324  parseFromBinaryFile(handlingOptions.in_path,tree,isBinary(handlingOptions.in_path));
    -
    325  *nbTrees=isBinary(handlingOptions.in_path);
    -
    326  }
    -
    327 
    -
    328 
    -
    329  if(fclose(in) != 0 ){ exit(17); }
    -
    330 
    -
    331 }
    -
    -
    -
    - -

    ◆ isBinary()

    - -
    -
    - - - - - - - - -
    int isBinary (char * file)
    -
    - -

    Cette fonction vérifie si le fichier est un fichier binaire ou non.

    -
    Parameters
    - - -
    filechemin vers le fichier binaire ou non
    -
    -
    -
    Returns
    renvoie 0 si le fichier n'est pas binaire, le nombre d'arbres sinon
    -
    250  {
    -
    251 
    -
    252  FILE * in = fopen(file,"r");
    -
    253  if(in == NULL){
    -
    254  fprintf(stderr, "Unable to open the file in binaryFile %s\n", file);
    -
    255  exit(16);
    -
    256  }
    -
    257 
    -
    258  int size;
    -
    259  if(fread(&size,sizeof(size),1,in) != 1) { exit(52); }
    -
    260 
    -
    261  char line[13];
    -
    262  if(fread(line,13,1,in) != 1) { exit(52); }
    -
    263  line[13] = 0;
    -
    264 
    -
    265  if(strcmp(line,"NICOLASETINES") == 0) { return size;}
    -
    266 
    -
    267  if(fclose(in) != 0) { exit(17); }
    -
    268  return 0;
    -
    269 }
    -
    -
    -
    - -

    ◆ parseFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void parseFile (char * file,
    treeforest,
    size_t numberoflines,
    tab_genustab 
    )
    -
    - -

    Cette fonction trie des données utiles d'un fichier csv.

    -
    Parameters
    - - - - -
    filefichier que l'on va trier
    forestpointure vers la structure dans lequel on va stocker les données utiles
    numberoflinesnombre total de lignes du fichier
    -
    -
    -
    136  {
    -
    137 
    -
    138  printf("Parsing csv file\n");
    -
    139 
    -
    140  FILE* in = fopen(file, "r");
    -
    141  if (in == NULL){
    -
    142  fprintf(stderr, "Unable to open the file in parseFile %s\n", file);
    -
    143  exit(16);
    -
    144  }
    -
    145 
    -
    146  char * line = malloc(500*sizeof(char));
    -
    147  if(line == NULL) { exit(15); }
    -
    148 
    -
    149  size_t line_number = 0;
    -
    150 
    -
    151  if(fgets(line, 500, in) == NULL) { exit(50); } //on écrase la première ligne
    -
    152 
    -
    153 
    -
    154  while ( line_number < numberoflines - 1){ //pour chaque ligne donc chaque arbre
    -
    155  if(fgets(line, 500, in) == NULL) { exit(50); }
    -
    156 
    -
    157  getGenus(line, &forest[line_number],tab);
    -
    158  getHeight(line, &forest[line_number]);
    -
    159  getposX(line, &forest[line_number]);
    -
    160  getposY(line, &forest[line_number]);
    -
    161  line_number++;
    -
    162  }
    -
    163 
    -
    164  free(line);
    -
    165  if(fclose(in) != 0) {exit(17);}
    -
    166  printf("Data has been succesfully read\n");
    -
    167  return;
    -
    168 }
    -
    -
    -
    - -

    ◆ parseFromBinaryFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void parseFromBinaryFile (char * file,
    treeforest,
    size_t numberoflines 
    )
    -
    - -

    Cette fonction trie des données utiles d'un fichier binaire.

    -
    Parameters
    - - - - -
    filefichier que l'on va trier
    forestpointure vers la structure dans lequel on va stocker les données utiles
    numberoflinesnombre total de lignes du fichier
    -
    -
    -
    204  {
    -
    205 
    -
    206  printf("Parsing binary file\n");
    -
    207 
    -
    208  FILE* in = fopen(file, "rb");
    -
    209  if(in == NULL) {
    -
    210  fprintf(stderr, "Unable to open the file in binaryFile %s\n", file);
    -
    211  exit(16);
    -
    212  }
    -
    213 
    -
    214  char lineIgnore[sizeof(int)];
    -
    215  if(fread(lineIgnore, sizeof(int), 1, in) != 1) { exit(52);}
    -
    216 
    -
    217  char lineIgnore2[13];
    -
    218  if(fread(lineIgnore2, 13, 1, in) != 1) { exit(52);}
    -
    219 
    -
    220  int i=0;
    -
    221  size_t nbBlocks=0;
    -
    222 
    -
    223  while(nbBlocks != numberoflines){
    -
    224 
    -
    225  if(fread(&(forest[i]), sizeof(forest[i]), 1, in) != 1) {exit(52);}
    -
    226  i++;
    -
    227  nbBlocks++;
    -
    228  }
    -
    229 
    -
    230  printf("Data was succesfully read from BinaryFile\n");
    -
    231 }
    -
    -
    -
    - -

    ◆ SaveStructGenus()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void SaveStructGenus (opt handlingOptions,
    tab_genus tab 
    )
    -
    - -

    Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char)

    -
    Parameters
    - - -
    tabtableau de correspondance
    -
    -
    -
    233  {
    -
    234 
    -
    235  FILE * saveStruct = fopen(handlingOptions.conserve,"w");
    -
    236  if(saveStruct == NULL){
    -
    237  fprintf(stderr, "Unable to open the file in SaveStructGenus %s\n", handlingOptions.conserve);
    -
    238  exit(16);
    -
    239  }
    -
    240 
    -
    241  for(int i=0;i<tab.size;i++){
    -
    242  fprintf(saveStruct,"%d;",tab.genuses[i].id);
    -
    243  fprintf(saveStruct,"%s\n",tab.genuses[i].genus);
    -
    244  }
    -
    245 
    -
    246  if(fclose(saveStruct) != 0){ exit(52); }
    -
    247 
    -
    248 }
    -
    -
    -
    - -

    ◆ writeEdges()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void writeEdges (edgeMST,
    size_t size,
    opt handlingOptions 
    )
    -
    - -

    Cette fonction écrit dans un fichier l'arbre recouvrant minimal.

    -
    Parameters
    - - - - -
    fileLe fichier dans lequel on écrit
    arbreL'arbre recouvrant minimal
    sizeSa taille
    -
    -
    -
    271  {
    -
    272 
    -
    273  if(handlingOptions.span_tree_path == NULL){ return; }
    -
    274 
    -
    275  FILE* out = fopen(handlingOptions.span_tree_path, "w");
    -
    276  if (out == NULL){
    -
    277  fprintf(stderr, "Unable to open %s in function writeEdges\n", handlingOptions.span_tree_path);
    -
    278  exit(16);
    -
    279  }
    -
    280 
    -
    281 
    -
    282  size_t nbTrees = size;
    -
    283  fwrite(&nbTrees,sizeof(size_t),1,out);
    -
    284 
    -
    285  for (size_t i = 0; i<size; i++){
    -
    286  fwrite(&MST[i],sizeof(MST[i]),1,out);
    -
    287  }
    -
    288 
    -
    289 
    -
    290  if(fclose(out) != 0) { exit(17); }
    -
    291 
    -
    292 }
    -
    -
    -
    -
    -
    -
    void SaveStructGenus(opt handlingOptions, tab_genus tab)
    Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char)
    Definition: parse.c:233
    -
    void getGenus(char *line, tree *tree, tab_genus *tab_corres)
    Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre po...
    Definition: parse.c:34
    -
    void getposY(char *line, tree *tree)
    Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:108
    -
    void genusId(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction associe à genre un identifiant stocké dans *id.
    Definition: parse.c:22
    -
    double y
    longitude position arbre (en degré)
    Definition: struct.h:12
    -
    short height
    hauteur de l'arbre
    Definition: struct.h:24
    -
    int isBinary(char *file)
    Cette fonction vérifie si le fichier est un fichier binaire ou non.
    Definition: parse.c:250
    -
    char genus[30]
    genre de l'arbre (string)
    Definition: struct.h:53
    -
    position geoloc
    struture correspondant à la position de l'arbre
    Definition: struct.h:20
    -
    char * recharge
    Definition: struct.h:43
    -
    void getHeight(char *line, tree *tree)
    Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé p...
    Definition: parse.c:61
    -
    char * in_path
    Definition: struct.h:35
    -
    double x
    latitude position arbre (en degré)
    Definition: struct.h:10
    -
    char id
    identifiant associé
    Definition: struct.h:55
    -
    void sigIntitialise(sigset_t *masked, sigset_t *old)
    Definition: manageSIGINT.c:8
    -
    void parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab)
    Cette fonction trie des données utiles d'un fichier csv.
    Definition: parse.c:136
    -
    char * conserve
    Definition: struct.h:42
    -
    void getposX(char *line, tree *tree)
    Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:85
    -
    void sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old)
    Definition: manageSIGINT.c:18
    -
    void parseFromBinaryFile(char *file, tree *forest, size_t numberoflines)
    Cette fonction trie des données utiles d'un fichier binaire.
    Definition: parse.c:204
    -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    structure de tableau et taille associée
    Definition: struct.h:62
    -
    short genus
    genre de l'arbre
    Definition: struct.h:22
    -
    corres_genus genuses[255]
    tableau de paires genre/id correspondant
    Definition: struct.h:64
    -
    int size
    nombre d'éléments dans le tableau
    Definition: struct.h:66
    -
    int genusKnown(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction vérifie si le genre donné en argument est connu ou non.
    Definition: parse.c:14
    -
    char * out_path
    Definition: struct.h:36
    -
    char * span_tree_path
    Definition: struct.h:37
    -
    void binaryFile(tree *forest, size_t size, char *save)
    Cette fonction met les informations d'un arbre dans un fichier binaire.
    Definition: parse.c:170
    - - - - diff --git a/docs/html/parse_8c.js b/docs/html/parse_8c.js deleted file mode 100644 index 01deb02..0000000 --- a/docs/html/parse_8c.js +++ /dev/null @@ -1,16 +0,0 @@ -var parse_8c = -[ - [ "binaryFile", "parse_8c.html#a804efe18fb42cbe887070b71bd2c38e7", null ], - [ "genusId", "parse_8c.html#aaf08245af6f91198270cda1527fe2c48", null ], - [ "genusKnown", "parse_8c.html#aa3bd640fa9b5fbfc5044816386f4c3ef", null ], - [ "getGenus", "parse_8c.html#ad21e256a75b8dce5308d0b0f28fdafca", null ], - [ "getHeight", "parse_8c.html#a5fb5ed49c482a810f59417be3722f925", null ], - [ "getposX", "parse_8c.html#ab40ea2e8015fc77963bedc0451ab2aca", null ], - [ "getposY", "parse_8c.html#ad39ea3cbbd1c031f8d819ce901826f65", null ], - [ "handlingFile", "parse_8c.html#abd3676c711ff2728e5acc162628c39bb", null ], - [ "isBinary", "parse_8c.html#add2cd715c4e73ccf6075a10ab07657c2", null ], - [ "parseFile", "parse_8c.html#aff72575cf07dce9f7cc0c26a8bd96c1f", null ], - [ "parseFromBinaryFile", "parse_8c.html#af8c350631bff16c2c20835214dbc02e8", null ], - [ "SaveStructGenus", "parse_8c.html#a44d8d667643a4dbc6772c861947f630d", null ], - [ "writeEdges", "parse_8c.html#ae17e8d9b38ac4864828eb54b4d916a0f", null ] -]; \ No newline at end of file diff --git a/docs/html/parse_8c__incl.dot b/docs/html/parse_8c__incl.dot deleted file mode 100644 index 59d3148..0000000 --- a/docs/html/parse_8c__incl.dot +++ /dev/null @@ -1,39 +0,0 @@ -digraph "src/parse.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="string.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node8 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node10 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [label="../include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8h.html",tooltip=" "]; - Node11 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node12 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node12 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 -> Node13 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/parse_8h.html b/docs/html/parse_8h.html deleted file mode 100644 index 0238455..0000000 --- a/docs/html/parse_8h.html +++ /dev/null @@ -1,1029 +0,0 @@ - - - - - - - -Project 2022: include/parse.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    parse.h File Reference
    -
    -
    -
    #include "struct.h"
    -#include <stdio.h>
    -
    -Include dependency graph for parse.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Functions

    int genusKnown (char *genus, char *id, tab_genus *tab_corres)
     Cette fonction vérifie si le genre donné en argument est connu ou non. More...
     
    void genusId (char *genus, char *id, tab_genus *tab_corres)
     Cette fonction associe à genre un identifiant stocké dans *id. More...
     
    void getGenus (char *line, tree *tree, tab_genus *tab_corres)
     Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre pointé par tree et l'ajoute à tab_corres si non connu. More...
     
    void getHeight (char *line, tree *tree)
     Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé par tree. More...
     
    void getposX (char *line, tree *tree)
     Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc.x de l'arbre pointé par tree. More...
     
    void getposY (char *line, tree *tree)
     Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc.y de l'arbre pointé par tree. More...
     
    void parseFile (char *file, tree *forest, size_t numberoflines, tab_genus *tab)
     Cette fonction trie des données utiles d'un fichier csv. More...
     
    void binaryFile (tree *forest, size_t size, char *save)
     Cette fonction met les informations d'un arbre dans un fichier binaire. More...
     
    void parseFromBinaryFile (char *file, tree *forest, size_t numberoflines)
     Cette fonction trie des données utiles d'un fichier binaire. More...
     
    void SaveStructGenus (opt handlingOptions, tab_genus tab)
     Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char) More...
     
    int isBinary (char *file)
     Cette fonction vérifie si le fichier est un fichier binaire ou non. More...
     
    void handlingFile (opt handlingOptions, tree *tree, int *nbTrees)
     Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc. More...
     
    void writeEdges (edge *MST, size_t size, opt handlingOptions)
     Cette fonction écrit dans un fichier l'arbre recouvrant minimal. More...
     
    -

    Function Documentation

    - -

    ◆ binaryFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void binaryFile (treeforest,
    size_t size,
    char * save 
    )
    -
    - -

    Cette fonction met les informations d'un arbre dans un fichier binaire.

    -
    Parameters
    - - - - -
    structureliste de structures de tous les arbres pris en compte
    sizetaille totale du tableau
    savefichier dans lequel on sauvegarde les données de la structure
    -
    -
    -
    170  {
    -
    171 
    -
    172  sigset_t masked;
    -
    173  sigset_t old;
    -
    174  sigset_t pending;
    -
    175  struct sigaction ignore;
    -
    176 
    -
    177  sigIntitialise(&masked,&old);
    -
    178 
    -
    179  FILE* out = fopen(save, "wb");
    -
    180  if (out == NULL){
    -
    181  fprintf(stderr, "Unable to open the file in binaryFile %s\n", save);
    -
    182  exit(16);
    -
    183  }
    -
    184 
    -
    185  int nbTrees = size - 1;
    -
    186  fwrite(&nbTrees, sizeof(nbTrees), 1, out);
    -
    187 
    -
    188  char * header = "NICOLASETINES";
    -
    189 
    -
    190  if(fwrite(header, 13, 1, out)!=1){ exit(51); }
    -
    191 
    -
    192 
    -
    193  for (size_t i = 0; i<size -1; i++){
    -
    194  if(fwrite(&forest[i], sizeof(forest[i]), 1, out)!=1){ exit(51); }
    -
    195  }
    -
    196 
    -
    197  sigHandle(&ignore,&pending,&old);
    -
    198 
    -
    199  printf("Conversion to binary format ended succesfully\n");
    -
    200  if(fclose(out) != 0) {exit(17);}
    -
    201 
    -
    202 }
    -
    -
    -
    - -

    ◆ genusId()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void genusId (char * genus,
    char * id,
    tab_genustab_corres 
    )
    -
    - -

    Cette fonction associe à genre un identifiant stocké dans *id.

    -
    Parameters
    - - - - -
    genusgenre (string)
    idpointeur vers id (short)
    tab_correstableau de paires genre/id correspondant des genres déjà connus
    -
    -
    -
    22  {
    -
    23 
    -
    24  int isInTab = genusKnown(genus,id,tab_corres);
    -
    25 
    -
    26  if(isInTab == 0){
    -
    27  tab_corres->size+= 1;
    -
    28  tab_corres->genuses[tab_corres->size-1].id = tab_corres->size - 1;
    -
    29  *id = tab_corres->size - 1;;
    -
    30  strcpy(tab_corres->genuses[tab_corres->size-1].genus,genus);
    -
    31  }
    -
    32 }
    -
    -
    -
    - -

    ◆ genusKnown()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    int genusKnown (char * genus,
    char * id,
    tab_genustab_corres 
    )
    -
    - -

    Cette fonction vérifie si le genre donné en argument est connu ou non.

    -
    Parameters
    - - - - -
    genusgenre de l'arbre considéré (string)
    idpointeur vers l'identifiant id (char), on lui affecte l'id correspondant au genre obtenu dans tab_corres, on ne fait rien si genre pas dans tab_corres
    tab_correstableau de paires genre/id correspondant des genres déjà connus
    -
    -
    -
    Returns
    renvoie 1 si le genre est connu et affecte l'id correspond, renvoie 0 sinon
    -
    14  {
    -
    15 
    -
    16  for(int i=0;i<tab_corres->size;i++){
    -
    17  if(strcmp(genus,tab_corres->genuses[i].genus) == 0){ *id = tab_corres->genuses[i].id; return 1;}
    -
    18  }
    -
    19  return 0;
    -
    20 }
    -
    -
    -
    - -

    ◆ getGenus()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void getGenus (char * line,
    treetree,
    tab_genustab_corres 
    )
    -
    - -

    Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre pointé par tree et l'ajoute à tab_corres si non connu.

    -
    Parameters
    - - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    tab_correstableau des correspondances entre genre et identifiant attribué
    -
    -
    -
    34  {
    -
    35  int cursor = 0;
    -
    36  int count = 0;
    -
    37  int count_semi_colon = 0;
    -
    38 
    -
    39  char * genustree = malloc(30);
    -
    40  if(genustree == NULL) { exit(15); }
    -
    41 
    -
    42  while (count_semi_colon != 9){
    -
    43  if (line[cursor] == ';') { count_semi_colon++; }
    -
    44  cursor++;
    -
    45  }
    -
    46 
    -
    47  while (line[cursor] != ';'){
    -
    48  genustree[count] = line[cursor];
    -
    49  count++;
    -
    50  cursor++;
    -
    51  }
    -
    52  genustree[count] = '\0';
    -
    53 
    -
    54  char id;
    -
    55  genusId(genustree,&id,tab_corres);
    -
    56  tree->genus = id;
    -
    57 
    -
    58  free(genustree);
    -
    59 }
    -
    -
    -
    - -

    ◆ getHeight()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getHeight (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    61  {
    -
    62  int cursor = 0;
    -
    63  int count = 0;
    -
    64  int count_semi_colon = 0;
    -
    65 
    -
    66  char * height_tree = malloc(5);
    -
    67  if(height_tree == NULL) { exit(15); }
    -
    68 
    -
    69  while (count_semi_colon != 13){
    -
    70  if (line[cursor] == ';') { count_semi_colon++; }
    -
    71  cursor++;
    -
    72  }
    -
    73 
    -
    74  while (line[cursor] != ';' && count < 4){
    -
    75  height_tree[count] = line[cursor];
    -
    76  count++;
    -
    77  cursor++;
    -
    78  }
    -
    79  height_tree[count] = '\0';
    -
    80 
    -
    81  tree->height = (short)atoi(height_tree);
    -
    82  free(height_tree);
    -
    83 }
    -
    -
    -
    - -

    ◆ getposX()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getposX (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc.x de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    85  {
    -
    86  int cursor = 0;
    -
    87  int count = 0;
    -
    88  int count_semi_colon = 0;
    -
    89  char * posx = malloc(25);
    -
    90  if(posx == NULL) { exit(15); }
    -
    91 
    -
    92  while (count_semi_colon != 16){
    -
    93  if (line[cursor] == ';') { count_semi_colon++; }
    -
    94  cursor++;
    -
    95  }
    -
    96 
    -
    97  while (line[cursor] != ','){
    -
    98  posx[count] = line[cursor];
    -
    99  count++;
    -
    100  cursor++;
    -
    101  }
    -
    102  posx[count] = '\0';
    -
    103 
    -
    104  tree->geoloc.x = atof(posx);
    -
    105  free(posx);
    -
    106 }
    -
    -
    -
    - -

    ◆ getposY()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void getposY (char * line,
    treetree 
    )
    -
    - -

    Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc.y de l'arbre pointé par tree.

    -
    Parameters
    - - - -
    lineligne du fichier csv
    treepointeur vers une structure qui stocke les informations d'un arbre
    -
    -
    -
    108  {
    -
    109  int cursor = 0;
    -
    110  int count = 0;
    -
    111  int count_semi_colon = 0;
    -
    112 
    -
    113  char * posy = malloc(25);
    -
    114  if(posy == NULL) { exit(15); }
    -
    115 
    -
    116  while (count_semi_colon != 15){
    -
    117  if (line[cursor] == ';') { count_semi_colon++; }
    -
    118  cursor++;
    -
    119  }
    -
    120 
    -
    121  while (line[cursor] != ','){ cursor++; }
    -
    122  cursor++;
    -
    123 
    -
    124  while (line[cursor] != '\n' && count<18){
    -
    125  posy[count] = line[cursor];
    -
    126  count++;
    -
    127  cursor++;
    -
    128  }
    -
    129  posy[count] = '\0';
    -
    130 
    -
    131  tree->geoloc.y = atof(posy);
    -
    132  free(posy);
    -
    133 }
    -
    -
    -
    - -

    ◆ handlingFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void handlingFile (opt handlingOptions,
    treetree,
    int * nbTrees 
    )
    -
    - -

    Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc.

    -
    Parameters
    - - - -
    gestionOptionsoptions entrées en ligne de commande
    treetableau où sont stockées les informations sur les arbres après le parsage
    -
    -
    -
    294  {
    -
    295 
    -
    296  if(handlingOptions.in_path == NULL) {printf("input path needed.\n");exit(1);}
    -
    297  if(handlingOptions.out_path == NULL) {printf("output path needed.\n");exit(1);}
    -
    298 
    -
    299 
    -
    300  tab_genus tab = {.size=0};
    -
    301 
    -
    302  int size=0;
    -
    303  char line[1000];
    -
    304 
    -
    305  FILE * in = fopen(handlingOptions.in_path,"r");
    -
    306  if(in == NULL) {
    -
    307  fprintf(stderr, "Unable to open the file in binaryFile %s\n", handlingOptions.in_path);
    -
    308  exit(16);
    -
    309  }
    -
    310 
    -
    311  while(fgets(line,1000,in) != NULL){ size ++; }
    -
    312 
    -
    313 
    -
    314  if(isBinary(handlingOptions.in_path) == 0){
    -
    315 
    -
    316  if(handlingOptions.conserve == NULL){ printf("A path to save the gender correspondance table is needed with -c (to get more help : -a)\n"); exit(1);}
    -
    317  parseFile(handlingOptions.in_path,tree,size,&tab);
    -
    318  binaryFile(tree,size,handlingOptions.out_path);
    -
    319  SaveStructGenus(handlingOptions,tab);
    -
    320  *nbTrees=size -1;
    -
    321 
    -
    322  }else{
    -
    323  if(handlingOptions.recharge == NULL){ printf("A path to load the gender correspondance table is needed with -r (to get more help : -a)\n"); exit(1);}
    -
    324  parseFromBinaryFile(handlingOptions.in_path,tree,isBinary(handlingOptions.in_path));
    -
    325  *nbTrees=isBinary(handlingOptions.in_path);
    -
    326  }
    -
    327 
    -
    328 
    -
    329  if(fclose(in) != 0 ){ exit(17); }
    -
    330 
    -
    331 }
    -
    -
    -
    - -

    ◆ isBinary()

    - -
    -
    - - - - - - - - -
    int isBinary (char * file)
    -
    - -

    Cette fonction vérifie si le fichier est un fichier binaire ou non.

    -
    Parameters
    - - -
    filechemin vers le fichier binaire ou non
    -
    -
    -
    Returns
    renvoie 0 si le fichier n'est pas binaire, le nombre d'arbres sinon
    -
    250  {
    -
    251 
    -
    252  FILE * in = fopen(file,"r");
    -
    253  if(in == NULL){
    -
    254  fprintf(stderr, "Unable to open the file in binaryFile %s\n", file);
    -
    255  exit(16);
    -
    256  }
    -
    257 
    -
    258  int size;
    -
    259  if(fread(&size,sizeof(size),1,in) != 1) { exit(52); }
    -
    260 
    -
    261  char line[13];
    -
    262  if(fread(line,13,1,in) != 1) { exit(52); }
    -
    263  line[13] = 0;
    -
    264 
    -
    265  if(strcmp(line,"NICOLASETINES") == 0) { return size;}
    -
    266 
    -
    267  if(fclose(in) != 0) { exit(17); }
    -
    268  return 0;
    -
    269 }
    -
    -
    -
    - -

    ◆ parseFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void parseFile (char * file,
    treeforest,
    size_t numberoflines,
    tab_genustab 
    )
    -
    - -

    Cette fonction trie des données utiles d'un fichier csv.

    -
    Parameters
    - - - - -
    filefichier que l'on va trier
    forestpointure vers la structure dans lequel on va stocker les données utiles
    numberoflinesnombre total de lignes du fichier
    -
    -
    -
    136  {
    -
    137 
    -
    138  printf("Parsing csv file\n");
    -
    139 
    -
    140  FILE* in = fopen(file, "r");
    -
    141  if (in == NULL){
    -
    142  fprintf(stderr, "Unable to open the file in parseFile %s\n", file);
    -
    143  exit(16);
    -
    144  }
    -
    145 
    -
    146  char * line = malloc(500*sizeof(char));
    -
    147  if(line == NULL) { exit(15); }
    -
    148 
    -
    149  size_t line_number = 0;
    -
    150 
    -
    151  if(fgets(line, 500, in) == NULL) { exit(50); } //on écrase la première ligne
    -
    152 
    -
    153 
    -
    154  while ( line_number < numberoflines - 1){ //pour chaque ligne donc chaque arbre
    -
    155  if(fgets(line, 500, in) == NULL) { exit(50); }
    -
    156 
    -
    157  getGenus(line, &forest[line_number],tab);
    -
    158  getHeight(line, &forest[line_number]);
    -
    159  getposX(line, &forest[line_number]);
    -
    160  getposY(line, &forest[line_number]);
    -
    161  line_number++;
    -
    162  }
    -
    163 
    -
    164  free(line);
    -
    165  if(fclose(in) != 0) {exit(17);}
    -
    166  printf("Data has been succesfully read\n");
    -
    167  return;
    -
    168 }
    -
    -
    -
    - -

    ◆ parseFromBinaryFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void parseFromBinaryFile (char * file,
    treeforest,
    size_t numberoflines 
    )
    -
    - -

    Cette fonction trie des données utiles d'un fichier binaire.

    -
    Parameters
    - - - - -
    filefichier que l'on va trier
    forestpointure vers la structure dans lequel on va stocker les données utiles
    numberoflinesnombre total de lignes du fichier
    -
    -
    -
    204  {
    -
    205 
    -
    206  printf("Parsing binary file\n");
    -
    207 
    -
    208  FILE* in = fopen(file, "rb");
    -
    209  if(in == NULL) {
    -
    210  fprintf(stderr, "Unable to open the file in binaryFile %s\n", file);
    -
    211  exit(16);
    -
    212  }
    -
    213 
    -
    214  char lineIgnore[sizeof(int)];
    -
    215  if(fread(lineIgnore, sizeof(int), 1, in) != 1) { exit(52);}
    -
    216 
    -
    217  char lineIgnore2[13];
    -
    218  if(fread(lineIgnore2, 13, 1, in) != 1) { exit(52);}
    -
    219 
    -
    220  int i=0;
    -
    221  size_t nbBlocks=0;
    -
    222 
    -
    223  while(nbBlocks != numberoflines){
    -
    224 
    -
    225  if(fread(&(forest[i]), sizeof(forest[i]), 1, in) != 1) {exit(52);}
    -
    226  i++;
    -
    227  nbBlocks++;
    -
    228  }
    -
    229 
    -
    230  printf("Data was succesfully read from BinaryFile\n");
    -
    231 }
    -
    -
    -
    - -

    ◆ SaveStructGenus()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void SaveStructGenus (opt handlingOptions,
    tab_genus tab 
    )
    -
    - -

    Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char)

    -
    Parameters
    - - -
    tabtableau de correspondance
    -
    -
    -
    233  {
    -
    234 
    -
    235  FILE * saveStruct = fopen(handlingOptions.conserve,"w");
    -
    236  if(saveStruct == NULL){
    -
    237  fprintf(stderr, "Unable to open the file in SaveStructGenus %s\n", handlingOptions.conserve);
    -
    238  exit(16);
    -
    239  }
    -
    240 
    -
    241  for(int i=0;i<tab.size;i++){
    -
    242  fprintf(saveStruct,"%d;",tab.genuses[i].id);
    -
    243  fprintf(saveStruct,"%s\n",tab.genuses[i].genus);
    -
    244  }
    -
    245 
    -
    246  if(fclose(saveStruct) != 0){ exit(52); }
    -
    247 
    -
    248 }
    -
    -
    -
    - -

    ◆ writeEdges()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void writeEdges (edgeMST,
    size_t size,
    opt handlingOptions 
    )
    -
    - -

    Cette fonction écrit dans un fichier l'arbre recouvrant minimal.

    -
    Parameters
    - - - - -
    fileLe fichier dans lequel on écrit
    arbreL'arbre recouvrant minimal
    sizeSa taille
    -
    -
    -
    271  {
    -
    272 
    -
    273  if(handlingOptions.span_tree_path == NULL){ return; }
    -
    274 
    -
    275  FILE* out = fopen(handlingOptions.span_tree_path, "w");
    -
    276  if (out == NULL){
    -
    277  fprintf(stderr, "Unable to open %s in function writeEdges\n", handlingOptions.span_tree_path);
    -
    278  exit(16);
    -
    279  }
    -
    280 
    -
    281 
    -
    282  size_t nbTrees = size;
    -
    283  fwrite(&nbTrees,sizeof(size_t),1,out);
    -
    284 
    -
    285  for (size_t i = 0; i<size; i++){
    -
    286  fwrite(&MST[i],sizeof(MST[i]),1,out);
    -
    287  }
    -
    288 
    -
    289 
    -
    290  if(fclose(out) != 0) { exit(17); }
    -
    291 
    -
    292 }
    -
    -
    -
    -
    -
    -
    void SaveStructGenus(opt handlingOptions, tab_genus tab)
    Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char)
    Definition: parse.c:233
    -
    void getGenus(char *line, tree *tree, tab_genus *tab_corres)
    Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre po...
    Definition: parse.c:34
    -
    void getposY(char *line, tree *tree)
    Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:108
    -
    void genusId(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction associe à genre un identifiant stocké dans *id.
    Definition: parse.c:22
    -
    double y
    longitude position arbre (en degré)
    Definition: struct.h:12
    -
    short height
    hauteur de l'arbre
    Definition: struct.h:24
    -
    int isBinary(char *file)
    Cette fonction vérifie si le fichier est un fichier binaire ou non.
    Definition: parse.c:250
    -
    char genus[30]
    genre de l'arbre (string)
    Definition: struct.h:53
    -
    position geoloc
    struture correspondant à la position de l'arbre
    Definition: struct.h:20
    -
    char * recharge
    Definition: struct.h:43
    -
    void getHeight(char *line, tree *tree)
    Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé p...
    Definition: parse.c:61
    -
    char * in_path
    Definition: struct.h:35
    -
    double x
    latitude position arbre (en degré)
    Definition: struct.h:10
    -
    char id
    identifiant associé
    Definition: struct.h:55
    -
    void sigIntitialise(sigset_t *masked, sigset_t *old)
    Definition: manageSIGINT.c:8
    -
    void parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab)
    Cette fonction trie des données utiles d'un fichier csv.
    Definition: parse.c:136
    -
    char * conserve
    Definition: struct.h:42
    -
    void getposX(char *line, tree *tree)
    Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:85
    -
    void sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old)
    Definition: manageSIGINT.c:18
    -
    void parseFromBinaryFile(char *file, tree *forest, size_t numberoflines)
    Cette fonction trie des données utiles d'un fichier binaire.
    Definition: parse.c:204
    -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    structure de tableau et taille associée
    Definition: struct.h:62
    -
    short genus
    genre de l'arbre
    Definition: struct.h:22
    -
    corres_genus genuses[255]
    tableau de paires genre/id correspondant
    Definition: struct.h:64
    -
    int size
    nombre d'éléments dans le tableau
    Definition: struct.h:66
    -
    int genusKnown(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction vérifie si le genre donné en argument est connu ou non.
    Definition: parse.c:14
    -
    char * out_path
    Definition: struct.h:36
    -
    char * span_tree_path
    Definition: struct.h:37
    -
    void binaryFile(tree *forest, size_t size, char *save)
    Cette fonction met les informations d'un arbre dans un fichier binaire.
    Definition: parse.c:170
    - - - - diff --git a/docs/html/parse_8h.js b/docs/html/parse_8h.js deleted file mode 100644 index c74d3d7..0000000 --- a/docs/html/parse_8h.js +++ /dev/null @@ -1,16 +0,0 @@ -var parse_8h = -[ - [ "binaryFile", "parse_8h.html#a804efe18fb42cbe887070b71bd2c38e7", null ], - [ "genusId", "parse_8h.html#aaf08245af6f91198270cda1527fe2c48", null ], - [ "genusKnown", "parse_8h.html#aa3bd640fa9b5fbfc5044816386f4c3ef", null ], - [ "getGenus", "parse_8h.html#ad21e256a75b8dce5308d0b0f28fdafca", null ], - [ "getHeight", "parse_8h.html#a5fb5ed49c482a810f59417be3722f925", null ], - [ "getposX", "parse_8h.html#ab40ea2e8015fc77963bedc0451ab2aca", null ], - [ "getposY", "parse_8h.html#ad39ea3cbbd1c031f8d819ce901826f65", null ], - [ "handlingFile", "parse_8h.html#abd3676c711ff2728e5acc162628c39bb", null ], - [ "isBinary", "parse_8h.html#add2cd715c4e73ccf6075a10ab07657c2", null ], - [ "parseFile", "parse_8h.html#aff72575cf07dce9f7cc0c26a8bd96c1f", null ], - [ "parseFromBinaryFile", "parse_8h.html#af8c350631bff16c2c20835214dbc02e8", null ], - [ "SaveStructGenus", "parse_8h.html#a44d8d667643a4dbc6772c861947f630d", null ], - [ "writeEdges", "parse_8h.html#ae17e8d9b38ac4864828eb54b4d916a0f", null ] -]; \ No newline at end of file diff --git a/docs/html/parse_8h__dep__incl.dot b/docs/html/parse_8h__dep__incl.dot deleted file mode 100644 index 8384cec..0000000 --- a/docs/html/parse_8h__dep__incl.dot +++ /dev/null @@ -1,13 +0,0 @@ -digraph "include/parse.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; -} diff --git a/docs/html/parse_8h__incl.dot b/docs/html/parse_8h__incl.dot deleted file mode 100644 index d29088b..0000000 --- a/docs/html/parse_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/parse.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/parse_8h_source.html b/docs/html/parse_8h_source.html deleted file mode 100644 index 48a7ce9..0000000 --- a/docs/html/parse_8h_source.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - -Project 2022: include/parse.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    parse.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 #include "struct.h"
    -
    3 #include <stdio.h>
    -
    4 
    -
    5 
    -
    14 int genusKnown(char * genus, char * id, tab_genus * tab_corres);
    -
    15 
    -
    23 void genusId(char * genus, char * id, tab_genus * tab_corres);
    -
    24 
    -
    32 void getGenus(char* line, tree * tree, tab_genus * tab_corres);
    -
    33 
    -
    34 
    -
    42 void getHeight(char* line, tree * tree);
    -
    43 
    -
    51 void getposX(char* line, tree * tree);
    -
    52 
    -
    60 void getposY(char* line, tree * tree);
    -
    61 
    -
    62 
    -
    71 void parseFile(char* file, tree * forest, size_t numberoflines, tab_genus* tab);
    -
    72 
    -
    81 void binaryFile(tree * forest, size_t size, char * save);
    -
    82 
    -
    91 void parseFromBinaryFile(char * file, tree * forest, size_t numberoflines);
    -
    92 
    -
    93 
    -
    99 void SaveStructGenus(opt handlingOptions,tab_genus tab);
    -
    100 
    -
    107 int isBinary(char * file);
    -
    108 
    -
    115 void handlingFile(opt handlingOptions, tree * tree, int * nbTrees);
    -
    116 
    -
    117 
    -
    125 void writeEdges(edge * MST, size_t size, opt handlingOptions);
    -
    -
    -
    int genusKnown(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction vérifie si le genre donné en argument est connu ou non.
    Definition: parse.c:14
    -
    void getHeight(char *line, tree *tree)
    Récupère le champ Hauteur d'une ligne et stocke le résultat dans le champ hauteur de l'arbre pointé p...
    Definition: parse.c:61
    -
    void handlingFile(opt handlingOptions, tree *tree, int *nbTrees)
    Cette fonction gère l'ouverture des fichiers, le parsage, la sauvegarde de la structure etc.
    Definition: parse.c:294
    -
    void genusId(char *genus, char *id, tab_genus *tab_corres)
    Cette fonction associe à genre un identifiant stocké dans *id.
    Definition: parse.c:22
    -
    void parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab)
    Cette fonction trie des données utiles d'un fichier csv.
    Definition: parse.c:136
    -
    structure définissant une arête
    Definition: struct.h:75
    -
    void SaveStructGenus(opt handlingOptions, tab_genus tab)
    Cette fonction permet la sauvegarde de l'association d'un genre (char *) à un identifiant (char)
    Definition: parse.c:233
    -
    void getGenus(char *line, tree *tree, tab_genus *tab_corres)
    Récupère le champ Genre d'une ligne et stocke le résultat dans le champ genre (un char) de l'arbre po...
    Definition: parse.c:34
    -
    void writeEdges(edge *MST, size_t size, opt handlingOptions)
    Cette fonction écrit dans un fichier l'arbre recouvrant minimal.
    Definition: parse.c:271
    -
    gestion des options en argument
    Definition: struct.h:31
    -
    void parseFromBinaryFile(char *file, tree *forest, size_t numberoflines)
    Cette fonction trie des données utiles d'un fichier binaire.
    Definition: parse.c:204
    -
    size_t size
    Definition: array-list.c:8
    -
    void getposX(char *line, tree *tree)
    Récupère le champ PositionX d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:85
    -
    int isBinary(char *file)
    Cette fonction vérifie si le fichier est un fichier binaire ou non.
    Definition: parse.c:250
    - -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    structure de tableau et taille associée
    Definition: struct.h:62
    -
    void binaryFile(tree *forest, size_t size, char *save)
    Cette fonction met les informations d'un arbre dans un fichier binaire.
    Definition: parse.c:170
    -
    void getposY(char *line, tree *tree)
    Récupère le champ PositionY d'une ligne et stocke le résultat dans le champ geoloc....
    Definition: parse.c:108
    - - - - diff --git a/docs/html/pile_8c.html b/docs/html/pile_8c.html deleted file mode 100644 index d6abe53..0000000 --- a/docs/html/pile_8c.html +++ /dev/null @@ -1,271 +0,0 @@ - - - - - - - -Project 2022: src/pile.c File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    pile.c File Reference
    -
    -
    -
    #include "../include/pile.h"
    -#include <stdio.h>
    -#include "../include/array-list.h"
    -
    -Include dependency graph for pile.c:
    -
    -
    - -
    -
    - - - - - - - - - - - - - -

    -Functions

    pile_tpile_create (void)
     
    void * pop (pile_t *pile)
     
    int push (pile_t *pile, void *elm)
     
    int is_empty (pile_t *pile)
     
    void pile_free (pile_t *pile)
     
    size_t pile_size (pile_t *pile)
     
    -

    Function Documentation

    - -

    ◆ is_empty()

    - -
    -
    - - - - - - - - -
    int is_empty (pile_tpile)
    -
    -
    19  {
    -
    20  if (list_size(pile) == 0) return 1;
    -
    21  return 0;
    -
    22 }
    -
    -
    -
    - -

    ◆ pile_create()

    - -
    -
    - - - - - - - - -
    pile_t* pile_create (void )
    -
    -
    6  {
    -
    7  return list_create();
    -
    8 }
    -
    -
    -
    - -

    ◆ pile_free()

    - -
    -
    - - - - - - - - -
    void pile_free (pile_tpile)
    -
    -
    24  {
    -
    25  list_free2(pile);
    -
    26 }
    -
    -
    -
    - -

    ◆ pile_size()

    - -
    -
    - - - - - - - - -
    size_t pile_size (pile_tpile)
    -
    -
    28  {
    -
    29  return list_size(pile);
    -
    30 }
    -
    -
    -
    - -

    ◆ pop()

    - -
    -
    - - - - - - - - -
    void* pop (pile_tpile)
    -
    -
    10  {
    -
    11  return list_take(pile, list_size(pile) - 1);
    -
    12 }
    -
    -
    -
    - -

    ◆ push()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int push (pile_tpile,
    void * elm 
    )
    -
    -
    15  {
    -
    16  return list_append(pile, elm);
    -
    17 }
    -
    -
    -
    -
    -
    -
    size_t list_size(list_t *it)
    revoie la taille de la liste
    Definition: array-list.c:54
    -
    void * list_take(list_t *it, int pos)
    retourne l'élément à la position idc, puis enlève cet élément de la liste
    Definition: array-list.c:73
    -
    list_t * list_create(void)
    Crée une liste vide.
    Definition: array-list.c:11
    -
    void list_free2(list_t *it)
    Definition: array-list.c:98
    -
    int list_append(list_t *it, void *element_to_append)
    Ajoute un élément à la fin de la liste.
    Definition: array-list.c:27
    - - - - diff --git a/docs/html/pile_8c.js b/docs/html/pile_8c.js deleted file mode 100644 index bc6e2bb..0000000 --- a/docs/html/pile_8c.js +++ /dev/null @@ -1,9 +0,0 @@ -var pile_8c = -[ - [ "is_empty", "pile_8c.html#a361f0852eeeb982ab3cf2204a9bbfc80", null ], - [ "pile_create", "pile_8c.html#a2584fb19bd9f58c36b79a6887372689a", null ], - [ "pile_free", "pile_8c.html#a5f0083da3cda0f8b2d3556aab57f242a", null ], - [ "pile_size", "pile_8c.html#a6bf23b98322c92a2689636e4b08d90bc", null ], - [ "pop", "pile_8c.html#a9ddb46a3c3fceef9aa92f267cefd3825", null ], - [ "push", "pile_8c.html#aa06a1925e70cab6a8713eeb25430e74d", null ] -]; \ No newline at end of file diff --git a/docs/html/pile_8c__incl.dot b/docs/html/pile_8c__incl.dot deleted file mode 100644 index 72a6882..0000000 --- a/docs/html/pile_8c__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "src/pile.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/pile.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="../include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/pile_8h.html b/docs/html/pile_8h.html deleted file mode 100644 index c3c2a9b..0000000 --- a/docs/html/pile_8h.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - -Project 2022: include/pile.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    pile.h File Reference
    -
    -
    -
    #include <stdio.h>
    -
    -Include dependency graph for pile.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - -

    -Typedefs

    typedef struct list_t pile_t
     
    - - - - - - - - - - - - - -

    -Functions

    pile_tpile_create (void)
     
    void * pop (pile_t *pile)
     
    int push (pile_t *pile, void *elm)
     
    int is_empty (pile_t *pile)
     
    void pile_free (pile_t *pile)
     
    size_t pile_size (pile_t *pile)
     
    -

    Typedef Documentation

    - -

    ◆ pile_t

    - -
    -
    - - - - -
    typedef struct list_t pile_t
    -
    - -
    -
    -

    Function Documentation

    - -

    ◆ is_empty()

    - -
    -
    - - - - - - - - -
    int is_empty (pile_tpile)
    -
    -
    19  {
    -
    20  if (list_size(pile) == 0) return 1;
    -
    21  return 0;
    -
    22 }
    -
    -
    -
    - -

    ◆ pile_create()

    - -
    -
    - - - - - - - - -
    pile_t* pile_create (void )
    -
    -
    6  {
    -
    7  return list_create();
    -
    8 }
    -
    -
    -
    - -

    ◆ pile_free()

    - -
    -
    - - - - - - - - -
    void pile_free (pile_tpile)
    -
    -
    24  {
    -
    25  list_free2(pile);
    -
    26 }
    -
    -
    -
    - -

    ◆ pile_size()

    - -
    -
    - - - - - - - - -
    size_t pile_size (pile_tpile)
    -
    -
    28  {
    -
    29  return list_size(pile);
    -
    30 }
    -
    -
    -
    - -

    ◆ pop()

    - -
    -
    - - - - - - - - -
    void* pop (pile_tpile)
    -
    -
    10  {
    -
    11  return list_take(pile, list_size(pile) - 1);
    -
    12 }
    -
    -
    -
    - -

    ◆ push()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int push (pile_tpile,
    void * elm 
    )
    -
    -
    15  {
    -
    16  return list_append(pile, elm);
    -
    17 }
    -
    -
    -
    -
    -
    -
    size_t list_size(list_t *it)
    revoie la taille de la liste
    Definition: array-list.c:54
    -
    void * list_take(list_t *it, int pos)
    retourne l'élément à la position idc, puis enlève cet élément de la liste
    Definition: array-list.c:73
    -
    list_t * list_create(void)
    Crée une liste vide.
    Definition: array-list.c:11
    -
    void list_free2(list_t *it)
    Definition: array-list.c:98
    -
    int list_append(list_t *it, void *element_to_append)
    Ajoute un élément à la fin de la liste.
    Definition: array-list.c:27
    - - - - diff --git a/docs/html/pile_8h.js b/docs/html/pile_8h.js deleted file mode 100644 index e19fd65..0000000 --- a/docs/html/pile_8h.js +++ /dev/null @@ -1,10 +0,0 @@ -var pile_8h = -[ - [ "pile_t", "pile_8h.html#a5776697d3a095d7ec614876c2614510c", null ], - [ "is_empty", "pile_8h.html#a361f0852eeeb982ab3cf2204a9bbfc80", null ], - [ "pile_create", "pile_8h.html#a2584fb19bd9f58c36b79a6887372689a", null ], - [ "pile_free", "pile_8h.html#a5f0083da3cda0f8b2d3556aab57f242a", null ], - [ "pile_size", "pile_8h.html#a6bf23b98322c92a2689636e4b08d90bc", null ], - [ "pop", "pile_8h.html#a9ddb46a3c3fceef9aa92f267cefd3825", null ], - [ "push", "pile_8h.html#aa06a1925e70cab6a8713eeb25430e74d", null ] -]; \ No newline at end of file diff --git a/docs/html/pile_8h__dep__incl.dot b/docs/html/pile_8h__dep__incl.dot deleted file mode 100644 index 6cfcd0f..0000000 --- a/docs/html/pile_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/pile.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/pile.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/html/pile_8h__incl.dot b/docs/html/pile_8h__incl.dot deleted file mode 100644 index 20d35b7..0000000 --- a/docs/html/pile_8h__incl.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "include/pile.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/pile.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/pile_8h_source.html b/docs/html/pile_8h_source.html deleted file mode 100644 index 682d0df..0000000 --- a/docs/html/pile_8h_source.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - - -Project 2022: include/pile.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    pile.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 #include <stdio.h>
    -
    3 
    -
    4 typedef struct list_t pile_t;
    -
    5 
    -
    6 pile_t* pile_create(void);
    -
    7 
    -
    8 void* pop(pile_t* pile);
    -
    9 
    -
    10 int push(pile_t* pile, void* elm);
    -
    11 
    -
    12 int is_empty(pile_t* pile);
    -
    13 
    -
    14 void pile_free(pile_t* pile);
    -
    15 
    -
    16 size_t pile_size(pile_t* pile);
    -
    -
    -
    pile_t * pile_create(void)
    Definition: pile.c:6
    -
    int push(pile_t *pile, void *elm)
    Definition: pile.c:15
    -
    Definition: array-list.c:5
    -
    size_t pile_size(pile_t *pile)
    Definition: pile.c:28
    -
    int is_empty(pile_t *pile)
    Definition: pile.c:19
    -
    void * pop(pile_t *pile)
    Definition: pile.c:10
    -
    void pile_free(pile_t *pile)
    Definition: pile.c:24
    - - - - diff --git a/docs/html/resize.js b/docs/html/resize.js deleted file mode 100644 index a0bb5f4..0000000 --- a/docs/html/resize.js +++ /dev/null @@ -1,137 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function initResizable() -{ - var cookie_namespace = 'doxygen'; - var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight; - - function readCookie(cookie) - { - var myCookie = cookie_namespace+"_"+cookie+"="; - if (document.cookie) { - var index = document.cookie.indexOf(myCookie); - if (index != -1) { - var valStart = index + myCookie.length; - var valEnd = document.cookie.indexOf(";", valStart); - if (valEnd == -1) { - valEnd = document.cookie.length; - } - var val = document.cookie.substring(valStart, valEnd); - return val; - } - } - return 0; - } - - function writeCookie(cookie, val, expiration) - { - if (val==undefined) return; - if (expiration == null) { - var date = new Date(); - date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week - expiration = date.toGMTString(); - } - document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; - } - - function resizeWidth() - { - var windowWidth = $(window).width() + "px"; - var sidenavWidth = $(sidenav).outerWidth(); - content.css({marginLeft:parseInt(sidenavWidth)+"px"}); - writeCookie('width',sidenavWidth-barWidth, null); - } - - function restoreWidth(navWidth) - { - var windowWidth = $(window).width() + "px"; - content.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); - sidenav.css({width:navWidth + "px"}); - } - - function resizeHeight() - { - var headerHeight = header.outerHeight(); - var footerHeight = footer.outerHeight(); - var windowHeight = $(window).height() - headerHeight - footerHeight; - content.css({height:windowHeight + "px"}); - navtree.css({height:windowHeight + "px"}); - sidenav.css({height:windowHeight + "px"}); - var width=$(window).width(); - if (width!=collapsedWidth) { - if (width=desktop_vp) { - if (!collapsed) { - collapseExpand(); - } - } else if (width>desktop_vp && collapsedWidth0) { - restoreWidth(0); - collapsed=true; - } - else { - var width = readCookie('width'); - if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); } - collapsed=false; - } - } - - header = $("#top"); - sidenav = $("#side-nav"); - content = $("#doc-content"); - navtree = $("#nav-tree"); - footer = $("#nav-path"); - $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); - $(sidenav).resizable({ minWidth: 0 }); - $(window).resize(function() { resizeHeight(); }); - var device = navigator.userAgent.toLowerCase(); - var touch_device = device.match(/(iphone|ipod|ipad|android)/); - if (touch_device) { /* wider split bar for touch only devices */ - $(sidenav).css({ paddingRight:'20px' }); - $('.ui-resizable-e').css({ width:'20px' }); - $('#nav-sync').css({ right:'34px' }); - barWidth=20; - } - var width = readCookie('width'); - if (width) { restoreWidth(width); } else { resizeWidth(); } - resizeHeight(); - var url = location.href; - var i=url.indexOf("#"); - if (i>=0) window.location.hash=url.substr(i); - var _preventDefault = function(evt) { evt.preventDefault(); }; - $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); - $(".ui-resizable-handle").dblclick(collapseExpand); - $(window).on('load',resizeHeight); -} -/* @license-end */ diff --git a/docs/html/restrictiveOptions_8c.html b/docs/html/restrictiveOptions_8c.html deleted file mode 100644 index a64f65f..0000000 --- a/docs/html/restrictiveOptions_8c.html +++ /dev/null @@ -1,483 +0,0 @@ - - - - - - - -Project 2022: src/restrictiveOptions.c File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    restrictiveOptions.c File Reference
    -
    -
    -
    #include "../include/parse.h"
    -#include "../include/struct.h"
    -#include "../include/restrictiveOptions.h"
    -#include <math.h>
    -#include <stdio.h>
    -#include <stdlib.h>
    -#include <string.h>
    -
    -Include dependency graph for restrictiveOptions.c:
    -
    -
    - -
    -
    - - - - - - - - - - - - - - -

    -Functions

    int genderInSaveFile (opt options, char *id)
     
    int testGender (opt handlingOptions, tree tree)
     
    int testHeight (opt handlingOptions, tree tree)
     
    void separationLimit (opt handlingOptions, double *xmin, double *xmax, double *ymin, double *ymax)
     
    int testLimit (opt handlingOptions, tree tree)
     
    void handlingRestrictingOptions (opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection)
     Cette fonction met les arbres concernés par les options dans treesSelection. More...
     
    -

    Function Documentation

    - -

    ◆ genderInSaveFile()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int genderInSaveFile (opt options,
    char * id 
    )
    -
    -
    10  {
    -
    11 
    -
    12  char genus[100];
    -
    13  strcpy(genus,options.genus);
    -
    14 
    -
    15  FILE * saveStruct;
    -
    16  if(options.conserve != NULL) { saveStruct = fopen(options.conserve,"r");}
    -
    17  if(options.recharge != NULL) { saveStruct = fopen(options.recharge,"r");}
    -
    18 
    -
    19  char line[100];
    -
    20  char lineGenus[100];
    -
    21 
    -
    22 
    -
    23  while(fgets(line,100,saveStruct) != NULL){
    -
    24 
    -
    25  for(int k=0;k<97;k++){ lineGenus[k] = line[k+2]; if(line[k+2] == '\n') lineGenus[k]=0; }
    -
    26 
    -
    27  if(strcmp(lineGenus,genus) == 0){ *id = line[0]-48; return 1; }
    -
    28  }
    -
    29 
    -
    30  fclose(saveStruct);
    -
    31 
    -
    32  return 0;
    -
    33 }
    -
    -
    -
    - -

    ◆ handlingRestrictingOptions()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void handlingRestrictingOptions (opt handlingOptions,
    treetrees,
    treetreesSelection,
    int size,
    int * sizeSelection 
    )
    -
    - -

    Cette fonction met les arbres concernés par les options dans treesSelection.

    -
    Parameters
    - - - - - - -
    handlingOptionsoptions entrées en ligne de commande
    treestableau où sont stockées les informations sur les arbres
    treesSelectiontableau où sont stockées les informations sur les arbres après le tri selon les options
    sizetaille du tableau trees
    sizeSelectiontaille du tableau treesSelection
    -
    -
    -
    112  {
    -
    113 
    -
    114  int j=0;
    -
    115  int g;
    -
    116  int h;
    -
    117  int l;
    -
    118  for(int i=0;i<size;i++){
    -
    119 
    -
    120  g = testGender(handlingOptions, trees[i]);
    -
    121  h = testHeight(handlingOptions, trees[i]);
    -
    122  l = testLimit(handlingOptions, trees[i]);
    -
    123 
    -
    124  if(g && h && l){
    -
    125  treesSelection[j] = trees[i];
    -
    126  j++;
    -
    127  }
    -
    128  }
    -
    129 
    -
    130  *sizeSelection=j;
    -
    131 
    -
    132 }
    -
    -
    -
    - -

    ◆ separationLimit()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void separationLimit (opt handlingOptions,
    double * xmin,
    double * xmax,
    double * ymin,
    double * ymax 
    )
    -
    -
    60  {
    -
    61 
    -
    62  int count=0;
    -
    63  int n = strlen(handlingOptions.location);
    -
    64  char line[50];
    -
    65  int j=0;
    -
    66  for(int i=0;i<n;i++){
    -
    67 
    -
    68  if(handlingOptions.location[i] == ','){
    -
    69 
    -
    70  line[j]=0;
    -
    71  j=0;
    -
    72 
    -
    73  switch (count){
    -
    74  case 0:
    -
    75  *xmin=atof(line);
    -
    76  break;
    -
    77  case 1:
    -
    78  *ymin=atof(line);
    -
    79  break;
    -
    80  case 2:
    -
    81  *xmax=atof(line);
    -
    82  break;
    -
    83  }
    -
    84  count++;
    -
    85  }
    -
    86 
    -
    87  else{line[j]=handlingOptions.location[i];j++; }
    -
    88 
    -
    89  }
    -
    90  line[j]=0;
    -
    91  *ymax=atof(line);
    -
    92 }
    -
    -
    -
    - -

    ◆ testGender()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int testGender (opt handlingOptions,
    tree tree 
    )
    -
    -
    35  {
    -
    36 
    -
    37  if(handlingOptions.genus == NULL){ return 1;}
    -
    38  char id;
    -
    39  int g = genderInSaveFile(handlingOptions,&id);
    -
    40 
    -
    41  if(!g){ fprintf(stderr,"Gender %s not existing",handlingOptions.genus); exit(1);}
    -
    42 
    -
    43  if(tree.genus == id){ return 1;}
    -
    44 
    -
    45  return 0;
    -
    46 
    -
    47 
    -
    48 }
    -
    -
    -
    - -

    ◆ testHeight()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int testHeight (opt handlingOptions,
    tree tree 
    )
    -
    -
    50  {
    -
    51 
    -
    52 
    -
    53  if(handlingOptions.height == NULL){ return 1;}
    -
    54 
    -
    55  if(tree.height == atoi(handlingOptions.height)){return 1;}
    -
    56 
    -
    57  return 0;
    -
    58 }
    -
    -
    -
    - -

    ◆ testLimit()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int testLimit (opt handlingOptions,
    tree tree 
    )
    -
    -
    94  {
    -
    95 
    -
    96  if(handlingOptions.location == NULL){ return 1;}
    -
    97 
    -
    98  double xmin;
    -
    99  double xmax;
    -
    100  double ymin;
    -
    101  double ymax;
    -
    102  separationLimit(handlingOptions,&xmin,&xmax,&ymin,&ymax);
    -
    103 
    -
    104  //printf("%lf %lf %lf %lf\n",xmin,ymin,xmax,ymax);
    -
    105 
    -
    106  if(tree.geoloc.x >= xmin && tree.geoloc.x <= xmax && tree.geoloc.y >= ymin && tree.geoloc.y <= ymax ){return 1;}
    -
    107 
    -
    108  return 0;
    -
    109 
    -
    110 }
    -
    -
    -
    -
    -
    -
    double y
    longitude position arbre (en degré)
    Definition: struct.h:12
    -
    short height
    hauteur de l'arbre
    Definition: struct.h:24
    -
    void options(int argc, char **argv, opt *options)
    Cette fonction gère les options mises en argument.
    Definition: options.c:37
    -
    position geoloc
    struture correspondant à la position de l'arbre
    Definition: struct.h:20
    -
    int testGender(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:35
    -
    char * location
    Definition: struct.h:38
    -
    int testLimit(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:94
    -
    int genderInSaveFile(opt options, char *id)
    Definition: restrictiveOptions.c:10
    -
    double x
    latitude position arbre (en degré)
    Definition: struct.h:10
    -
    void separationLimit(opt handlingOptions, double *xmin, double *xmax, double *ymin, double *ymax)
    Definition: restrictiveOptions.c:60
    -
    int testHeight(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:50
    -
    char * genus
    Definition: struct.h:40
    -
    char * height
    Definition: struct.h:41
    -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    short genus
    genre de l'arbre
    Definition: struct.h:22
    - - - - diff --git a/docs/html/restrictiveOptions_8c.js b/docs/html/restrictiveOptions_8c.js deleted file mode 100644 index 2174852..0000000 --- a/docs/html/restrictiveOptions_8c.js +++ /dev/null @@ -1,9 +0,0 @@ -var restrictiveOptions_8c = -[ - [ "genderInSaveFile", "restrictiveOptions_8c.html#aa470cce4ddbf7858d0058c3e7b7296a2", null ], - [ "handlingRestrictingOptions", "restrictiveOptions_8c.html#af922efbacb29fb8a175816b5f164b9e3", null ], - [ "separationLimit", "restrictiveOptions_8c.html#a743c7bc20ae1c86834dbf0a416e7d4e5", null ], - [ "testGender", "restrictiveOptions_8c.html#ac9cde0dced41f1243007a33fadac488f", null ], - [ "testHeight", "restrictiveOptions_8c.html#aac8a6d6ce7b251e17aa43ef5c970fef7", null ], - [ "testLimit", "restrictiveOptions_8c.html#a242fad839b917348a5263beb3949864e", null ] -]; \ No newline at end of file diff --git a/docs/html/restrictiveOptions_8c__incl.dot b/docs/html/restrictiveOptions_8c__incl.dot deleted file mode 100644 index 3556a99..0000000 --- a/docs/html/restrictiveOptions_8c__incl.dot +++ /dev/null @@ -1,29 +0,0 @@ -digraph "src/restrictiveOptions.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="../include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="string.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/html/restrictiveOptions_8h.html b/docs/html/restrictiveOptions_8h.html deleted file mode 100644 index f9f190d..0000000 --- a/docs/html/restrictiveOptions_8h.html +++ /dev/null @@ -1,209 +0,0 @@ - - - - - - - -Project 2022: include/restrictiveOptions.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    restrictiveOptions.h File Reference
    -
    -
    -
    #include "struct.h"
    -#include <stdio.h>
    -
    -Include dependency graph for restrictiveOptions.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - - -

    -Functions

    void handlingRestrictingOptions (opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection)
     Cette fonction met les arbres concernés par les options dans treesSelection. More...
     
    -

    Function Documentation

    - -

    ◆ handlingRestrictingOptions()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void handlingRestrictingOptions (opt handlingOptions,
    treetrees,
    treetreesSelection,
    int size,
    int * sizeSelection 
    )
    -
    - -

    Cette fonction met les arbres concernés par les options dans treesSelection.

    -
    Parameters
    - - - - - - -
    handlingOptionsoptions entrées en ligne de commande
    treestableau où sont stockées les informations sur les arbres
    treesSelectiontableau où sont stockées les informations sur les arbres après le tri selon les options
    sizetaille du tableau trees
    sizeSelectiontaille du tableau treesSelection
    -
    -
    -
    112  {
    -
    113 
    -
    114  int j=0;
    -
    115  int g;
    -
    116  int h;
    -
    117  int l;
    -
    118  for(int i=0;i<size;i++){
    -
    119 
    -
    120  g = testGender(handlingOptions, trees[i]);
    -
    121  h = testHeight(handlingOptions, trees[i]);
    -
    122  l = testLimit(handlingOptions, trees[i]);
    -
    123 
    -
    124  if(g && h && l){
    -
    125  treesSelection[j] = trees[i];
    -
    126  j++;
    -
    127  }
    -
    128  }
    -
    129 
    -
    130  *sizeSelection=j;
    -
    131 
    -
    132 }
    -
    -
    -
    -
    -
    -
    int testGender(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:35
    -
    int testLimit(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:94
    -
    int testHeight(opt handlingOptions, tree tree)
    Definition: restrictiveOptions.c:50
    - - - - diff --git a/docs/html/restrictiveOptions_8h.js b/docs/html/restrictiveOptions_8h.js deleted file mode 100644 index bf055e3..0000000 --- a/docs/html/restrictiveOptions_8h.js +++ /dev/null @@ -1,4 +0,0 @@ -var restrictiveOptions_8h = -[ - [ "handlingRestrictingOptions", "restrictiveOptions_8h.html#af922efbacb29fb8a175816b5f164b9e3", null ] -]; \ No newline at end of file diff --git a/docs/html/restrictiveOptions_8h__dep__incl.dot b/docs/html/restrictiveOptions_8h__dep__incl.dot deleted file mode 100644 index 05c7870..0000000 --- a/docs/html/restrictiveOptions_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/restrictiveOptions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; -} diff --git a/docs/html/restrictiveOptions_8h__incl.dot b/docs/html/restrictiveOptions_8h__incl.dot deleted file mode 100644 index 1643126..0000000 --- a/docs/html/restrictiveOptions_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/restrictiveOptions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/restrictiveOptions_8h_source.html b/docs/html/restrictiveOptions_8h_source.html deleted file mode 100644 index 531cd44..0000000 --- a/docs/html/restrictiveOptions_8h_source.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -Project 2022: include/restrictiveOptions.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    restrictiveOptions.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 #include "struct.h"
    -
    3 #include <stdio.h>
    -
    4 
    -
    14 void handlingRestrictingOptions(opt handlingOptions, tree * trees, tree * treesSelection, int size, int * sizeSelection);
    -
    -
    -
    gestion des options en argument
    Definition: struct.h:31
    -
    size_t size
    Definition: array-list.c:8
    - -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    void handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection)
    Cette fonction met les arbres concernés par les options dans treesSelection.
    Definition: restrictiveOptions.c:112
    - - - - diff --git a/docs/html/search/all_0.html b/docs/html/search/all_0.html deleted file mode 100644 index 26dd244..0000000 --- a/docs/html/search/all_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js deleted file mode 100644 index cc5f7d0..0000000 --- a/docs/html/search/all_0.js +++ /dev/null @@ -1,10 +0,0 @@ -var searchData= -[ - ['addvertexes_0',['addVertexes',['../algo_8c.html#a0c4590f35ac72bce8e6e93c59b120e00',1,'algo.c']]], - ['algo_2ec_1',['algo.c',['../algo_8c.html',1,'']]], - ['algo_2eh_2',['algo.h',['../algo_8h.html',1,'']]], - ['allocated_3',['allocated',['../structlist__t.html#a545866c10437e674417eed908a43846a',1,'list_t']]], - ['arbres_2ec_4',['arbres.c',['../arbres_8c.html',1,'']]], - ['array_2dlist_2ec_5',['array-list.c',['../array-list_8c.html',1,'']]], - ['array_2dlist_2eh_6',['array-list.h',['../array-list_8h.html',1,'']]] -]; diff --git a/docs/html/search/all_1.html b/docs/html/search/all_1.html deleted file mode 100644 index 8eb215b..0000000 --- a/docs/html/search/all_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_1.js b/docs/html/search/all_1.js deleted file mode 100644 index 22a2e95..0000000 --- a/docs/html/search/all_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['binaryfile_7',['binaryFile',['../parse_8c.html#a804efe18fb42cbe887070b71bd2c38e7',1,'binaryFile(tree *forest, size_t size, char *save): parse.c'],['../parse_8h.html#a804efe18fb42cbe887070b71bd2c38e7',1,'binaryFile(tree *forest, size_t size, char *save): parse.c']]] -]; diff --git a/docs/html/search/all_10.html b/docs/html/search/all_10.html deleted file mode 100644 index 6fd3a4a..0000000 --- a/docs/html/search/all_10.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_10.js b/docs/html/search/all_10.js deleted file mode 100644 index 7280825..0000000 --- a/docs/html/search/all_10.js +++ /dev/null @@ -1,10 +0,0 @@ -var searchData= -[ - ['tab_5fgenus_113',['tab_genus',['../structtab__genus.html',1,'tab_genus'],['../struct_8h.html#a8cd1c3b0a4957b16fb034faed3fb5fe1',1,'tab_genus(): struct.h']]], - ['testgender_114',['testGender',['../restrictiveOptions_8c.html#ac9cde0dced41f1243007a33fadac488f',1,'restrictiveOptions.c']]], - ['testheight_115',['testHeight',['../restrictiveOptions_8c.html#aac8a6d6ce7b251e17aa43ef5c970fef7',1,'restrictiveOptions.c']]], - ['testlimit_116',['testLimit',['../restrictiveOptions_8c.html#a242fad839b917348a5263beb3949864e',1,'restrictiveOptions.c']]], - ['tree_117',['tree',['../structtree.html',1,'tree'],['../struct_8h.html#a434e35ec9d53f159cc82d020517a98bb',1,'tree(): struct.h']]], - ['tree1_118',['tree1',['../structedge.html#a691a39efbffc566e6d86d01c4858f54a',1,'edge::tree1()'],['../structedge2.html#ad708c186ae678c61094235cf16c5800a',1,'edge2::tree1()']]], - ['tree2_119',['tree2',['../structedge.html#ab7d029eeb2b522e8f81373450c476741',1,'edge::tree2()'],['../structedge2.html#a3155914d13a029d020cdbc431e345f2b',1,'edge2::tree2()']]] -]; diff --git a/docs/html/search/all_11.html b/docs/html/search/all_11.html deleted file mode 100644 index f78343b..0000000 --- a/docs/html/search/all_11.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_11.js b/docs/html/search/all_11.js deleted file mode 100644 index bd6feb3..0000000 --- a/docs/html/search/all_11.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['vertex_120',['vertex',['../structvertex.html',1,'vertex'],['../struct_8h.html#ad0f5923379e298b172ea5ab8ae5b0eeb',1,'vertex(): struct.h']]], - ['vertexdistmin_121',['vertexDistMin',['../algo_8c.html#ac12979f67142d15820bc04e3965f6076',1,'algo.c']]], - ['vertexmin_122',['vertexMin',['../structvertex.html#a02e22a2c9888862e832740689849d197',1,'vertex']]] -]; diff --git a/docs/html/search/all_12.html b/docs/html/search/all_12.html deleted file mode 100644 index dd9ff1d..0000000 --- a/docs/html/search/all_12.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_12.js b/docs/html/search/all_12.js deleted file mode 100644 index 38f49db..0000000 --- a/docs/html/search/all_12.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['weightminimumspanningtree_123',['weightMinimumSpanningTree',['../stat_8c.html#a4e0e5478beb77cde62d2536d5fbfe69d',1,'weightMinimumSpanningTree(edge *MST, size_t size): stat.c'],['../stat_8h.html#a4e0e5478beb77cde62d2536d5fbfe69d',1,'weightMinimumSpanningTree(edge *MST, size_t size): stat.c']]], - ['width_124',['WIDTH',['../display_8c.html#a241aeeb764887ae5e3de58b98f04b16d',1,'display.c']]], - ['writeedges_125',['writeEdges',['../parse_8c.html#ae17e8d9b38ac4864828eb54b4d916a0f',1,'writeEdges(edge *MST, size_t size, opt handlingOptions): parse.c'],['../parse_8h.html#ae17e8d9b38ac4864828eb54b4d916a0f',1,'writeEdges(edge *MST, size_t size, opt handlingOptions): parse.c']]] -]; diff --git a/docs/html/search/all_13.html b/docs/html/search/all_13.html deleted file mode 100644 index 2611a10..0000000 --- a/docs/html/search/all_13.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_13.js b/docs/html/search/all_13.js deleted file mode 100644 index 00739c0..0000000 --- a/docs/html/search/all_13.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['x_126',['x',['../structposition.html#a0ab4d1279ca59c4e71d543144a4ea98f',1,'position']]] -]; diff --git a/docs/html/search/all_14.html b/docs/html/search/all_14.html deleted file mode 100644 index 72d12e9..0000000 --- a/docs/html/search/all_14.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_14.js b/docs/html/search/all_14.js deleted file mode 100644 index 4b385a6..0000000 --- a/docs/html/search/all_14.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['y_127',['y',['../structposition.html#a4c8f3776329f75007608235aae679e8a',1,'position']]] -]; diff --git a/docs/html/search/all_2.html b/docs/html/search/all_2.html deleted file mode 100644 index b26d916..0000000 --- a/docs/html/search/all_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_2.js b/docs/html/search/all_2.js deleted file mode 100644 index 5b28f01..0000000 --- a/docs/html/search/all_2.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['conserve_8',['conserve',['../structopt.html#a57d1c1dc92ba99df66d0fd603189bae3',1,'opt']]], - ['copycomposant_9',['copyComposant',['../algo_8c.html#ad93045f895f3eff95932b687479497ee',1,'algo.c']]], - ['corres_5fgenus_10',['corres_genus',['../structcorres__genus.html',1,'corres_genus'],['../struct_8h.html#ad545d83bb2720eaacdc619c17ed9f735',1,'corres_genus(): struct.h']]], - ['create_5fsize_5ft_11',['create_size_t',['../array-list_8c.html#a7b8af2083784734274bbee9e5c67d34b',1,'create_size_t(size_t i): array-list.c'],['../array-list_8h.html#a7b8af2083784734274bbee9e5c67d34b',1,'create_size_t(size_t i): array-list.c']]] -]; diff --git a/docs/html/search/all_3.html b/docs/html/search/all_3.html deleted file mode 100644 index b61b96f..0000000 --- a/docs/html/search/all_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_3.js b/docs/html/search/all_3.js deleted file mode 100644 index f9b4f4f..0000000 --- a/docs/html/search/all_3.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['diametermst_12',['diameterMST',['../stat_8c.html#a3a4088f413e9af42108f6ae69216f437',1,'diameterMST(edge *MST, tree *forest, size_t size): stat.c'],['../stat_8h.html#a3a4088f413e9af42108f6ae69216f437',1,'diameterMST(edge *MST, tree *forest, size_t size): stat.c']]], - ['display_2ec_13',['display.c',['../display_8c.html',1,'']]], - ['display_2eh_14',['display.h',['../display_8h.html',1,'']]], - ['displaytrees_15',['displayTrees',['../display_8c.html#a6d1822b75d0e0ba6328174a5d84cb875',1,'displayTrees(edge *edgeList, size_t size, tree *forest): display.c'],['../display_8h.html#adb313f63bb0c4ad9ce73a49eb31e3992',1,'displayTrees(edge *listeAretes, size_t size, tree *structure): display.c']]], - ['distancetrees_16',['distanceTrees',['../fonctions_8c.html#a069ef6fd0a0890ba4f9548734804118f',1,'distanceTrees(tree *tree1, tree *tree2): fonctions.c'],['../fonctions_8h.html#a069ef6fd0a0890ba4f9548734804118f',1,'distanceTrees(tree *tree1, tree *tree2): fonctions.c']]], - ['distmin_17',['distMin',['../structvertex.html#a514cfdd1b334916366fb7c03241b6702',1,'vertex']]] -]; diff --git a/docs/html/search/all_4.html b/docs/html/search/all_4.html deleted file mode 100644 index 06de155..0000000 --- a/docs/html/search/all_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_4.js b/docs/html/search/all_4.js deleted file mode 100644 index 923b711..0000000 --- a/docs/html/search/all_4.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['edge_18',['edge',['../structedge.html',1,'edge'],['../struct_8h.html#a62e8ac20ad6459019691857781e5a4da',1,'edge(): struct.h']]], - ['edge2_19',['edge2',['../structedge2.html',1,'edge2'],['../struct_8h.html#a5dd23cff3c78c4d93323551348659bbe',1,'edge2(): struct.h']]], - ['element_20',['element',['../structlist__t.html#a50b00b979c754b66e735689d37b1fa4d',1,'list_t']]], - ['exentricityvertex_21',['exentricityVertex',['../stat_8c.html#a44114f31b939b70a07a9e7f31f0d5543',1,'stat.c']]] -]; diff --git a/docs/html/search/all_5.html b/docs/html/search/all_5.html deleted file mode 100644 index 2544c4e..0000000 --- a/docs/html/search/all_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_5.js b/docs/html/search/all_5.js deleted file mode 100644 index d235d56..0000000 --- a/docs/html/search/all_5.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['firstnothandledvertex_22',['firstNotHandledVertex',['../algo_8c.html#afda0b5b5cb8bd315ffe91b00cf20abdb',1,'algo.c']]], - ['fonctions_2ec_23',['fonctions.c',['../fonctions_8c.html',1,'']]], - ['fonctions_2eh_24',['fonctions.h',['../fonctions_8h.html',1,'']]], - ['freenode_25',['freeNode',['../stat_8c.html#a78e5c527c5555279fd636505eded53bd',1,'stat.c']]] -]; diff --git a/docs/html/search/all_6.html b/docs/html/search/all_6.html deleted file mode 100644 index 43f14ea..0000000 --- a/docs/html/search/all_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_6.js b/docs/html/search/all_6.js deleted file mode 100644 index 5ff9904..0000000 --- a/docs/html/search/all_6.js +++ /dev/null @@ -1,17 +0,0 @@ -var searchData= -[ - ['genderinsavefile_26',['genderInSaveFile',['../restrictiveOptions_8c.html#aa470cce4ddbf7858d0058c3e7b7296a2',1,'restrictiveOptions.c']]], - ['genus_27',['genus',['../structtree.html#a656022a4f0afcd69428a5b413333c906',1,'tree::genus()'],['../structopt.html#ab5b54f29a8bc5c4e1a2c84527aad8c00',1,'opt::genus()'],['../structcorres__genus.html#a55991b88972006dcf7c66a4fe81b2589',1,'corres_genus::genus()']]], - ['genuses_28',['genuses',['../structtab__genus.html#a3cd0ec1e14551ec94550d26be22a6b21',1,'tab_genus']]], - ['genusid_29',['genusId',['../parse_8c.html#aaf08245af6f91198270cda1527fe2c48',1,'genusId(char *genus, char *id, tab_genus *tab_corres): parse.c'],['../parse_8h.html#aaf08245af6f91198270cda1527fe2c48',1,'genusId(char *genus, char *id, tab_genus *tab_corres): parse.c']]], - ['genusknown_30',['genusKnown',['../parse_8c.html#aa3bd640fa9b5fbfc5044816386f4c3ef',1,'genusKnown(char *genus, char *id, tab_genus *tab_corres): parse.c'],['../parse_8h.html#aa3bd640fa9b5fbfc5044816386f4c3ef',1,'genusKnown(char *genus, char *id, tab_genus *tab_corres): parse.c']]], - ['geoloc_31',['geoloc',['../structtree.html#a298f78a3e0e132f7b8635cadc96727c7',1,'tree']]], - ['getextremum_32',['getExtremum',['../display_8c.html#ab7d67ad0a7206fc20171512033d3fb2e',1,'getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY): display.c'],['../display_8h.html#ab7d67ad0a7206fc20171512033d3fb2e',1,'getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY): display.c']]], - ['getforestmaxcomposante_33',['getForestMaxComposante',['../algo_8c.html#ab0c982f403cbd716f39ace419829a668',1,'getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize): algo.c'],['../algo_8h.html#ab0c982f403cbd716f39ace419829a668',1,'getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize): algo.c']]], - ['getgenus_34',['getGenus',['../parse_8c.html#ad21e256a75b8dce5308d0b0f28fdafca',1,'getGenus(char *line, tree *tree, tab_genus *tab_corres): parse.c'],['../parse_8h.html#ad21e256a75b8dce5308d0b0f28fdafca',1,'getGenus(char *line, tree *tree, tab_genus *tab_corres): parse.c']]], - ['getheight_35',['getHeight',['../parse_8c.html#a5fb5ed49c482a810f59417be3722f925',1,'getHeight(char *line, tree *tree): parse.c'],['../parse_8h.html#a5fb5ed49c482a810f59417be3722f925',1,'getHeight(char *line, tree *tree): parse.c']]], - ['getmeanlatitude_36',['getMeanLatitude',['../fonctions_8c.html#a4e28ba677802ecff6a230577f4d1b3c0',1,'fonctions.c']]], - ['getmeanlongitude_37',['getMeanLongitude',['../fonctions_8c.html#a62955c07d956aebbaf0db45e96e83100',1,'fonctions.c']]], - ['getposx_38',['getposX',['../parse_8c.html#ab40ea2e8015fc77963bedc0451ab2aca',1,'getposX(char *line, tree *tree): parse.c'],['../parse_8h.html#ab40ea2e8015fc77963bedc0451ab2aca',1,'getposX(char *line, tree *tree): parse.c']]], - ['getposy_39',['getposY',['../parse_8c.html#ad39ea3cbbd1c031f8d819ce901826f65',1,'getposY(char *line, tree *tree): parse.c'],['../parse_8h.html#ad39ea3cbbd1c031f8d819ce901826f65',1,'getposY(char *line, tree *tree): parse.c']]] -]; diff --git a/docs/html/search/all_7.html b/docs/html/search/all_7.html deleted file mode 100644 index af52f82..0000000 --- a/docs/html/search/all_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js deleted file mode 100644 index cbb6edd..0000000 --- a/docs/html/search/all_7.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['handlingfile_40',['handlingFile',['../parse_8c.html#abd3676c711ff2728e5acc162628c39bb',1,'handlingFile(opt handlingOptions, tree *tree, int *nbTrees): parse.c'],['../parse_8h.html#abd3676c711ff2728e5acc162628c39bb',1,'handlingFile(opt handlingOptions, tree *tree, int *nbTrees): parse.c']]], - ['handlingrestrictingoptions_41',['handlingRestrictingOptions',['../restrictiveOptions_8c.html#af922efbacb29fb8a175816b5f164b9e3',1,'handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection): restrictiveOptions.c'],['../restrictiveOptions_8h.html#af922efbacb29fb8a175816b5f164b9e3',1,'handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection): restrictiveOptions.c']]], - ['height_42',['height',['../structtree.html#aa7924d19ff993d28766f18e9c583c1f8',1,'tree::height()'],['../structopt.html#ab74aec43a44b95b42fffc3319adb019f',1,'opt::height()'],['../display_8c.html#aed89bd71aee8be823e8a20ec4e093c1e',1,'HEIGHT(): display.c']]], - ['help_43',['help',['../structopt.html#af41d727a82e845ad5fd61173c9cc8831',1,'opt::help()'],['../options_8c.html#a0bed8474bd33a912769360766f6b10d4',1,'help(): options.c']]] -]; diff --git a/docs/html/search/all_8.html b/docs/html/search/all_8.html deleted file mode 100644 index cf2b5df..0000000 --- a/docs/html/search/all_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_8.js b/docs/html/search/all_8.js deleted file mode 100644 index fb45804..0000000 --- a/docs/html/search/all_8.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['id_44',['id',['../structcorres__genus.html#a094318cd3b28c4f276272b3b2ba17f27',1,'corres_genus']]], - ['in_5fpath_45',['in_path',['../structopt.html#a2809598faded69f650028625e2600379',1,'opt']]], - ['infini_46',['INFINI',['../algo_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a',1,'INFINI(): algo.c'],['../stat_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a',1,'INFINI(): stat.c']]], - ['infodisplay_47',['infoDisplay',['../display_8c.html#aa8ca658ab31a0f8c373547a7bc611a87',1,'display.c']]], - ['initoptions_48',['initOptions',['../options_8c.html#a6dc7b40134f3b10f300db7e031fcb942',1,'options.c']]], - ['is_5fempty_49',['is_empty',['../pile_8c.html#a361f0852eeeb982ab3cf2204a9bbfc80',1,'is_empty(pile_t *pile): pile.c'],['../pile_8h.html#a361f0852eeeb982ab3cf2204a9bbfc80',1,'is_empty(pile_t *pile): pile.c']]], - ['isbinary_50',['isBinary',['../parse_8c.html#add2cd715c4e73ccf6075a10ab07657c2',1,'isBinary(char *file): parse.c'],['../parse_8h.html#add2cd715c4e73ccf6075a10ab07657c2',1,'isBinary(char *file): parse.c']]], - ['isincomponent_51',['isInComponent',['../structvertex.html#abb304730a96e200d85efecb1dc3334ea',1,'vertex']]] -]; diff --git a/docs/html/search/all_9.html b/docs/html/search/all_9.html deleted file mode 100644 index 690785a..0000000 --- a/docs/html/search/all_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_9.js b/docs/html/search/all_9.js deleted file mode 100644 index a854a23..0000000 --- a/docs/html/search/all_9.js +++ /dev/null @@ -1,17 +0,0 @@ -var searchData= -[ - ['limit_5fvalue_52',['limit_value',['../structopt.html#a5c2fc0cd11085fc8bf313b56cc791a75',1,'opt']]], - ['list_5fappend_53',['list_append',['../array-list_8c.html#abd5d607adddcc300a324588f12b00ed8',1,'list_append(list_t *it, void *element_to_append): array-list.c'],['../array-list_8h.html#a8841ba80500e11a4380929d3c3597de9',1,'list_append(list_t *, void *): array-list.c']]], - ['list_5fcreate_54',['list_create',['../array-list_8c.html#a29f30488e60e8e4222c5118d754f0dbb',1,'list_create(void): array-list.c'],['../array-list_8h.html#a29f30488e60e8e4222c5118d754f0dbb',1,'list_create(void): array-list.c']]], - ['list_5ffree_55',['list_free',['../array-list_8c.html#adb3fd6e587db7dbce8703815a8200441',1,'list_free(list_t *it): array-list.c'],['../array-list_8h.html#a74dde820738687bc183a09495909e64c',1,'list_free(list_t *): array-list.c']]], - ['list_5ffree2_56',['list_free2',['../array-list_8c.html#a09e105a966c9826976187aa227f67194',1,'list_free2(list_t *it): array-list.c'],['../array-list_8h.html#a09e105a966c9826976187aa227f67194',1,'list_free2(list_t *it): array-list.c']]], - ['list_5fget_57',['list_get',['../array-list_8c.html#a8da0eb9133b9b1821cfa6811d88f4259',1,'list_get(list_t *it, int pos): array-list.c'],['../array-list_8h.html#af058305b3e75702ca11274d23f820515',1,'list_get(list_t *, int): array-list.c']]], - ['list_5finsert_58',['list_insert',['../array-list_8c.html#ab3e47ea7db86a9f33d93fca5a25b87cc',1,'list_insert(list_t *it, size_t pos, void *elmt): array-list.c'],['../array-list_8h.html#ab1c2550e5093d373e875893339936fad',1,'list_insert(list_t *, size_t, void *): array-list.c']]], - ['list_5fprepend_59',['list_prepend',['../array-list_8c.html#a5eb5f590f52fa4763c75eabcda9abe36',1,'list_prepend(list_t *it, void *elmt): array-list.c'],['../array-list_8h.html#ad59e715707419ee7577c66d23c9573a2',1,'list_prepend(list_t *, void *): array-list.c']]], - ['list_5fset_60',['list_set',['../array-list_8c.html#a1ec39ae5962d70f4484c0b656956fbb5',1,'list_set(list_t *it, int pos, void *element): array-list.c'],['../array-list_8h.html#a7e05e7fb0fca583ed13ee9dc29450a08',1,'list_set(list_t *, int, void *): array-list.c']]], - ['list_5fsize_61',['list_size',['../array-list_8c.html#adcfa11f7eafb9f7562fba20f0d7f4e2a',1,'list_size(list_t *it): array-list.c'],['../array-list_8h.html#a6555dbaf1bf1ecafac79e7dcfafa05d9',1,'list_size(list_t *): array-list.c']]], - ['list_5ft_62',['list_t',['../structlist__t.html',1,'list_t'],['../array-list_8h.html#a2400033025820f5e82c0e72c47386627',1,'list_t(): array-list.h']]], - ['list_5ftake_63',['list_take',['../array-list_8c.html#a086e3f7f2956e50db180c011845cb776',1,'list_take(list_t *it, int pos): array-list.c'],['../array-list_8h.html#ad8ea0715edb588b046fbe943a9c6577b',1,'list_take(list_t *, int): array-list.c']]], - ['loadingbar_64',['loadingBar',['../display_8c.html#a550e90e7a5a56b5c11d17a005ac43dee',1,'loadingBar(int current, int total, clock_t delta): display.c'],['../display_8h.html#a550e90e7a5a56b5c11d17a005ac43dee',1,'loadingBar(int current, int total, clock_t delta): display.c']]], - ['location_65',['location',['../structopt.html#aaf6d5cc2fc5b59c841a9dab86bb025a1',1,'opt']]] -]; diff --git a/docs/html/search/all_a.html b/docs/html/search/all_a.html deleted file mode 100644 index f2f3d3a..0000000 --- a/docs/html/search/all_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_a.js b/docs/html/search/all_a.js deleted file mode 100644 index 33848fb..0000000 --- a/docs/html/search/all_a.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['main_66',['main',['../arbres_8c.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'arbres.c']]], - ['managesigint_2ec_67',['manageSIGINT.c',['../manageSIGINT_8c.html',1,'']]], - ['managesigint_2eh_68',['manageSIGINT.h',['../manageSIGINT_8h.html',1,'']]], - ['maxx_69',['maxX',['../display_8c.html#ab52bd6692aaad6ea9b396de78236e850',1,'display.c']]], - ['maxy_70',['maxY',['../display_8c.html#a040ffc050c09814a96186ba85cbc87d4',1,'display.c']]], - ['minimumspanningtree_71',['minimumSpanningTree',['../algo_8c.html#ae3566388dc2dbe7eb6197bbf6b7979e4',1,'minimumSpanningTree(tree *forest, size_t size): algo.c'],['../algo_8h.html#ae3566388dc2dbe7eb6197bbf6b7979e4',1,'minimumSpanningTree(tree *forest, size_t size): algo.c']]], - ['minx_72',['minX',['../display_8c.html#a4eea0232034a5a41300e04edcc853f96',1,'display.c']]], - ['miny_73',['minY',['../display_8c.html#ab65f047e1be48c7ae41438104c94cd08',1,'display.c']]] -]; diff --git a/docs/html/search/all_b.html b/docs/html/search/all_b.html deleted file mode 100644 index 14f3403..0000000 --- a/docs/html/search/all_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_b.js b/docs/html/search/all_b.js deleted file mode 100644 index 58d9a79..0000000 --- a/docs/html/search/all_b.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['neighbors_74',['neighbors',['../structnode.html#aa2af56ab31cad8ae60cb6482c6386d67',1,'node']]], - ['newmst_75',['newMST',['../stat_8c.html#a80e751c1c69905d0782bb96e72c14fd0',1,'stat.c']]], - ['node_76',['node',['../structnode.html',1,'node'],['../struct_8h.html#af4aeda155dbe167f1c1cf38cb65bf324',1,'node(): struct.h']]] -]; diff --git a/docs/html/search/all_c.html b/docs/html/search/all_c.html deleted file mode 100644 index da60ab8..0000000 --- a/docs/html/search/all_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js deleted file mode 100644 index 38a411d..0000000 --- a/docs/html/search/all_c.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['opt_77',['opt',['../structopt.html',1,'opt'],['../struct_8h.html#ab2e02685ec24164f632d61af06ccddc1',1,'opt(): struct.h']]], - ['options_78',['options',['../options_8c.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5',1,'options(int argc, char **argv, opt *options): options.c'],['../options_8h.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5',1,'options(int argc, char **argv, opt *options): options.c']]], - ['options_2ec_79',['options.c',['../options_8c.html',1,'']]], - ['options_2eh_80',['options.h',['../options_8h.html',1,'']]], - ['othermst_81',['otherMST',['../stat_8c.html#af091f8afb1cc48aec126c734b826ccf8',1,'stat.c']]], - ['out_5fpath_82',['out_path',['../structopt.html#a47181603b53379d816eacaf7ed06854c',1,'opt']]] -]; diff --git a/docs/html/search/all_d.html b/docs/html/search/all_d.html deleted file mode 100644 index bc376fe..0000000 --- a/docs/html/search/all_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js deleted file mode 100644 index 57dec6b..0000000 --- a/docs/html/search/all_d.js +++ /dev/null @@ -1,17 +0,0 @@ -var searchData= -[ - ['parse_2ec_83',['parse.c',['../parse_8c.html',1,'']]], - ['parse_2eh_84',['parse.h',['../parse_8h.html',1,'']]], - ['parsefile_85',['parseFile',['../parse_8c.html#aff72575cf07dce9f7cc0c26a8bd96c1f',1,'parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab): parse.c'],['../parse_8h.html#aff72575cf07dce9f7cc0c26a8bd96c1f',1,'parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab): parse.c']]], - ['parsefrombinaryfile_86',['parseFromBinaryFile',['../parse_8c.html#af8c350631bff16c2c20835214dbc02e8',1,'parseFromBinaryFile(char *file, tree *forest, size_t numberoflines): parse.c'],['../parse_8h.html#af8c350631bff16c2c20835214dbc02e8',1,'parseFromBinaryFile(char *file, tree *forest, size_t numberoflines): parse.c']]], - ['pile_2ec_87',['pile.c',['../pile_8c.html',1,'']]], - ['pile_2eh_88',['pile.h',['../pile_8h.html',1,'']]], - ['pile_5fcreate_89',['pile_create',['../pile_8c.html#a2584fb19bd9f58c36b79a6887372689a',1,'pile_create(void): pile.c'],['../pile_8h.html#a2584fb19bd9f58c36b79a6887372689a',1,'pile_create(void): pile.c']]], - ['pile_5ffree_90',['pile_free',['../pile_8c.html#a5f0083da3cda0f8b2d3556aab57f242a',1,'pile_free(pile_t *pile): pile.c'],['../pile_8h.html#a5f0083da3cda0f8b2d3556aab57f242a',1,'pile_free(pile_t *pile): pile.c']]], - ['pile_5fsize_91',['pile_size',['../pile_8c.html#a6bf23b98322c92a2689636e4b08d90bc',1,'pile_size(pile_t *pile): pile.c'],['../pile_8h.html#a6bf23b98322c92a2689636e4b08d90bc',1,'pile_size(pile_t *pile): pile.c']]], - ['pile_5ft_92',['pile_t',['../pile_8h.html#a5776697d3a095d7ec614876c2614510c',1,'pile.h']]], - ['pop_93',['pop',['../pile_8c.html#a9ddb46a3c3fceef9aa92f267cefd3825',1,'pop(pile_t *pile): pile.c'],['../pile_8h.html#a9ddb46a3c3fceef9aa92f267cefd3825',1,'pop(pile_t *pile): pile.c']]], - ['position_94',['position',['../structposition.html',1,'position'],['../struct_8h.html#ae95ed9c09d4ff44297273224ccfbe1dd',1,'position(): struct.h']]], - ['projectiontrees_95',['projectionTrees',['../fonctions_8c.html#af18ef119d8c281b81165033c74ad49f1',1,'projectionTrees(tree *forest, size_t size): fonctions.c'],['../fonctions_8h.html#af18ef119d8c281b81165033c74ad49f1',1,'projectionTrees(tree *forest, size_t size): fonctions.c']]], - ['push_96',['push',['../pile_8c.html#aa06a1925e70cab6a8713eeb25430e74d',1,'push(pile_t *pile, void *elm): pile.c'],['../pile_8h.html#aa06a1925e70cab6a8713eeb25430e74d',1,'push(pile_t *pile, void *elm): pile.c']]] -]; diff --git a/docs/html/search/all_e.html b/docs/html/search/all_e.html deleted file mode 100644 index 2e3c74d..0000000 --- a/docs/html/search/all_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js deleted file mode 100644 index 4751fa4..0000000 --- a/docs/html/search/all_e.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['radians_97',['radians',['../fonctions_8h.html#a86aeec989899cd0691300d15d5b7de5f',1,'fonctions.h']]], - ['rayon_98',['RAYON',['../fonctions_8h.html#a3304c99f43f534878204486fc7b9673d',1,'fonctions.h']]], - ['recharge_99',['recharge',['../structopt.html#a2be9a32bb8a2a689af9265b4b0c03728',1,'opt']]], - ['restrictiveoptions_2ec_100',['restrictiveOptions.c',['../restrictiveOptions_8c.html',1,'']]], - ['restrictiveoptions_2eh_101',['restrictiveOptions.h',['../restrictiveOptions_8h.html',1,'']]] -]; diff --git a/docs/html/search/all_f.html b/docs/html/search/all_f.html deleted file mode 100644 index 246f8ab..0000000 --- a/docs/html/search/all_f.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_f.js b/docs/html/search/all_f.js deleted file mode 100644 index ff8ffd7..0000000 --- a/docs/html/search/all_f.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['savestructgenus_102',['SaveStructGenus',['../parse_8c.html#a44d8d667643a4dbc6772c861947f630d',1,'SaveStructGenus(opt handlingOptions, tab_genus tab): parse.c'],['../parse_8h.html#a44d8d667643a4dbc6772c861947f630d',1,'SaveStructGenus(opt handlingOptions, tab_genus tab): parse.c']]], - ['scaletree_103',['scaleTree',['../display_8c.html#abd00a978a929f7fbddb92e23286273d3',1,'display.c']]], - ['separationlimit_104',['separationLimit',['../restrictiveOptions_8c.html#a743c7bc20ae1c86834dbf0a416e7d4e5',1,'restrictiveOptions.c']]], - ['sighandle_105',['sigHandle',['../manageSIGINT_8c.html#a141451f2022226a29ab278b96b477e0f',1,'sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old): manageSIGINT.c'],['../manageSIGINT_8h.html#a141451f2022226a29ab278b96b477e0f',1,'sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old): manageSIGINT.c']]], - ['sigintitialise_106',['sigIntitialise',['../manageSIGINT_8c.html#af3362a540be27c1ebee056ba2d040832',1,'sigIntitialise(sigset_t *masked, sigset_t *old): manageSIGINT.c'],['../manageSIGINT_8h.html#af3362a540be27c1ebee056ba2d040832',1,'sigIntitialise(sigset_t *masked, sigset_t *old): manageSIGINT.c']]], - ['size_107',['size',['../structlist__t.html#a5c985284293b9906f913542e36e40b41',1,'list_t::size()'],['../structtab__genus.html#a33c8c1e67948ffd7d1eda170452ee589',1,'tab_genus::size()']]], - ['span_5ftree_5fpath_108',['span_tree_path',['../structopt.html#a74783b8f970c1467dd813848c0c93fc9',1,'opt']]], - ['stat_109',['stat',['../structopt.html#a470e589ac658e33386e40fe4449f4889',1,'opt::stat()'],['../stat_8c.html#ad0504264256ba096bb799d387f11682d',1,'stat(opt handlingOptions, edge *MST, size_t size, tree *forest): stat.c'],['../stat_8h.html#ad0504264256ba096bb799d387f11682d',1,'stat(opt handlingOptions, edge *MST, size_t size, tree *forest): stat.c']]], - ['stat_2ec_110',['stat.c',['../stat_8c.html',1,'']]], - ['stat_2eh_111',['stat.h',['../stat_8h.html',1,'']]], - ['struct_2eh_112',['struct.h',['../struct_8h.html',1,'']]] -]; diff --git a/docs/html/search/classes_0.html b/docs/html/search/classes_0.html deleted file mode 100644 index f7e4c14..0000000 --- a/docs/html/search/classes_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_0.js b/docs/html/search/classes_0.js deleted file mode 100644 index df15bea..0000000 --- a/docs/html/search/classes_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['corres_5fgenus_128',['corres_genus',['../structcorres__genus.html',1,'']]] -]; diff --git a/docs/html/search/classes_1.html b/docs/html/search/classes_1.html deleted file mode 100644 index c7ff4b3..0000000 --- a/docs/html/search/classes_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_1.js b/docs/html/search/classes_1.js deleted file mode 100644 index bdfa17c..0000000 --- a/docs/html/search/classes_1.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['edge_129',['edge',['../structedge.html',1,'']]], - ['edge2_130',['edge2',['../structedge2.html',1,'']]] -]; diff --git a/docs/html/search/classes_2.html b/docs/html/search/classes_2.html deleted file mode 100644 index 0d1e8a0..0000000 --- a/docs/html/search/classes_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_2.js b/docs/html/search/classes_2.js deleted file mode 100644 index a3f8af2..0000000 --- a/docs/html/search/classes_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['list_5ft_131',['list_t',['../structlist__t.html',1,'']]] -]; diff --git a/docs/html/search/classes_3.html b/docs/html/search/classes_3.html deleted file mode 100644 index 2102545..0000000 --- a/docs/html/search/classes_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_3.js b/docs/html/search/classes_3.js deleted file mode 100644 index 907f823..0000000 --- a/docs/html/search/classes_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['node_132',['node',['../structnode.html',1,'']]] -]; diff --git a/docs/html/search/classes_4.html b/docs/html/search/classes_4.html deleted file mode 100644 index 095ab59..0000000 --- a/docs/html/search/classes_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_4.js b/docs/html/search/classes_4.js deleted file mode 100644 index 1f224bf..0000000 --- a/docs/html/search/classes_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['opt_133',['opt',['../structopt.html',1,'']]] -]; diff --git a/docs/html/search/classes_5.html b/docs/html/search/classes_5.html deleted file mode 100644 index fc9cdc9..0000000 --- a/docs/html/search/classes_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_5.js b/docs/html/search/classes_5.js deleted file mode 100644 index 5f14136..0000000 --- a/docs/html/search/classes_5.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['position_134',['position',['../structposition.html',1,'']]] -]; diff --git a/docs/html/search/classes_6.html b/docs/html/search/classes_6.html deleted file mode 100644 index 1ecfddd..0000000 --- a/docs/html/search/classes_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_6.js b/docs/html/search/classes_6.js deleted file mode 100644 index e84f42b..0000000 --- a/docs/html/search/classes_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['tab_5fgenus_135',['tab_genus',['../structtab__genus.html',1,'']]], - ['tree_136',['tree',['../structtree.html',1,'']]] -]; diff --git a/docs/html/search/classes_7.html b/docs/html/search/classes_7.html deleted file mode 100644 index 0fc6fc3..0000000 --- a/docs/html/search/classes_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_7.js b/docs/html/search/classes_7.js deleted file mode 100644 index b6ea9bb..0000000 --- a/docs/html/search/classes_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['vertex_137',['vertex',['../structvertex.html',1,'']]] -]; diff --git a/docs/html/search/close.png b/docs/html/search/close.png deleted file mode 100644 index 9342d3dfeea7b7c4ee610987e717804b5a42ceb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN diff --git a/docs/html/search/defines_0.html b/docs/html/search/defines_0.html deleted file mode 100644 index 2deb369..0000000 --- a/docs/html/search/defines_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/defines_0.js b/docs/html/search/defines_0.js deleted file mode 100644 index 557892d..0000000 --- a/docs/html/search/defines_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['height_265',['HEIGHT',['../display_8c.html#aed89bd71aee8be823e8a20ec4e093c1e',1,'display.c']]] -]; diff --git a/docs/html/search/defines_1.html b/docs/html/search/defines_1.html deleted file mode 100644 index e0d0b6d..0000000 --- a/docs/html/search/defines_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/defines_1.js b/docs/html/search/defines_1.js deleted file mode 100644 index c66a82c..0000000 --- a/docs/html/search/defines_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['infini_266',['INFINI',['../algo_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a',1,'INFINI(): algo.c'],['../stat_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a',1,'INFINI(): stat.c']]] -]; diff --git a/docs/html/search/defines_2.html b/docs/html/search/defines_2.html deleted file mode 100644 index 707f942..0000000 --- a/docs/html/search/defines_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/defines_2.js b/docs/html/search/defines_2.js deleted file mode 100644 index 4a7c58b..0000000 --- a/docs/html/search/defines_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['rayon_267',['RAYON',['../fonctions_8h.html#a3304c99f43f534878204486fc7b9673d',1,'fonctions.h']]] -]; diff --git a/docs/html/search/defines_3.html b/docs/html/search/defines_3.html deleted file mode 100644 index f30be10..0000000 --- a/docs/html/search/defines_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/defines_3.js b/docs/html/search/defines_3.js deleted file mode 100644 index 2c5910c..0000000 --- a/docs/html/search/defines_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['width_268',['WIDTH',['../display_8c.html#a241aeeb764887ae5e3de58b98f04b16d',1,'display.c']]] -]; diff --git a/docs/html/search/files_0.html b/docs/html/search/files_0.html deleted file mode 100644 index 737608e..0000000 --- a/docs/html/search/files_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_0.js b/docs/html/search/files_0.js deleted file mode 100644 index 5590888..0000000 --- a/docs/html/search/files_0.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['algo_2ec_138',['algo.c',['../algo_8c.html',1,'']]], - ['algo_2eh_139',['algo.h',['../algo_8h.html',1,'']]], - ['arbres_2ec_140',['arbres.c',['../arbres_8c.html',1,'']]], - ['array_2dlist_2ec_141',['array-list.c',['../array-list_8c.html',1,'']]], - ['array_2dlist_2eh_142',['array-list.h',['../array-list_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_1.html b/docs/html/search/files_1.html deleted file mode 100644 index f27a62d..0000000 --- a/docs/html/search/files_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_1.js b/docs/html/search/files_1.js deleted file mode 100644 index 62242b7..0000000 --- a/docs/html/search/files_1.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['display_2ec_143',['display.c',['../display_8c.html',1,'']]], - ['display_2eh_144',['display.h',['../display_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_2.html b/docs/html/search/files_2.html deleted file mode 100644 index a45066e..0000000 --- a/docs/html/search/files_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_2.js b/docs/html/search/files_2.js deleted file mode 100644 index 8e76900..0000000 --- a/docs/html/search/files_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['fonctions_2ec_145',['fonctions.c',['../fonctions_8c.html',1,'']]], - ['fonctions_2eh_146',['fonctions.h',['../fonctions_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_3.html b/docs/html/search/files_3.html deleted file mode 100644 index 1076bc5..0000000 --- a/docs/html/search/files_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_3.js b/docs/html/search/files_3.js deleted file mode 100644 index 968b697..0000000 --- a/docs/html/search/files_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['managesigint_2ec_147',['manageSIGINT.c',['../manageSIGINT_8c.html',1,'']]], - ['managesigint_2eh_148',['manageSIGINT.h',['../manageSIGINT_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_4.html b/docs/html/search/files_4.html deleted file mode 100644 index e5cd7f4..0000000 --- a/docs/html/search/files_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_4.js b/docs/html/search/files_4.js deleted file mode 100644 index 23e14ce..0000000 --- a/docs/html/search/files_4.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['options_2ec_149',['options.c',['../options_8c.html',1,'']]], - ['options_2eh_150',['options.h',['../options_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_5.html b/docs/html/search/files_5.html deleted file mode 100644 index 2cc480f..0000000 --- a/docs/html/search/files_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_5.js b/docs/html/search/files_5.js deleted file mode 100644 index 1bc6635..0000000 --- a/docs/html/search/files_5.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['parse_2ec_151',['parse.c',['../parse_8c.html',1,'']]], - ['parse_2eh_152',['parse.h',['../parse_8h.html',1,'']]], - ['pile_2ec_153',['pile.c',['../pile_8c.html',1,'']]], - ['pile_2eh_154',['pile.h',['../pile_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_6.html b/docs/html/search/files_6.html deleted file mode 100644 index 6510245..0000000 --- a/docs/html/search/files_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_6.js b/docs/html/search/files_6.js deleted file mode 100644 index 4cd97f8..0000000 --- a/docs/html/search/files_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['restrictiveoptions_2ec_155',['restrictiveOptions.c',['../restrictiveOptions_8c.html',1,'']]], - ['restrictiveoptions_2eh_156',['restrictiveOptions.h',['../restrictiveOptions_8h.html',1,'']]] -]; diff --git a/docs/html/search/files_7.html b/docs/html/search/files_7.html deleted file mode 100644 index 819f7b8..0000000 --- a/docs/html/search/files_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_7.js b/docs/html/search/files_7.js deleted file mode 100644 index 2f046b4..0000000 --- a/docs/html/search/files_7.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['stat_2ec_157',['stat.c',['../stat_8c.html',1,'']]], - ['stat_2eh_158',['stat.h',['../stat_8h.html',1,'']]], - ['struct_2eh_159',['struct.h',['../struct_8h.html',1,'']]] -]; diff --git a/docs/html/search/functions_0.html b/docs/html/search/functions_0.html deleted file mode 100644 index e17c711..0000000 --- a/docs/html/search/functions_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_0.js b/docs/html/search/functions_0.js deleted file mode 100644 index 223f2c4..0000000 --- a/docs/html/search/functions_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['addvertexes_160',['addVertexes',['../algo_8c.html#a0c4590f35ac72bce8e6e93c59b120e00',1,'algo.c']]] -]; diff --git a/docs/html/search/functions_1.html b/docs/html/search/functions_1.html deleted file mode 100644 index 0ddac0a..0000000 --- a/docs/html/search/functions_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_1.js b/docs/html/search/functions_1.js deleted file mode 100644 index cc66aa3..0000000 --- a/docs/html/search/functions_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['binaryfile_161',['binaryFile',['../parse_8c.html#a804efe18fb42cbe887070b71bd2c38e7',1,'binaryFile(tree *forest, size_t size, char *save): parse.c'],['../parse_8h.html#a804efe18fb42cbe887070b71bd2c38e7',1,'binaryFile(tree *forest, size_t size, char *save): parse.c']]] -]; diff --git a/docs/html/search/functions_10.html b/docs/html/search/functions_10.html deleted file mode 100644 index 09422e1..0000000 --- a/docs/html/search/functions_10.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_10.js b/docs/html/search/functions_10.js deleted file mode 100644 index 6aa3e25..0000000 --- a/docs/html/search/functions_10.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['testgender_223',['testGender',['../restrictiveOptions_8c.html#ac9cde0dced41f1243007a33fadac488f',1,'restrictiveOptions.c']]], - ['testheight_224',['testHeight',['../restrictiveOptions_8c.html#aac8a6d6ce7b251e17aa43ef5c970fef7',1,'restrictiveOptions.c']]], - ['testlimit_225',['testLimit',['../restrictiveOptions_8c.html#a242fad839b917348a5263beb3949864e',1,'restrictiveOptions.c']]] -]; diff --git a/docs/html/search/functions_11.html b/docs/html/search/functions_11.html deleted file mode 100644 index 1cde7b4..0000000 --- a/docs/html/search/functions_11.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_11.js b/docs/html/search/functions_11.js deleted file mode 100644 index 843cad3..0000000 --- a/docs/html/search/functions_11.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['vertexdistmin_226',['vertexDistMin',['../algo_8c.html#ac12979f67142d15820bc04e3965f6076',1,'algo.c']]] -]; diff --git a/docs/html/search/functions_12.html b/docs/html/search/functions_12.html deleted file mode 100644 index 48e5915..0000000 --- a/docs/html/search/functions_12.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_12.js b/docs/html/search/functions_12.js deleted file mode 100644 index 317a4d1..0000000 --- a/docs/html/search/functions_12.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['weightminimumspanningtree_227',['weightMinimumSpanningTree',['../stat_8c.html#a4e0e5478beb77cde62d2536d5fbfe69d',1,'weightMinimumSpanningTree(edge *MST, size_t size): stat.c'],['../stat_8h.html#a4e0e5478beb77cde62d2536d5fbfe69d',1,'weightMinimumSpanningTree(edge *MST, size_t size): stat.c']]], - ['writeedges_228',['writeEdges',['../parse_8c.html#ae17e8d9b38ac4864828eb54b4d916a0f',1,'writeEdges(edge *MST, size_t size, opt handlingOptions): parse.c'],['../parse_8h.html#ae17e8d9b38ac4864828eb54b4d916a0f',1,'writeEdges(edge *MST, size_t size, opt handlingOptions): parse.c']]] -]; diff --git a/docs/html/search/functions_2.html b/docs/html/search/functions_2.html deleted file mode 100644 index 2737c5a..0000000 --- a/docs/html/search/functions_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_2.js b/docs/html/search/functions_2.js deleted file mode 100644 index 0b828cf..0000000 --- a/docs/html/search/functions_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['copycomposant_162',['copyComposant',['../algo_8c.html#ad93045f895f3eff95932b687479497ee',1,'algo.c']]], - ['create_5fsize_5ft_163',['create_size_t',['../array-list_8c.html#a7b8af2083784734274bbee9e5c67d34b',1,'create_size_t(size_t i): array-list.c'],['../array-list_8h.html#a7b8af2083784734274bbee9e5c67d34b',1,'create_size_t(size_t i): array-list.c']]] -]; diff --git a/docs/html/search/functions_3.html b/docs/html/search/functions_3.html deleted file mode 100644 index 6da86e7..0000000 --- a/docs/html/search/functions_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_3.js b/docs/html/search/functions_3.js deleted file mode 100644 index 8278a9e..0000000 --- a/docs/html/search/functions_3.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['diametermst_164',['diameterMST',['../stat_8c.html#a3a4088f413e9af42108f6ae69216f437',1,'diameterMST(edge *MST, tree *forest, size_t size): stat.c'],['../stat_8h.html#a3a4088f413e9af42108f6ae69216f437',1,'diameterMST(edge *MST, tree *forest, size_t size): stat.c']]], - ['displaytrees_165',['displayTrees',['../display_8c.html#a6d1822b75d0e0ba6328174a5d84cb875',1,'displayTrees(edge *edgeList, size_t size, tree *forest): display.c'],['../display_8h.html#adb313f63bb0c4ad9ce73a49eb31e3992',1,'displayTrees(edge *listeAretes, size_t size, tree *structure): display.c']]], - ['distancetrees_166',['distanceTrees',['../fonctions_8c.html#a069ef6fd0a0890ba4f9548734804118f',1,'distanceTrees(tree *tree1, tree *tree2): fonctions.c'],['../fonctions_8h.html#a069ef6fd0a0890ba4f9548734804118f',1,'distanceTrees(tree *tree1, tree *tree2): fonctions.c']]] -]; diff --git a/docs/html/search/functions_4.html b/docs/html/search/functions_4.html deleted file mode 100644 index 911304e..0000000 --- a/docs/html/search/functions_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_4.js b/docs/html/search/functions_4.js deleted file mode 100644 index 0abc8fa..0000000 --- a/docs/html/search/functions_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['exentricityvertex_167',['exentricityVertex',['../stat_8c.html#a44114f31b939b70a07a9e7f31f0d5543',1,'stat.c']]] -]; diff --git a/docs/html/search/functions_5.html b/docs/html/search/functions_5.html deleted file mode 100644 index 61b920d..0000000 --- a/docs/html/search/functions_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_5.js b/docs/html/search/functions_5.js deleted file mode 100644 index 75b0abb..0000000 --- a/docs/html/search/functions_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['firstnothandledvertex_168',['firstNotHandledVertex',['../algo_8c.html#afda0b5b5cb8bd315ffe91b00cf20abdb',1,'algo.c']]], - ['freenode_169',['freeNode',['../stat_8c.html#a78e5c527c5555279fd636505eded53bd',1,'stat.c']]] -]; diff --git a/docs/html/search/functions_6.html b/docs/html/search/functions_6.html deleted file mode 100644 index dc70a4a..0000000 --- a/docs/html/search/functions_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_6.js b/docs/html/search/functions_6.js deleted file mode 100644 index 1590ca2..0000000 --- a/docs/html/search/functions_6.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['genderinsavefile_170',['genderInSaveFile',['../restrictiveOptions_8c.html#aa470cce4ddbf7858d0058c3e7b7296a2',1,'restrictiveOptions.c']]], - ['genusid_171',['genusId',['../parse_8c.html#aaf08245af6f91198270cda1527fe2c48',1,'genusId(char *genus, char *id, tab_genus *tab_corres): parse.c'],['../parse_8h.html#aaf08245af6f91198270cda1527fe2c48',1,'genusId(char *genus, char *id, tab_genus *tab_corres): parse.c']]], - ['genusknown_172',['genusKnown',['../parse_8c.html#aa3bd640fa9b5fbfc5044816386f4c3ef',1,'genusKnown(char *genus, char *id, tab_genus *tab_corres): parse.c'],['../parse_8h.html#aa3bd640fa9b5fbfc5044816386f4c3ef',1,'genusKnown(char *genus, char *id, tab_genus *tab_corres): parse.c']]], - ['getextremum_173',['getExtremum',['../display_8c.html#ab7d67ad0a7206fc20171512033d3fb2e',1,'getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY): display.c'],['../display_8h.html#ab7d67ad0a7206fc20171512033d3fb2e',1,'getExtremum(tree *forest, size_t size, double *minimumX, double *minimumY, double *maximumX, double *maximumY): display.c']]], - ['getforestmaxcomposante_174',['getForestMaxComposante',['../algo_8c.html#ab0c982f403cbd716f39ace419829a668',1,'getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize): algo.c'],['../algo_8h.html#ab0c982f403cbd716f39ace419829a668',1,'getForestMaxComposante(tree *forest, size_t size, double distmax, size_t *newsize): algo.c']]], - ['getgenus_175',['getGenus',['../parse_8c.html#ad21e256a75b8dce5308d0b0f28fdafca',1,'getGenus(char *line, tree *tree, tab_genus *tab_corres): parse.c'],['../parse_8h.html#ad21e256a75b8dce5308d0b0f28fdafca',1,'getGenus(char *line, tree *tree, tab_genus *tab_corres): parse.c']]], - ['getheight_176',['getHeight',['../parse_8c.html#a5fb5ed49c482a810f59417be3722f925',1,'getHeight(char *line, tree *tree): parse.c'],['../parse_8h.html#a5fb5ed49c482a810f59417be3722f925',1,'getHeight(char *line, tree *tree): parse.c']]], - ['getmeanlatitude_177',['getMeanLatitude',['../fonctions_8c.html#a4e28ba677802ecff6a230577f4d1b3c0',1,'fonctions.c']]], - ['getmeanlongitude_178',['getMeanLongitude',['../fonctions_8c.html#a62955c07d956aebbaf0db45e96e83100',1,'fonctions.c']]], - ['getposx_179',['getposX',['../parse_8c.html#ab40ea2e8015fc77963bedc0451ab2aca',1,'getposX(char *line, tree *tree): parse.c'],['../parse_8h.html#ab40ea2e8015fc77963bedc0451ab2aca',1,'getposX(char *line, tree *tree): parse.c']]], - ['getposy_180',['getposY',['../parse_8c.html#ad39ea3cbbd1c031f8d819ce901826f65',1,'getposY(char *line, tree *tree): parse.c'],['../parse_8h.html#ad39ea3cbbd1c031f8d819ce901826f65',1,'getposY(char *line, tree *tree): parse.c']]] -]; diff --git a/docs/html/search/functions_7.html b/docs/html/search/functions_7.html deleted file mode 100644 index 7de3106..0000000 --- a/docs/html/search/functions_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_7.js b/docs/html/search/functions_7.js deleted file mode 100644 index 92ba31a..0000000 --- a/docs/html/search/functions_7.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['handlingfile_181',['handlingFile',['../parse_8c.html#abd3676c711ff2728e5acc162628c39bb',1,'handlingFile(opt handlingOptions, tree *tree, int *nbTrees): parse.c'],['../parse_8h.html#abd3676c711ff2728e5acc162628c39bb',1,'handlingFile(opt handlingOptions, tree *tree, int *nbTrees): parse.c']]], - ['handlingrestrictingoptions_182',['handlingRestrictingOptions',['../restrictiveOptions_8c.html#af922efbacb29fb8a175816b5f164b9e3',1,'handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection): restrictiveOptions.c'],['../restrictiveOptions_8h.html#af922efbacb29fb8a175816b5f164b9e3',1,'handlingRestrictingOptions(opt handlingOptions, tree *trees, tree *treesSelection, int size, int *sizeSelection): restrictiveOptions.c']]], - ['help_183',['help',['../options_8c.html#a0bed8474bd33a912769360766f6b10d4',1,'options.c']]] -]; diff --git a/docs/html/search/functions_8.html b/docs/html/search/functions_8.html deleted file mode 100644 index 7422be2..0000000 --- a/docs/html/search/functions_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_8.js b/docs/html/search/functions_8.js deleted file mode 100644 index d715567..0000000 --- a/docs/html/search/functions_8.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['infodisplay_184',['infoDisplay',['../display_8c.html#aa8ca658ab31a0f8c373547a7bc611a87',1,'display.c']]], - ['initoptions_185',['initOptions',['../options_8c.html#a6dc7b40134f3b10f300db7e031fcb942',1,'options.c']]], - ['is_5fempty_186',['is_empty',['../pile_8c.html#a361f0852eeeb982ab3cf2204a9bbfc80',1,'is_empty(pile_t *pile): pile.c'],['../pile_8h.html#a361f0852eeeb982ab3cf2204a9bbfc80',1,'is_empty(pile_t *pile): pile.c']]], - ['isbinary_187',['isBinary',['../parse_8c.html#add2cd715c4e73ccf6075a10ab07657c2',1,'isBinary(char *file): parse.c'],['../parse_8h.html#add2cd715c4e73ccf6075a10ab07657c2',1,'isBinary(char *file): parse.c']]] -]; diff --git a/docs/html/search/functions_9.html b/docs/html/search/functions_9.html deleted file mode 100644 index befd4fa..0000000 --- a/docs/html/search/functions_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_9.js b/docs/html/search/functions_9.js deleted file mode 100644 index 66f5477..0000000 --- a/docs/html/search/functions_9.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['list_5fappend_188',['list_append',['../array-list_8c.html#abd5d607adddcc300a324588f12b00ed8',1,'list_append(list_t *it, void *element_to_append): array-list.c'],['../array-list_8h.html#a8841ba80500e11a4380929d3c3597de9',1,'list_append(list_t *, void *): array-list.c']]], - ['list_5fcreate_189',['list_create',['../array-list_8c.html#a29f30488e60e8e4222c5118d754f0dbb',1,'list_create(void): array-list.c'],['../array-list_8h.html#a29f30488e60e8e4222c5118d754f0dbb',1,'list_create(void): array-list.c']]], - ['list_5ffree_190',['list_free',['../array-list_8c.html#adb3fd6e587db7dbce8703815a8200441',1,'list_free(list_t *it): array-list.c'],['../array-list_8h.html#a74dde820738687bc183a09495909e64c',1,'list_free(list_t *): array-list.c']]], - ['list_5ffree2_191',['list_free2',['../array-list_8c.html#a09e105a966c9826976187aa227f67194',1,'list_free2(list_t *it): array-list.c'],['../array-list_8h.html#a09e105a966c9826976187aa227f67194',1,'list_free2(list_t *it): array-list.c']]], - ['list_5fget_192',['list_get',['../array-list_8c.html#a8da0eb9133b9b1821cfa6811d88f4259',1,'list_get(list_t *it, int pos): array-list.c'],['../array-list_8h.html#af058305b3e75702ca11274d23f820515',1,'list_get(list_t *, int): array-list.c']]], - ['list_5finsert_193',['list_insert',['../array-list_8c.html#ab3e47ea7db86a9f33d93fca5a25b87cc',1,'list_insert(list_t *it, size_t pos, void *elmt): array-list.c'],['../array-list_8h.html#ab1c2550e5093d373e875893339936fad',1,'list_insert(list_t *, size_t, void *): array-list.c']]], - ['list_5fprepend_194',['list_prepend',['../array-list_8c.html#a5eb5f590f52fa4763c75eabcda9abe36',1,'list_prepend(list_t *it, void *elmt): array-list.c'],['../array-list_8h.html#ad59e715707419ee7577c66d23c9573a2',1,'list_prepend(list_t *, void *): array-list.c']]], - ['list_5fset_195',['list_set',['../array-list_8c.html#a1ec39ae5962d70f4484c0b656956fbb5',1,'list_set(list_t *it, int pos, void *element): array-list.c'],['../array-list_8h.html#a7e05e7fb0fca583ed13ee9dc29450a08',1,'list_set(list_t *, int, void *): array-list.c']]], - ['list_5fsize_196',['list_size',['../array-list_8c.html#adcfa11f7eafb9f7562fba20f0d7f4e2a',1,'list_size(list_t *it): array-list.c'],['../array-list_8h.html#a6555dbaf1bf1ecafac79e7dcfafa05d9',1,'list_size(list_t *): array-list.c']]], - ['list_5ftake_197',['list_take',['../array-list_8c.html#a086e3f7f2956e50db180c011845cb776',1,'list_take(list_t *it, int pos): array-list.c'],['../array-list_8h.html#ad8ea0715edb588b046fbe943a9c6577b',1,'list_take(list_t *, int): array-list.c']]], - ['loadingbar_198',['loadingBar',['../display_8c.html#a550e90e7a5a56b5c11d17a005ac43dee',1,'loadingBar(int current, int total, clock_t delta): display.c'],['../display_8h.html#a550e90e7a5a56b5c11d17a005ac43dee',1,'loadingBar(int current, int total, clock_t delta): display.c']]] -]; diff --git a/docs/html/search/functions_a.html b/docs/html/search/functions_a.html deleted file mode 100644 index a81e963..0000000 --- a/docs/html/search/functions_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_a.js b/docs/html/search/functions_a.js deleted file mode 100644 index 2de76f1..0000000 --- a/docs/html/search/functions_a.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['main_199',['main',['../arbres_8c.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'arbres.c']]], - ['maxx_200',['maxX',['../display_8c.html#ab52bd6692aaad6ea9b396de78236e850',1,'display.c']]], - ['maxy_201',['maxY',['../display_8c.html#a040ffc050c09814a96186ba85cbc87d4',1,'display.c']]], - ['minimumspanningtree_202',['minimumSpanningTree',['../algo_8c.html#ae3566388dc2dbe7eb6197bbf6b7979e4',1,'minimumSpanningTree(tree *forest, size_t size): algo.c'],['../algo_8h.html#ae3566388dc2dbe7eb6197bbf6b7979e4',1,'minimumSpanningTree(tree *forest, size_t size): algo.c']]], - ['minx_203',['minX',['../display_8c.html#a4eea0232034a5a41300e04edcc853f96',1,'display.c']]], - ['miny_204',['minY',['../display_8c.html#ab65f047e1be48c7ae41438104c94cd08',1,'display.c']]] -]; diff --git a/docs/html/search/functions_b.html b/docs/html/search/functions_b.html deleted file mode 100644 index 345265d..0000000 --- a/docs/html/search/functions_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_b.js b/docs/html/search/functions_b.js deleted file mode 100644 index fe4658a..0000000 --- a/docs/html/search/functions_b.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['newmst_205',['newMST',['../stat_8c.html#a80e751c1c69905d0782bb96e72c14fd0',1,'stat.c']]] -]; diff --git a/docs/html/search/functions_c.html b/docs/html/search/functions_c.html deleted file mode 100644 index 858bfd6..0000000 --- a/docs/html/search/functions_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_c.js b/docs/html/search/functions_c.js deleted file mode 100644 index d036774..0000000 --- a/docs/html/search/functions_c.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['options_206',['options',['../options_8c.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5',1,'options(int argc, char **argv, opt *options): options.c'],['../options_8h.html#a61a7b26ea2d2c2bae572cfe57a0ce3d5',1,'options(int argc, char **argv, opt *options): options.c']]], - ['othermst_207',['otherMST',['../stat_8c.html#af091f8afb1cc48aec126c734b826ccf8',1,'stat.c']]] -]; diff --git a/docs/html/search/functions_d.html b/docs/html/search/functions_d.html deleted file mode 100644 index 2f09f51..0000000 --- a/docs/html/search/functions_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_d.js b/docs/html/search/functions_d.js deleted file mode 100644 index cf6812e..0000000 --- a/docs/html/search/functions_d.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['parsefile_208',['parseFile',['../parse_8c.html#aff72575cf07dce9f7cc0c26a8bd96c1f',1,'parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab): parse.c'],['../parse_8h.html#aff72575cf07dce9f7cc0c26a8bd96c1f',1,'parseFile(char *file, tree *forest, size_t numberoflines, tab_genus *tab): parse.c']]], - ['parsefrombinaryfile_209',['parseFromBinaryFile',['../parse_8c.html#af8c350631bff16c2c20835214dbc02e8',1,'parseFromBinaryFile(char *file, tree *forest, size_t numberoflines): parse.c'],['../parse_8h.html#af8c350631bff16c2c20835214dbc02e8',1,'parseFromBinaryFile(char *file, tree *forest, size_t numberoflines): parse.c']]], - ['pile_5fcreate_210',['pile_create',['../pile_8c.html#a2584fb19bd9f58c36b79a6887372689a',1,'pile_create(void): pile.c'],['../pile_8h.html#a2584fb19bd9f58c36b79a6887372689a',1,'pile_create(void): pile.c']]], - ['pile_5ffree_211',['pile_free',['../pile_8c.html#a5f0083da3cda0f8b2d3556aab57f242a',1,'pile_free(pile_t *pile): pile.c'],['../pile_8h.html#a5f0083da3cda0f8b2d3556aab57f242a',1,'pile_free(pile_t *pile): pile.c']]], - ['pile_5fsize_212',['pile_size',['../pile_8c.html#a6bf23b98322c92a2689636e4b08d90bc',1,'pile_size(pile_t *pile): pile.c'],['../pile_8h.html#a6bf23b98322c92a2689636e4b08d90bc',1,'pile_size(pile_t *pile): pile.c']]], - ['pop_213',['pop',['../pile_8c.html#a9ddb46a3c3fceef9aa92f267cefd3825',1,'pop(pile_t *pile): pile.c'],['../pile_8h.html#a9ddb46a3c3fceef9aa92f267cefd3825',1,'pop(pile_t *pile): pile.c']]], - ['projectiontrees_214',['projectionTrees',['../fonctions_8c.html#af18ef119d8c281b81165033c74ad49f1',1,'projectionTrees(tree *forest, size_t size): fonctions.c'],['../fonctions_8h.html#af18ef119d8c281b81165033c74ad49f1',1,'projectionTrees(tree *forest, size_t size): fonctions.c']]], - ['push_215',['push',['../pile_8c.html#aa06a1925e70cab6a8713eeb25430e74d',1,'push(pile_t *pile, void *elm): pile.c'],['../pile_8h.html#aa06a1925e70cab6a8713eeb25430e74d',1,'push(pile_t *pile, void *elm): pile.c']]] -]; diff --git a/docs/html/search/functions_e.html b/docs/html/search/functions_e.html deleted file mode 100644 index ee5afa6..0000000 --- a/docs/html/search/functions_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_e.js b/docs/html/search/functions_e.js deleted file mode 100644 index b6cf7f6..0000000 --- a/docs/html/search/functions_e.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['radians_216',['radians',['../fonctions_8h.html#a86aeec989899cd0691300d15d5b7de5f',1,'fonctions.h']]] -]; diff --git a/docs/html/search/functions_f.html b/docs/html/search/functions_f.html deleted file mode 100644 index f17c412..0000000 --- a/docs/html/search/functions_f.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_f.js b/docs/html/search/functions_f.js deleted file mode 100644 index 03a244b..0000000 --- a/docs/html/search/functions_f.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['savestructgenus_217',['SaveStructGenus',['../parse_8c.html#a44d8d667643a4dbc6772c861947f630d',1,'SaveStructGenus(opt handlingOptions, tab_genus tab): parse.c'],['../parse_8h.html#a44d8d667643a4dbc6772c861947f630d',1,'SaveStructGenus(opt handlingOptions, tab_genus tab): parse.c']]], - ['scaletree_218',['scaleTree',['../display_8c.html#abd00a978a929f7fbddb92e23286273d3',1,'display.c']]], - ['separationlimit_219',['separationLimit',['../restrictiveOptions_8c.html#a743c7bc20ae1c86834dbf0a416e7d4e5',1,'restrictiveOptions.c']]], - ['sighandle_220',['sigHandle',['../manageSIGINT_8c.html#a141451f2022226a29ab278b96b477e0f',1,'sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old): manageSIGINT.c'],['../manageSIGINT_8h.html#a141451f2022226a29ab278b96b477e0f',1,'sigHandle(struct sigaction *ignore, sigset_t *pending, sigset_t *old): manageSIGINT.c']]], - ['sigintitialise_221',['sigIntitialise',['../manageSIGINT_8c.html#af3362a540be27c1ebee056ba2d040832',1,'sigIntitialise(sigset_t *masked, sigset_t *old): manageSIGINT.c'],['../manageSIGINT_8h.html#af3362a540be27c1ebee056ba2d040832',1,'sigIntitialise(sigset_t *masked, sigset_t *old): manageSIGINT.c']]], - ['stat_222',['stat',['../stat_8c.html#ad0504264256ba096bb799d387f11682d',1,'stat(opt handlingOptions, edge *MST, size_t size, tree *forest): stat.c'],['../stat_8h.html#ad0504264256ba096bb799d387f11682d',1,'stat(opt handlingOptions, edge *MST, size_t size, tree *forest): stat.c']]] -]; diff --git a/docs/html/search/mag_sel.png b/docs/html/search/mag_sel.png deleted file mode 100644 index 39c0ed52a25dd9d080ee0d42ae6c6042bdfa04d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 465 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz6!2%?$TA$hhDVB6cUq=Rpjs4tz5?O(Kg=CK) zUj~NU84L`?eGCi_EEpJ?t}-xGu`@87+QPtK?83kxQ`TapwHK(CDaqU2h2ejD|C#+j z9%q3^WHAE+w=f7ZGR&GI0Tg5}@$_|Nf5gMiEhFgvHvB$N=!mC_V~EE2vzPXI9ZnEo zd+1zHor@dYLod2Y{ z@R$7$Z!PXTbY$|@#T!bMzm?`b<(R`cbw(gxJHzu zB$lLFB^RXvDF!10LknF)BV7aY5JN*NBMU1-b8Q0yD+2>vd*|CI8glbfGSez?Ylunu RoetE%;OXk;vd$@?2>>CYplSdB diff --git a/docs/html/search/nomatches.html b/docs/html/search/nomatches.html deleted file mode 100644 index 4377320..0000000 --- a/docs/html/search/nomatches.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - -
    -
    No Matches
    -
    - - diff --git a/docs/html/search/search.css b/docs/html/search/search.css deleted file mode 100644 index 3cf9df9..0000000 --- a/docs/html/search/search.css +++ /dev/null @@ -1,271 +0,0 @@ -/*---------------- Search Box */ - -#FSearchBox { - float: left; -} - -#MSearchBox { - white-space : nowrap; - float: none; - margin-top: 8px; - right: 0px; - width: 170px; - height: 24px; - z-index: 102; -} - -#MSearchBox .left -{ - display:block; - position:absolute; - left:10px; - width:20px; - height:19px; - background:url('search_l.png') no-repeat; - background-position:right; -} - -#MSearchSelect { - display:block; - position:absolute; - width:20px; - height:19px; -} - -.left #MSearchSelect { - left:4px; -} - -.right #MSearchSelect { - right:5px; -} - -#MSearchField { - display:block; - position:absolute; - height:19px; - background:url('search_m.png') repeat-x; - border:none; - width:115px; - margin-left:20px; - padding-left:4px; - color: #909090; - outline: none; - font: 9pt Arial, Verdana, sans-serif; - -webkit-border-radius: 0px; -} - -#FSearchBox #MSearchField { - margin-left:15px; -} - -#MSearchBox .right { - display:block; - position:absolute; - right:10px; - top:8px; - width:20px; - height:19px; - background:url('search_r.png') no-repeat; - background-position:left; -} - -#MSearchClose { - display: none; - position: absolute; - top: 4px; - background : none; - border: none; - margin: 0px 4px 0px 0px; - padding: 0px 0px; - outline: none; -} - -.left #MSearchClose { - left: 6px; -} - -.right #MSearchClose { - right: 2px; -} - -.MSearchBoxActive #MSearchField { - color: #000000; -} - -/*---------------- Search filter selection */ - -#MSearchSelectWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #90A5CE; - background-color: #F9FAFC; - z-index: 10001; - padding-top: 4px; - padding-bottom: 4px; - -moz-border-radius: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.SelectItem { - font: 8pt Arial, Verdana, sans-serif; - padding-left: 2px; - padding-right: 12px; - border: 0px; -} - -span.SelectionMark { - margin-right: 4px; - font-family: monospace; - outline-style: none; - text-decoration: none; -} - -a.SelectItem { - display: block; - outline-style: none; - color: #000000; - text-decoration: none; - padding-left: 6px; - padding-right: 12px; -} - -a.SelectItem:focus, -a.SelectItem:active { - color: #000000; - outline-style: none; - text-decoration: none; -} - -a.SelectItem:hover { - color: #FFFFFF; - background-color: #3D578C; - outline-style: none; - text-decoration: none; - cursor: pointer; - display: block; -} - -/*---------------- Search results window */ - -iframe#MSearchResults { - width: 60ex; - height: 15em; -} - -#MSearchResultsWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #000; - background-color: #EEF1F7; - z-index:10000; -} - -/* ----------------------------------- */ - - -#SRIndex { - clear:both; - padding-bottom: 15px; -} - -.SREntry { - font-size: 10pt; - padding-left: 1ex; -} - -.SRPage .SREntry { - font-size: 8pt; - padding: 1px 5px; -} - -body.SRPage { - margin: 5px 2px; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} - -.SRPage .SRChildren { - display: none; -} - -.SRSymbol { - font-weight: bold; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRScope { - display: block; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} - -span.SRScope { - padding-left: 4px; -} - -.SRPage .SRStatus { - padding: 2px 5px; - font-size: 8pt; - font-style: italic; -} - -.SRResult { - display: none; -} - -DIV.searchresults { - margin-left: 10px; - margin-right: 10px; -} - -/*---------------- External search page results */ - -.searchresult { - background-color: #F0F3F8; -} - -.pages b { - color: white; - padding: 5px 5px 3px 5px; - background-image: url("../tab_a.png"); - background-repeat: repeat-x; - text-shadow: 0 1px 1px #000000; -} - -.pages { - line-height: 17px; - margin-left: 4px; - text-decoration: none; -} - -.hl { - font-weight: bold; -} - -#searchresults { - margin-bottom: 20px; -} - -.searchpages { - margin-top: 10px; -} - diff --git a/docs/html/search/search.js b/docs/html/search/search.js deleted file mode 100644 index a554ab9..0000000 --- a/docs/html/search/search.js +++ /dev/null @@ -1,814 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var idxChar = searchValue.substr(0, 1).toLowerCase(); - if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair - { - idxChar = searchValue.substr(0, 2); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); - if (idx!=-1) - { - var hexCode=idx.toString(16); - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches.html'; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName == 'DIV' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName == 'DIV' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e(R!W8j_r#qQ#gnr4kAxdU#F0+OBry$Z+ z_0PMi;P|#{d%mw(dnw=jM%@$onTJa%@6Nm3`;2S#nwtVFJI#`U@2Q@@JCCctagvF- z8H=anvo~dTmJ2YA%wA6IHRv%{vxvUm|R)kgZeo zmX%Zb;mpflGZdXCTAgit`||AFzkI#z&(3d4(htA?U2FOL4WF6wY&TB#n3n*I4+hl| z*NBpo#FA92vEu822WQ%mvv4FO#qs` BFGc_W diff --git a/docs/html/search/search_r.png b/docs/html/search/search_r.png deleted file mode 100644 index 1af5d21ee13e070d7600f1c4657fde843b953a69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 553 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!2%@BXHTsJQY`6?zK#qG8~eHcB(ehe3dtTp zz6=bxGZ+|(`xqD=STHa&U1eaXVrO7DwS|Gf*oA>XrmV$GYcEhOQT(QLuS{~ooZ2P@v=Xc@RKW@Irliv8_;wroU0*)0O?temdsA~70jrdux+`@W7 z-N(<(C)L?hOO?KV{>8(jC{hpKsws)#Fh zvsO>IB+gb@b+rGWaO&!a9Z{!U+fV*s7TS>fdt&j$L%^U@Epd$~Nl7e8wMs5Z1yT$~ z28I^8hDN#u<{^fLRz?<9hUVG^237_Jy7tbuQ8eV{r(~v8;?@w8^gA7>fx*+&&t;uc GLK6VEQpiUD diff --git a/docs/html/search/searchdata.js b/docs/html/search/searchdata.js deleted file mode 100644 index 9699226..0000000 --- a/docs/html/search/searchdata.js +++ /dev/null @@ -1,33 +0,0 @@ -var indexSectionsWithContent = -{ - 0: "abcdefghilmnoprstvwxy", - 1: "celnoptv", - 2: "adfmoprs", - 3: "abcdefghilmnoprstvw", - 4: "acdeghilnorstvxy", - 5: "celnoptv", - 6: "hirw" -}; - -var indexSectionNames = -{ - 0: "all", - 1: "classes", - 2: "files", - 3: "functions", - 4: "variables", - 5: "typedefs", - 6: "defines" -}; - -var indexSectionLabels = -{ - 0: "All", - 1: "Data Structures", - 2: "Files", - 3: "Functions", - 4: "Variables", - 5: "Typedefs", - 6: "Macros" -}; - diff --git a/docs/html/search/typedefs_0.html b/docs/html/search/typedefs_0.html deleted file mode 100644 index 376db47..0000000 --- a/docs/html/search/typedefs_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_0.js b/docs/html/search/typedefs_0.js deleted file mode 100644 index 0dc3e4b..0000000 --- a/docs/html/search/typedefs_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['corres_5fgenus_254',['corres_genus',['../struct_8h.html#ad545d83bb2720eaacdc619c17ed9f735',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_1.html b/docs/html/search/typedefs_1.html deleted file mode 100644 index 9b8bf72..0000000 --- a/docs/html/search/typedefs_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_1.js b/docs/html/search/typedefs_1.js deleted file mode 100644 index 2231cd4..0000000 --- a/docs/html/search/typedefs_1.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['edge_255',['edge',['../struct_8h.html#a62e8ac20ad6459019691857781e5a4da',1,'struct.h']]], - ['edge2_256',['edge2',['../struct_8h.html#a5dd23cff3c78c4d93323551348659bbe',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_2.html b/docs/html/search/typedefs_2.html deleted file mode 100644 index d18982f..0000000 --- a/docs/html/search/typedefs_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_2.js b/docs/html/search/typedefs_2.js deleted file mode 100644 index 790cb2e..0000000 --- a/docs/html/search/typedefs_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['list_5ft_257',['list_t',['../array-list_8h.html#a2400033025820f5e82c0e72c47386627',1,'array-list.h']]] -]; diff --git a/docs/html/search/typedefs_3.html b/docs/html/search/typedefs_3.html deleted file mode 100644 index 8941740..0000000 --- a/docs/html/search/typedefs_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_3.js b/docs/html/search/typedefs_3.js deleted file mode 100644 index c858e85..0000000 --- a/docs/html/search/typedefs_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['node_258',['node',['../struct_8h.html#af4aeda155dbe167f1c1cf38cb65bf324',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_4.html b/docs/html/search/typedefs_4.html deleted file mode 100644 index 933bd3b..0000000 --- a/docs/html/search/typedefs_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_4.js b/docs/html/search/typedefs_4.js deleted file mode 100644 index 6a73cff..0000000 --- a/docs/html/search/typedefs_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['opt_259',['opt',['../struct_8h.html#ab2e02685ec24164f632d61af06ccddc1',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_5.html b/docs/html/search/typedefs_5.html deleted file mode 100644 index 7712e6f..0000000 --- a/docs/html/search/typedefs_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_5.js b/docs/html/search/typedefs_5.js deleted file mode 100644 index ffed066..0000000 --- a/docs/html/search/typedefs_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['pile_5ft_260',['pile_t',['../pile_8h.html#a5776697d3a095d7ec614876c2614510c',1,'pile.h']]], - ['position_261',['position',['../struct_8h.html#ae95ed9c09d4ff44297273224ccfbe1dd',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_6.html b/docs/html/search/typedefs_6.html deleted file mode 100644 index 25aa6dd..0000000 --- a/docs/html/search/typedefs_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_6.js b/docs/html/search/typedefs_6.js deleted file mode 100644 index a7ce5df..0000000 --- a/docs/html/search/typedefs_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['tab_5fgenus_262',['tab_genus',['../struct_8h.html#a8cd1c3b0a4957b16fb034faed3fb5fe1',1,'struct.h']]], - ['tree_263',['tree',['../struct_8h.html#a434e35ec9d53f159cc82d020517a98bb',1,'struct.h']]] -]; diff --git a/docs/html/search/typedefs_7.html b/docs/html/search/typedefs_7.html deleted file mode 100644 index 6cb2dde..0000000 --- a/docs/html/search/typedefs_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/typedefs_7.js b/docs/html/search/typedefs_7.js deleted file mode 100644 index 9afddbc..0000000 --- a/docs/html/search/typedefs_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['vertex_264',['vertex',['../struct_8h.html#ad0f5923379e298b172ea5ab8ae5b0eeb',1,'struct.h']]] -]; diff --git a/docs/html/search/variables_0.html b/docs/html/search/variables_0.html deleted file mode 100644 index bf3eba5..0000000 --- a/docs/html/search/variables_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js deleted file mode 100644 index 6baccfe..0000000 --- a/docs/html/search/variables_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['allocated_229',['allocated',['../structlist__t.html#a545866c10437e674417eed908a43846a',1,'list_t']]] -]; diff --git a/docs/html/search/variables_1.html b/docs/html/search/variables_1.html deleted file mode 100644 index 49fe59a..0000000 --- a/docs/html/search/variables_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js deleted file mode 100644 index fb048a4..0000000 --- a/docs/html/search/variables_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['conserve_230',['conserve',['../structopt.html#a57d1c1dc92ba99df66d0fd603189bae3',1,'opt']]] -]; diff --git a/docs/html/search/variables_2.html b/docs/html/search/variables_2.html deleted file mode 100644 index 0c8a18c..0000000 --- a/docs/html/search/variables_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_2.js b/docs/html/search/variables_2.js deleted file mode 100644 index cd922a7..0000000 --- a/docs/html/search/variables_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['distmin_231',['distMin',['../structvertex.html#a514cfdd1b334916366fb7c03241b6702',1,'vertex']]] -]; diff --git a/docs/html/search/variables_3.html b/docs/html/search/variables_3.html deleted file mode 100644 index 19a31fc..0000000 --- a/docs/html/search/variables_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_3.js b/docs/html/search/variables_3.js deleted file mode 100644 index 5fb907d..0000000 --- a/docs/html/search/variables_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['element_232',['element',['../structlist__t.html#a50b00b979c754b66e735689d37b1fa4d',1,'list_t']]] -]; diff --git a/docs/html/search/variables_4.html b/docs/html/search/variables_4.html deleted file mode 100644 index bdc37be..0000000 --- a/docs/html/search/variables_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_4.js b/docs/html/search/variables_4.js deleted file mode 100644 index 9a77d6e..0000000 --- a/docs/html/search/variables_4.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['genus_233',['genus',['../structtree.html#a656022a4f0afcd69428a5b413333c906',1,'tree::genus()'],['../structopt.html#ab5b54f29a8bc5c4e1a2c84527aad8c00',1,'opt::genus()'],['../structcorres__genus.html#a55991b88972006dcf7c66a4fe81b2589',1,'corres_genus::genus()']]], - ['genuses_234',['genuses',['../structtab__genus.html#a3cd0ec1e14551ec94550d26be22a6b21',1,'tab_genus']]], - ['geoloc_235',['geoloc',['../structtree.html#a298f78a3e0e132f7b8635cadc96727c7',1,'tree']]] -]; diff --git a/docs/html/search/variables_5.html b/docs/html/search/variables_5.html deleted file mode 100644 index 6aa2249..0000000 --- a/docs/html/search/variables_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_5.js b/docs/html/search/variables_5.js deleted file mode 100644 index d604b1b..0000000 --- a/docs/html/search/variables_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['height_236',['height',['../structtree.html#aa7924d19ff993d28766f18e9c583c1f8',1,'tree::height()'],['../structopt.html#ab74aec43a44b95b42fffc3319adb019f',1,'opt::height()']]], - ['help_237',['help',['../structopt.html#af41d727a82e845ad5fd61173c9cc8831',1,'opt']]] -]; diff --git a/docs/html/search/variables_6.html b/docs/html/search/variables_6.html deleted file mode 100644 index ce4a906..0000000 --- a/docs/html/search/variables_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_6.js b/docs/html/search/variables_6.js deleted file mode 100644 index 5fb6744..0000000 --- a/docs/html/search/variables_6.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['id_238',['id',['../structcorres__genus.html#a094318cd3b28c4f276272b3b2ba17f27',1,'corres_genus']]], - ['in_5fpath_239',['in_path',['../structopt.html#a2809598faded69f650028625e2600379',1,'opt']]], - ['isincomponent_240',['isInComponent',['../structvertex.html#abb304730a96e200d85efecb1dc3334ea',1,'vertex']]] -]; diff --git a/docs/html/search/variables_7.html b/docs/html/search/variables_7.html deleted file mode 100644 index 39ffd47..0000000 --- a/docs/html/search/variables_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_7.js b/docs/html/search/variables_7.js deleted file mode 100644 index 585014b..0000000 --- a/docs/html/search/variables_7.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['limit_5fvalue_241',['limit_value',['../structopt.html#a5c2fc0cd11085fc8bf313b56cc791a75',1,'opt']]], - ['location_242',['location',['../structopt.html#aaf6d5cc2fc5b59c841a9dab86bb025a1',1,'opt']]] -]; diff --git a/docs/html/search/variables_8.html b/docs/html/search/variables_8.html deleted file mode 100644 index 37a2edd..0000000 --- a/docs/html/search/variables_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_8.js b/docs/html/search/variables_8.js deleted file mode 100644 index 0fffbf6..0000000 --- a/docs/html/search/variables_8.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['neighbors_243',['neighbors',['../structnode.html#aa2af56ab31cad8ae60cb6482c6386d67',1,'node']]] -]; diff --git a/docs/html/search/variables_9.html b/docs/html/search/variables_9.html deleted file mode 100644 index 21e5a4f..0000000 --- a/docs/html/search/variables_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_9.js b/docs/html/search/variables_9.js deleted file mode 100644 index 7e5759c..0000000 --- a/docs/html/search/variables_9.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['out_5fpath_244',['out_path',['../structopt.html#a47181603b53379d816eacaf7ed06854c',1,'opt']]] -]; diff --git a/docs/html/search/variables_a.html b/docs/html/search/variables_a.html deleted file mode 100644 index 1f65055..0000000 --- a/docs/html/search/variables_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_a.js b/docs/html/search/variables_a.js deleted file mode 100644 index af90716..0000000 --- a/docs/html/search/variables_a.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['recharge_245',['recharge',['../structopt.html#a2be9a32bb8a2a689af9265b4b0c03728',1,'opt']]] -]; diff --git a/docs/html/search/variables_b.html b/docs/html/search/variables_b.html deleted file mode 100644 index c02d066..0000000 --- a/docs/html/search/variables_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_b.js b/docs/html/search/variables_b.js deleted file mode 100644 index 7c2a7cd..0000000 --- a/docs/html/search/variables_b.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['size_246',['size',['../structlist__t.html#a5c985284293b9906f913542e36e40b41',1,'list_t::size()'],['../structtab__genus.html#a33c8c1e67948ffd7d1eda170452ee589',1,'tab_genus::size()']]], - ['span_5ftree_5fpath_247',['span_tree_path',['../structopt.html#a74783b8f970c1467dd813848c0c93fc9',1,'opt']]], - ['stat_248',['stat',['../structopt.html#a470e589ac658e33386e40fe4449f4889',1,'opt']]] -]; diff --git a/docs/html/search/variables_c.html b/docs/html/search/variables_c.html deleted file mode 100644 index 4b866c6..0000000 --- a/docs/html/search/variables_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_c.js b/docs/html/search/variables_c.js deleted file mode 100644 index df20489..0000000 --- a/docs/html/search/variables_c.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['tree1_249',['tree1',['../structedge.html#a691a39efbffc566e6d86d01c4858f54a',1,'edge::tree1()'],['../structedge2.html#ad708c186ae678c61094235cf16c5800a',1,'edge2::tree1()']]], - ['tree2_250',['tree2',['../structedge.html#ab7d029eeb2b522e8f81373450c476741',1,'edge::tree2()'],['../structedge2.html#a3155914d13a029d020cdbc431e345f2b',1,'edge2::tree2()']]] -]; diff --git a/docs/html/search/variables_d.html b/docs/html/search/variables_d.html deleted file mode 100644 index 84d878b..0000000 --- a/docs/html/search/variables_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_d.js b/docs/html/search/variables_d.js deleted file mode 100644 index 6521bde..0000000 --- a/docs/html/search/variables_d.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['vertexmin_251',['vertexMin',['../structvertex.html#a02e22a2c9888862e832740689849d197',1,'vertex']]] -]; diff --git a/docs/html/search/variables_e.html b/docs/html/search/variables_e.html deleted file mode 100644 index b0d9b7b..0000000 --- a/docs/html/search/variables_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_e.js b/docs/html/search/variables_e.js deleted file mode 100644 index 17a391f..0000000 --- a/docs/html/search/variables_e.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['x_252',['x',['../structposition.html#a0ab4d1279ca59c4e71d543144a4ea98f',1,'position']]] -]; diff --git a/docs/html/search/variables_f.html b/docs/html/search/variables_f.html deleted file mode 100644 index a708dbf..0000000 --- a/docs/html/search/variables_f.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_f.js b/docs/html/search/variables_f.js deleted file mode 100644 index b679667..0000000 --- a/docs/html/search/variables_f.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['y_253',['y',['../structposition.html#a4c8f3776329f75007608235aae679e8a',1,'position']]] -]; diff --git a/docs/html/splitbar.png b/docs/html/splitbar.png deleted file mode 100644 index fe895f2c58179b471a22d8320b39a4bd7312ec8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T diff --git a/docs/html/stat_8c.html b/docs/html/stat_8c.html deleted file mode 100644 index b55acb0..0000000 --- a/docs/html/stat_8c.html +++ /dev/null @@ -1,548 +0,0 @@ - - - - - - - -Project 2022: src/stat.c File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    stat.c File Reference
    -
    -
    -
    #include "../include/options.h"
    -#include "../include/struct.h"
    -#include "../include/stat.h"
    -#include "../include/algo.h"
    -#include <stdio.h>
    -#include "../include/fonctions.h"
    -#include "../include/pile.h"
    -#include "../include/array-list.h"
    -
    -Include dependency graph for stat.c:
    -
    -
    - -
    -
    - - - -

    -Macros

    #define INFINI   4000000
     
    - - - - - - - - - - - - - - - - -

    -Functions

    double weightMinimumSpanningTree (edge *MST, size_t size)
     renvoie le poids de l'arbre recouvrant minimal passé en paramètre More...
     
    void stat (opt handlingOptions, edge *MST, size_t size, tree *forest)
     
    edge2otherMST (edge *MST, size_t size, tree *forest)
     
    nodenewMST (edge2 *MST, size_t size)
     
    double exentricityVertex (node *MST, size_t size, size_t current_tree, tree *forest, size_t *excentricVertex)
     
    void freeNode (node *listofnodes, size_t size)
     
    double diameterMST (edge *MST, tree *forest, size_t size)
     
    -

    Macro Definition Documentation

    - -

    ◆ INFINI

    - -
    -
    - - - - -
    #define INFINI   4000000
    -
    - -
    -
    -

    Function Documentation

    - -

    ◆ diameterMST()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    double diameterMST (edgeMST,
    treeforest,
    size_t size 
    )
    -
    -
    129  { //size correspond à la taille de forest
    -
    130  edge2* othermst = otherMST(MST, size, forest);
    -
    131  node* newmst = newMST(othermst, size);
    -
    132 
    -
    133  free(othermst);
    -
    134  size_t v = 0, w = 0;
    -
    135  exentricityVertex(newmst, size, 0, forest, &v);
    -
    136  double excentricity = exentricityVertex(newmst, size, v, forest, &w);
    -
    137 
    -
    138  freeNode(newmst, size);
    -
    139  return RAYON*sqrt(excentricity);
    -
    140 }
    -
    -
    -
    - -

    ◆ exentricityVertex()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    double exentricityVertex (nodeMST,
    size_t size,
    size_t current_tree,
    treeforest,
    size_t * excentricVertex 
    )
    -
    -
    83  {
    -
    84  double excentricity = 0;
    -
    85  double distance[size];
    -
    86  for (size_t i = 0; i<size; i++){
    -
    87  distance[i] = INFINI;
    -
    88  }
    -
    89  distance[current_tree] = 0;
    -
    90 
    -
    91  pile_t* pile = pile_create();
    -
    92  size_t *s = create_size_t(current_tree);
    -
    93  push(pile, s);
    -
    94 
    -
    95  while (!is_empty(pile)){
    -
    96  void* vertex = pop(pile);
    -
    97  size_t x = *((size_t*)vertex);
    -
    98  free(vertex);
    -
    99 
    -
    100  for (size_t i = 0; i<list_size(MST[x].neighbors); i++){
    -
    101  size_t *y = create_size_t(*((size_t*)list_get(MST[x].neighbors, i)));
    -
    102 
    -
    103  if (distance[*y] == INFINI){
    -
    104  push(pile, y);
    -
    105  distance[*y] = distance[x] + distanceTrees(&forest[x], &forest[*y]);
    -
    106  if (distance[*y] > excentricity){
    -
    107  excentricity = distance[*y];
    -
    108  *excentricVertex = *y;
    -
    109  }
    -
    110 
    -
    111  }
    -
    112  else{
    -
    113  free(y);
    -
    114  }
    -
    115  }
    -
    116  }
    -
    117  pile_free(pile);
    -
    118  return excentricity;
    -
    119 }
    -
    -
    -
    - -

    ◆ freeNode()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void freeNode (nodelistofnodes,
    size_t size 
    )
    -
    -
    121  {
    -
    122  for (size_t i = 0; i<size; i++){
    -
    123  list_free(listofnodes[i].neighbors);
    -
    124  }
    -
    125  free(listofnodes);
    -
    126 }
    -
    -
    -
    - -

    ◆ newMST()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    node* newMST (edge2MST,
    size_t size 
    )
    -
    -
    59  {
    -
    60  node* newmst = malloc(size*sizeof(*newmst));
    -
    61  if (newmst == NULL){
    -
    62  fprintf(stderr, "Allocation error in newmst\n");
    -
    63  exit(1);
    -
    64  }
    -
    65 
    -
    66  for (size_t i = 0; i<size; i++){
    -
    67  newmst[i].neighbors = list_create();
    -
    68  }
    -
    69 
    -
    70  size_t currenttree1, currenttree2;
    -
    71  for (size_t i = 0; i<size - 1; i++){
    -
    72  currenttree1 = MST[i].tree1;
    -
    73  currenttree2 = MST[i].tree2;
    -
    74 
    -
    75  list_append(newmst[currenttree1].neighbors, create_size_t(currenttree2));
    -
    76  list_append(newmst[currenttree2].neighbors, create_size_t(currenttree1));
    -
    77 
    -
    78  }
    -
    79 
    -
    80  return newmst;
    -
    81 }
    -
    -
    -
    - -

    ◆ otherMST()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    edge2* otherMST (edgeMST,
    size_t size,
    treeforest 
    )
    -
    -
    44  { //size correspond au nombre d'arbres ie la taille de forest
    -
    45  edge2* otherMST = malloc((size - 1)*sizeof(*otherMST));
    -
    46  if (otherMST == NULL){
    -
    47  fprintf(stderr, "Allocation error in generateMST\n");
    -
    48  exit(1);
    -
    49  }
    -
    50 
    -
    51  for (size_t i = 0; i<size - 1; i++){
    -
    52  otherMST[i].tree1 = (size_t)(MST[i].tree1 - forest);
    -
    53  otherMST[i].tree2 = (size_t)(MST[i].tree2 - forest);
    -
    54  }
    -
    55 
    -
    56  return otherMST;
    -
    57 }
    -
    -
    -
    - -

    ◆ stat()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void stat (opt handlingOptions,
    edgeMST,
    size_t size,
    treeforest 
    )
    -
    -
    27  {
    -
    28 
    -
    29  if(handlingOptions.stat == 1) {
    -
    30 
    -
    31  printf("number of trees : %ld\n",size);
    -
    32  printf("degré moyen : %ld/%ld soit %lf\n",2*(size-1),size, 2*(size-1)/(double)size);
    -
    33 
    -
    34  double weight = weightMinimumSpanningTree(MST, size - 1);
    -
    35  printf(" weight : %lf\n",weight);
    -
    36 
    -
    37  printf("Le diamètre du graphe vaut %f\n", diameterMST(MST, forest, size));
    -
    38 
    -
    39  }
    -
    40 
    -
    41 }
    -
    -
    -
    - -

    ◆ weightMinimumSpanningTree()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    double weightMinimumSpanningTree (edgeMST,
    size_t size 
    )
    -
    - -

    renvoie le poids de l'arbre recouvrant minimal passé en paramètre

    -
    Parameters
    - - - -
    MSTles aretes constituant l'arbre recouvrant minimal
    sizesa taille
    -
    -
    -
    Returns
    double le poids de l'arbre recouvrant minimal
    -
    19  {
    -
    20  double weight = 0;
    -
    21  for (size_t i = 0; i<size; i++){
    -
    22  weight += distanceTrees(MST[i].tree1, MST[i].tree2);
    -
    23  }
    -
    24  return RAYON*sqrt(weight);
    -
    25 }
    -
    -
    -
    -
    -
    -
    size_t list_size(list_t *it)
    revoie la taille de la liste
    Definition: array-list.c:54
    -
    void * pop(pile_t *pile)
    Definition: pile.c:10
    -
    double distanceTrees(tree *tree1, tree *tree2)
    Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude...
    Definition: fonctions.c:50
    -
    void list_free(list_t *it)
    libère la liste et tous ses éléments
    Definition: array-list.c:84
    -
    int push(pile_t *pile, void *elm)
    Definition: pile.c:15
    -
    double exentricityVertex(node *MST, size_t size, size_t current_tree, tree *forest, size_t *excentricVertex)
    Definition: stat.c:83
    -
    structure définissant un noeud
    Definition: struct.h:111
    -
    list_t * list_create(void)
    Crée une liste vide.
    Definition: array-list.c:11
    -
    #define INFINI
    Definition: stat.c:10
    -
    Definition: array-list.c:5
    -
    void pile_free(pile_t *pile)
    Definition: pile.c:24
    -
    void freeNode(node *listofnodes, size_t size)
    Definition: stat.c:121
    -
    #define RAYON
    Definition: fonctions.h:7
    -
    void * list_get(list_t *it, int pos)
    retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt
    Definition: array-list.c:46
    -
    double weightMinimumSpanningTree(edge *MST, size_t size)
    renvoie le poids de l'arbre recouvrant minimal passé en paramètre
    Definition: stat.c:19
    -
    int list_append(list_t *it, void *element_to_append)
    Ajoute un élément à la fin de la liste.
    Definition: array-list.c:27
    -
    node * newMST(edge2 *MST, size_t size)
    Definition: stat.c:59
    -
    double diameterMST(edge *MST, tree *forest, size_t size)
    Definition: stat.c:129
    -
    int stat
    Definition: struct.h:33
    -
    int is_empty(pile_t *pile)
    Definition: pile.c:19
    -
    size_t * create_size_t(size_t i)
    Definition: array-list.c:92
    -
    edge2 * otherMST(edge *MST, size_t size, tree *forest)
    Definition: stat.c:44
    -
    size_t tree1
    Definition: struct.h:89
    -
    size_t tree2
    Definition: struct.h:90
    -
    pile_t * pile_create(void)
    Definition: pile.c:6
    -
    2ième structure définissant une arête (pour options)
    Definition: struct.h:88
    -
    list_t * neighbors
    Definition: struct.h:112
    -
    structure représentant un sommet pour la fonction minimumSpanningTree
    Definition: struct.h:98
    - - - - diff --git a/docs/html/stat_8c.js b/docs/html/stat_8c.js deleted file mode 100644 index d241a12..0000000 --- a/docs/html/stat_8c.js +++ /dev/null @@ -1,11 +0,0 @@ -var stat_8c = -[ - [ "INFINI", "stat_8c.html#a16e936a5369064315b9b8ec4d7a5ba3a", null ], - [ "diameterMST", "stat_8c.html#a3a4088f413e9af42108f6ae69216f437", null ], - [ "exentricityVertex", "stat_8c.html#a44114f31b939b70a07a9e7f31f0d5543", null ], - [ "freeNode", "stat_8c.html#a78e5c527c5555279fd636505eded53bd", null ], - [ "newMST", "stat_8c.html#a80e751c1c69905d0782bb96e72c14fd0", null ], - [ "otherMST", "stat_8c.html#af091f8afb1cc48aec126c734b826ccf8", null ], - [ "stat", "stat_8c.html#ad0504264256ba096bb799d387f11682d", null ], - [ "weightMinimumSpanningTree", "stat_8c.html#a4e0e5478beb77cde62d2536d5fbfe69d", null ] -]; \ No newline at end of file diff --git a/docs/html/stat_8c__incl.dot b/docs/html/stat_8c__incl.dot deleted file mode 100644 index 4942328..0000000 --- a/docs/html/stat_8c__incl.dot +++ /dev/null @@ -1,38 +0,0 @@ -digraph "src/stat.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="../include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="../include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node7 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node8 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [label="../include/pile.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8h.html",tooltip=" "]; - Node11 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/stat_8h.html b/docs/html/stat_8h.html deleted file mode 100644 index d318dae..0000000 --- a/docs/html/stat_8h.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - - - -Project 2022: include/stat.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    stat.h File Reference
    -
    -
    -
    #include <stdio.h>
    -#include "struct.h"
    -
    -Include dependency graph for stat.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - - - - - - -

    -Functions

    void stat (opt handlingOptions, edge *MST, size_t size, tree *forest)
     
    double weightMinimumSpanningTree (edge *MST, size_t size)
     renvoie le poids de l'arbre recouvrant minimal passé en paramètre More...
     
    double diameterMST (edge *MST, tree *forest, size_t size)
     
    -

    Function Documentation

    - -

    ◆ diameterMST()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    double diameterMST (edgeMST,
    treeforest,
    size_t size 
    )
    -
    -
    129  { //size correspond à la taille de forest
    -
    130  edge2* othermst = otherMST(MST, size, forest);
    -
    131  node* newmst = newMST(othermst, size);
    -
    132 
    -
    133  free(othermst);
    -
    134  size_t v = 0, w = 0;
    -
    135  exentricityVertex(newmst, size, 0, forest, &v);
    -
    136  double excentricity = exentricityVertex(newmst, size, v, forest, &w);
    -
    137 
    -
    138  freeNode(newmst, size);
    -
    139  return RAYON*sqrt(excentricity);
    -
    140 }
    -
    -
    -
    - -

    ◆ stat()

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void stat (opt handlingOptions,
    edgeMST,
    size_t size,
    treeforest 
    )
    -
    -
    27  {
    -
    28 
    -
    29  if(handlingOptions.stat == 1) {
    -
    30 
    -
    31  printf("number of trees : %ld\n",size);
    -
    32  printf("degré moyen : %ld/%ld soit %lf\n",2*(size-1),size, 2*(size-1)/(double)size);
    -
    33 
    -
    34  double weight = weightMinimumSpanningTree(MST, size - 1);
    -
    35  printf(" weight : %lf\n",weight);
    -
    36 
    -
    37  printf("Le diamètre du graphe vaut %f\n", diameterMST(MST, forest, size));
    -
    38 
    -
    39  }
    -
    40 
    -
    41 }
    -
    -
    -
    - -

    ◆ weightMinimumSpanningTree()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    double weightMinimumSpanningTree (edgeMST,
    size_t size 
    )
    -
    - -

    renvoie le poids de l'arbre recouvrant minimal passé en paramètre

    -
    Parameters
    - - - -
    MSTles aretes constituant l'arbre recouvrant minimal
    sizesa taille
    -
    -
    -
    Returns
    double le poids de l'arbre recouvrant minimal
    -
    19  {
    -
    20  double weight = 0;
    -
    21  for (size_t i = 0; i<size; i++){
    -
    22  weight += distanceTrees(MST[i].tree1, MST[i].tree2);
    -
    23  }
    -
    24  return RAYON*sqrt(weight);
    -
    25 }
    -
    -
    -
    -
    -
    -
    double distanceTrees(tree *tree1, tree *tree2)
    Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude...
    Definition: fonctions.c:50
    -
    double exentricityVertex(node *MST, size_t size, size_t current_tree, tree *forest, size_t *excentricVertex)
    Definition: stat.c:83
    -
    structure définissant un noeud
    Definition: struct.h:111
    -
    void freeNode(node *listofnodes, size_t size)
    Definition: stat.c:121
    -
    #define RAYON
    Definition: fonctions.h:7
    -
    double weightMinimumSpanningTree(edge *MST, size_t size)
    renvoie le poids de l'arbre recouvrant minimal passé en paramètre
    Definition: stat.c:19
    -
    node * newMST(edge2 *MST, size_t size)
    Definition: stat.c:59
    -
    double diameterMST(edge *MST, tree *forest, size_t size)
    Definition: stat.c:129
    -
    int stat
    Definition: struct.h:33
    -
    edge2 * otherMST(edge *MST, size_t size, tree *forest)
    Definition: stat.c:44
    -
    2ième structure définissant une arête (pour options)
    Definition: struct.h:88
    - - - - diff --git a/docs/html/stat_8h.js b/docs/html/stat_8h.js deleted file mode 100644 index c913786..0000000 --- a/docs/html/stat_8h.js +++ /dev/null @@ -1,6 +0,0 @@ -var stat_8h = -[ - [ "diameterMST", "stat_8h.html#a3a4088f413e9af42108f6ae69216f437", null ], - [ "stat", "stat_8h.html#ad0504264256ba096bb799d387f11682d", null ], - [ "weightMinimumSpanningTree", "stat_8h.html#a4e0e5478beb77cde62d2536d5fbfe69d", null ] -]; \ No newline at end of file diff --git a/docs/html/stat_8h__dep__incl.dot b/docs/html/stat_8h__dep__incl.dot deleted file mode 100644 index a7f12e1..0000000 --- a/docs/html/stat_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/stat.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/html/stat_8h__incl.dot b/docs/html/stat_8h__incl.dot deleted file mode 100644 index 35329a8..0000000 --- a/docs/html/stat_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/stat.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/stat_8h_source.html b/docs/html/stat_8h_source.html deleted file mode 100644 index 281533d..0000000 --- a/docs/html/stat_8h_source.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - -Project 2022: include/stat.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    stat.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 
    -
    3 #include <stdio.h>
    -
    4 #include "struct.h"
    -
    5 
    -
    6 void stat(opt handlingOptions, edge * MST,size_t size, tree* forest);
    -
    7 
    -
    8 
    -
    16 double weightMinimumSpanningTree(edge* MST, size_t size);
    -
    17 
    -
    18 double diameterMST(edge* MST, tree* forest, size_t size);
    -
    -
    -
    void stat(opt handlingOptions, edge *MST, size_t size, tree *forest)
    Definition: stat.c:27
    -
    double diameterMST(edge *MST, tree *forest, size_t size)
    Definition: stat.c:129
    -
    structure définissant une arête
    Definition: struct.h:75
    -
    double weightMinimumSpanningTree(edge *MST, size_t size)
    renvoie le poids de l'arbre recouvrant minimal passé en paramètre
    Definition: stat.c:19
    -
    gestion des options en argument
    Definition: struct.h:31
    -
    size_t size
    Definition: array-list.c:8
    - -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    - - - - diff --git a/docs/html/struct_8h.html b/docs/html/struct_8h.html deleted file mode 100644 index 4a0f0d6..0000000 --- a/docs/html/struct_8h.html +++ /dev/null @@ -1,326 +0,0 @@ - - - - - - - -Project 2022: include/struct.h File Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    struct.h File Reference
    -
    -
    -
    #include <stdio.h>
    -#include "array-list.h"
    -
    -Include dependency graph for struct.h:
    -
    -
    - -
    -
    -This graph shows which files directly or indirectly include this file:
    -
    -
    - -
    -
    -

    Go to the source code of this file.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Data Structures

    struct  position
     structure donnant la localisation d'un arbre More...
     
    struct  tree
     structure informations importantes concernant un arbre More...
     
    struct  opt
     gestion des options en argument More...
     
    struct  corres_genus
     structure associant une genre à une identifiant More...
     
    struct  tab_genus
     structure de tableau et taille associée More...
     
    struct  edge
     structure définissant une arête More...
     
    struct  edge2
     2ième structure définissant une arête (pour options) More...
     
    struct  vertex
     structure représentant un sommet pour la fonction minimumSpanningTree More...
     
    struct  node
     structure définissant un noeud More...
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Typedefs

    typedef struct position position
     structure donnant la localisation d'un arbre More...
     
    typedef struct tree tree
     structure informations importantes concernant un arbre More...
     
    typedef struct opt opt
     gestion des options en argument More...
     
    typedef struct corres_genus corres_genus
     structure associant une genre à une identifiant More...
     
    typedef struct tab_genus tab_genus
     structure de tableau et taille associée More...
     
    typedef struct edge edge
     structure définissant une arête More...
     
    typedef struct edge2 edge2
     2ième structure définissant une arête (pour options) More...
     
    typedef struct vertex vertex
     structure représentant un sommet pour la fonction minimumSpanningTree More...
     
    typedef struct node node
     structure définissant un noeud More...
     
    -

    Typedef Documentation

    - -

    ◆ corres_genus

    - -
    -
    - - - - -
    typedef struct corres_genus corres_genus
    -
    - -

    structure associant une genre à une identifiant

    - -
    -
    - -

    ◆ edge

    - -
    -
    - - - - -
    typedef struct edge edge
    -
    - -

    structure définissant une arête

    - -
    -
    - -

    ◆ edge2

    - -
    -
    - - - - -
    typedef struct edge2 edge2
    -
    - -

    2ième structure définissant une arête (pour options)

    - -
    -
    - -

    ◆ node

    - -
    -
    - - - - -
    typedef struct node node
    -
    - -

    structure définissant un noeud

    - -
    -
    - -

    ◆ opt

    - -
    -
    - - - - -
    typedef struct opt opt
    -
    - -

    gestion des options en argument

    - -
    -
    - -

    ◆ position

    - -
    -
    - - - - -
    typedef struct position position
    -
    - -

    structure donnant la localisation d'un arbre

    - -
    -
    - -

    ◆ tab_genus

    - -
    -
    - - - - -
    typedef struct tab_genus tab_genus
    -
    - -

    structure de tableau et taille associée

    - -
    -
    - -

    ◆ tree

    - -
    -
    - - - - -
    typedef struct tree tree
    -
    - -

    structure informations importantes concernant un arbre

    - -
    -
    - -

    ◆ vertex

    - -
    -
    - - - - -
    typedef struct vertex vertex
    -
    - -

    structure représentant un sommet pour la fonction minimumSpanningTree

    - -
    -
    -
    -
    - - - - diff --git a/docs/html/struct_8h.js b/docs/html/struct_8h.js deleted file mode 100644 index 6259e25..0000000 --- a/docs/html/struct_8h.js +++ /dev/null @@ -1,21 +0,0 @@ -var struct_8h = -[ - [ "position", "structposition.html", "structposition" ], - [ "tree", "structtree.html", "structtree" ], - [ "opt", "structopt.html", "structopt" ], - [ "corres_genus", "structcorres__genus.html", "structcorres__genus" ], - [ "tab_genus", "structtab__genus.html", "structtab__genus" ], - [ "edge", "structedge.html", "structedge" ], - [ "edge2", "structedge2.html", "structedge2" ], - [ "vertex", "structvertex.html", "structvertex" ], - [ "node", "structnode.html", "structnode" ], - [ "corres_genus", "struct_8h.html#ad545d83bb2720eaacdc619c17ed9f735", null ], - [ "edge", "struct_8h.html#a62e8ac20ad6459019691857781e5a4da", null ], - [ "edge2", "struct_8h.html#a5dd23cff3c78c4d93323551348659bbe", null ], - [ "node", "struct_8h.html#af4aeda155dbe167f1c1cf38cb65bf324", null ], - [ "opt", "struct_8h.html#ab2e02685ec24164f632d61af06ccddc1", null ], - [ "position", "struct_8h.html#ae95ed9c09d4ff44297273224ccfbe1dd", null ], - [ "tab_genus", "struct_8h.html#a8cd1c3b0a4957b16fb034faed3fb5fe1", null ], - [ "tree", "struct_8h.html#a434e35ec9d53f159cc82d020517a98bb", null ], - [ "vertex", "struct_8h.html#ad0f5923379e298b172ea5ab8ae5b0eeb", null ] -]; \ No newline at end of file diff --git a/docs/html/struct_8h__dep__incl.dot b/docs/html/struct_8h__dep__incl.dot deleted file mode 100644 index 87f2040..0000000 --- a/docs/html/struct_8h__dep__incl.dot +++ /dev/null @@ -1,56 +0,0 @@ -digraph "include/struct.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node2 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node2 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node4 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node2 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node5 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; - Node1 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node6 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node6 -> Node7 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node7 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node6 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node8 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node8 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node8 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node9 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node8 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node10 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node11 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node11 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node12 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node12 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node12 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node13 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; - Node1 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node14 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node14 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node15 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node15 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node15 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node15 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node16 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node16 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8c.html",tooltip=" "]; - Node1 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/struct_8h__incl.dot b/docs/html/struct_8h__incl.dot deleted file mode 100644 index 3b9d38e..0000000 --- a/docs/html/struct_8h__incl.dot +++ /dev/null @@ -1,12 +0,0 @@ -digraph "include/struct.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; - Node3 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"]; -} diff --git a/docs/html/struct_8h_source.html b/docs/html/struct_8h_source.html deleted file mode 100644 index d52a4ca..0000000 --- a/docs/html/struct_8h_source.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - - -Project 2022: include/struct.h Source File - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    struct.h
    -
    -
    -Go to the documentation of this file.
    1 #pragma once
    -
    2 #include <stdio.h>
    -
    3 #include "array-list.h"
    -
    4 
    -
    8 typedef struct position{
    -
    10  double x;
    -
    12  double y;
    -
    13 } position;
    -
    14 
    -
    18 typedef struct tree{
    - -
    22  short genus;
    -
    24  short height;
    -
    25 
    -
    26 } tree;
    -
    27 
    -
    31 typedef struct opt{
    -
    32 
    -
    33  int stat; //s
    -
    34  int help; //a
    -
    35  char *in_path; //i
    -
    36  char *out_path; //o
    -
    37  char *span_tree_path; //t
    -
    38  char *location; //l
    -
    39  char *limit_value; //f
    -
    40  char *genus; //g
    -
    41  char *height; //h
    -
    42  char *conserve; //c
    -
    43  char *recharge; //r
    -
    44 
    -
    45 
    -
    46 }opt;
    -
    47 
    -
    51 typedef struct corres_genus{
    -
    53  char genus[30];
    -
    55  char id;
    -
    56 
    -
    57  } corres_genus;
    -
    58 
    -
    62  typedef struct tab_genus{
    - -
    66  int size;
    -
    67 
    -
    68  }tab_genus;
    -
    69 
    -
    70 
    -
    75  typedef struct edge{
    - - -
    80 } edge;
    -
    81 
    -
    82 
    -
    83 
    -
    88 typedef struct edge2{
    -
    89  size_t tree1;
    -
    90  size_t tree2;
    -
    91 } edge2;
    -
    92 
    -
    93 
    -
    98 typedef struct vertex{
    - -
    102  double distMin;
    -
    104  size_t vertexMin;
    -
    105  } vertex;
    -
    106 
    -
    111 typedef struct node{
    - -
    113 } node;
    -
    114 
    -
    115 
    -
    116 
    -
    117 
    -
    -
    -
    struct corres_genus corres_genus
    structure associant une genre à une identifiant
    -
    struct tree tree
    structure informations importantes concernant un arbre
    -
    struct tab_genus tab_genus
    structure de tableau et taille associée
    -
    double y
    longitude position arbre (en degré)
    Definition: struct.h:12
    -
    short height
    hauteur de l'arbre
    Definition: struct.h:24
    -
    size_t vertexMin
    le sommet réalisant cette distance
    Definition: struct.h:104
    -
    structure définissant un noeud
    Definition: struct.h:111
    -
    char genus[30]
    genre de l'arbre (string)
    Definition: struct.h:53
    -
    position geoloc
    struture correspondant à la position de l'arbre
    Definition: struct.h:20
    -
    double distMin
    la distance minimale aux autres sommets enregistrée
    Definition: struct.h:102
    -
    structure définissant une arête
    Definition: struct.h:75
    -
    char * recharge
    Definition: struct.h:43
    -
    tree * tree1
    premier arbre connecté
    Definition: struct.h:77
    -
    Definition: array-list.c:5
    -
    char * limit_value
    Definition: struct.h:39
    -
    char * location
    Definition: struct.h:38
    -
    tree * tree2
    deuxième arbre connecté
    Definition: struct.h:79
    -
    struct vertex vertex
    structure représentant un sommet pour la fonction minimumSpanningTree
    -
    char * in_path
    Definition: struct.h:35
    -
    double x
    latitude position arbre (en degré)
    Definition: struct.h:10
    -
    gestion des options en argument
    Definition: struct.h:31
    -
    char id
    identifiant associé
    Definition: struct.h:55
    -
    struct edge2 edge2
    2ième structure définissant une arête (pour options)
    -
    struct node node
    structure définissant un noeud
    -
    char * conserve
    Definition: struct.h:42
    - -
    structure associant une genre à une identifiant
    Definition: struct.h:51
    -
    int stat
    Definition: struct.h:33
    -
    struct edge edge
    structure définissant une arête
    -
    char * genus
    Definition: struct.h:40
    -
    char * height
    Definition: struct.h:41
    -
    int help
    Definition: struct.h:34
    -
    struct position position
    structure donnant la localisation d'un arbre
    -
    structure informations importantes concernant un arbre
    Definition: struct.h:18
    -
    structure de tableau et taille associée
    Definition: struct.h:62
    -
    short isInComponent
    1 si le sommet est déjà dans la composante
    Definition: struct.h:100
    -
    short genus
    genre de l'arbre
    Definition: struct.h:22
    -
    struct opt opt
    gestion des options en argument
    -
    size_t tree1
    Definition: struct.h:89
    -
    corres_genus genuses[255]
    tableau de paires genre/id correspondant
    Definition: struct.h:64
    -
    int size
    nombre d'éléments dans le tableau
    Definition: struct.h:66
    -
    structure donnant la localisation d'un arbre
    Definition: struct.h:8
    -
    size_t tree2
    Definition: struct.h:90
    -
    2ième structure définissant une arête (pour options)
    Definition: struct.h:88
    -
    char * out_path
    Definition: struct.h:36
    -
    list_t * neighbors
    Definition: struct.h:112
    -
    char * span_tree_path
    Definition: struct.h:37
    -
    structure représentant un sommet pour la fonction minimumSpanningTree
    Definition: struct.h:98
    - - - - diff --git a/docs/html/structarbre.html b/docs/html/structarbre.html deleted file mode 100644 index 98cba2c..0000000 --- a/docs/html/structarbre.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - -Project 2022: arbre Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    arbre Struct Reference
    -
    -
    - -

    structure informations importantes concernant un arbre - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for arbre:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - - - - -

    -Data Fields

    char genre
     genre de l'arbre More...
     
    short hauteur
     hauteur de l'arbre More...
     
    position geoloc
     struture correspondant à la position de l'arbre More...
     
    -

    Detailed Description

    -

    structure informations importantes concernant un arbre

    -

    Field Documentation

    - -

    ◆ genre

    - -
    -
    - - - - -
    char arbre::genre
    -
    - -

    genre de l'arbre

    - -
    -
    - -

    ◆ geoloc

    - -
    -
    - - - - -
    position arbre::geoloc
    -
    - -

    struture correspondant à la position de l'arbre

    - -
    -
    - -

    ◆ hauteur

    - -
    -
    - - - - -
    short arbre::hauteur
    -
    - -

    hauteur de l'arbre

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structarbre.js b/docs/html/structarbre.js deleted file mode 100644 index a4983fe..0000000 --- a/docs/html/structarbre.js +++ /dev/null @@ -1,6 +0,0 @@ -var structarbre = -[ - [ "genre", "structarbre.html#a2571c6df0670411bce71b8b0b12513f3", null ], - [ "geoloc", "structarbre.html#aecd89264dfef578a64131e691c892059", null ], - [ "hauteur", "structarbre.html#afa0ece9f62565507f61e00a2f5804024", null ] -]; \ No newline at end of file diff --git a/docs/html/structarbre__coll__graph.dot b/docs/html/structarbre__coll__graph.dot deleted file mode 100644 index 1c60caa..0000000 --- a/docs/html/structarbre__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "arbre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{arbre\n|+ genre\l+ hauteur\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure informations importantes concernant un arbre"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/html/structarete.html b/docs/html/structarete.html deleted file mode 100644 index f5d7ce6..0000000 --- a/docs/html/structarete.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: arete Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    arete Struct Reference
    -
    -
    - -

    structure définissant une arête - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for arete:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    arbretree1
     premier arbre connecté More...
     
    arbretree2
     deuxième arbre connecté More...
     
    -

    Detailed Description

    -

    structure définissant une arête

    -

    Field Documentation

    - -

    ◆ tree1

    - -
    -
    - - - - -
    arbre* arete::tree1
    -
    - -

    premier arbre connecté

    - -
    -
    - -

    ◆ tree2

    - -
    -
    - - - - -
    arbre* arete::tree2
    -
    - -

    deuxième arbre connecté

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structarete.js b/docs/html/structarete.js deleted file mode 100644 index 07cf194..0000000 --- a/docs/html/structarete.js +++ /dev/null @@ -1,5 +0,0 @@ -var structarete = -[ - [ "tree1", "structarete.html#a1287880e754828d042c5e2b51341b32e", null ], - [ "tree2", "structarete.html#ab526bf5183ab83045f51330ed0090a3c", null ] -]; \ No newline at end of file diff --git a/docs/html/structarete__coll__graph.dot b/docs/html/structarete__coll__graph.dot deleted file mode 100644 index ed17bd8..0000000 --- a/docs/html/structarete__coll__graph.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "arete" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{arete\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant une arête"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +tree1\n+tree2" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{arbre\n|+ genre\l+ hauteur\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structarbre.html",tooltip="structure informations importantes concernant un arbre"]; - Node3 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond",fontname="Helvetica"]; - Node3 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/html/structcorres__genre.html b/docs/html/structcorres__genre.html deleted file mode 100644 index 55dd8f3..0000000 --- a/docs/html/structcorres__genre.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: corres_genre Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    corres_genre Struct Reference
    -
    -
    - -

    structure associant une genre à une identifiant - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for corres_genre:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    char genre [30]
     genre de l'arbre (string) More...
     
    char id
     identifiant associé More...
     
    -

    Detailed Description

    -

    structure associant une genre à une identifiant

    -

    Field Documentation

    - -

    ◆ genre

    - -
    -
    - - - - -
    char corres_genre::genre[30]
    -
    - -

    genre de l'arbre (string)

    - -
    -
    - -

    ◆ id

    - -
    -
    - - - - -
    char corres_genre::id
    -
    - -

    identifiant associé

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structcorres__genre.js b/docs/html/structcorres__genre.js deleted file mode 100644 index 72a36d0..0000000 --- a/docs/html/structcorres__genre.js +++ /dev/null @@ -1,5 +0,0 @@ -var structcorres__genre = -[ - [ "genre", "structcorres__genre.html#a490c0c72cb3484f2e9f5e24e6bdff04a", null ], - [ "id", "structcorres__genre.html#a9e7c2900ac56c41b18943c0bf8b174df", null ] -]; \ No newline at end of file diff --git a/docs/html/structcorres__genre__coll__graph.dot b/docs/html/structcorres__genre__coll__graph.dot deleted file mode 100644 index e910e46..0000000 --- a/docs/html/structcorres__genre__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "corres_genre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{corres_genre\n|+ genre\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/html/structcorres__genus.html b/docs/html/structcorres__genus.html deleted file mode 100644 index 035769c..0000000 --- a/docs/html/structcorres__genus.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: corres_genus Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    corres_genus Struct Reference
    -
    -
    - -

    structure associant une genre à une identifiant - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for corres_genus:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    char genus [30]
     genre de l'arbre (string) More...
     
    char id
     identifiant associé More...
     
    -

    Detailed Description

    -

    structure associant une genre à une identifiant

    -

    Field Documentation

    - -

    ◆ genus

    - -
    -
    - - - - -
    char corres_genus::genus[30]
    -
    - -

    genre de l'arbre (string)

    - -
    -
    - -

    ◆ id

    - -
    -
    - - - - -
    char corres_genus::id
    -
    - -

    identifiant associé

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structcorres__genus.js b/docs/html/structcorres__genus.js deleted file mode 100644 index 330d3d4..0000000 --- a/docs/html/structcorres__genus.js +++ /dev/null @@ -1,5 +0,0 @@ -var structcorres__genus = -[ - [ "genus", "structcorres__genus.html#a55991b88972006dcf7c66a4fe81b2589", null ], - [ "id", "structcorres__genus.html#a094318cd3b28c4f276272b3b2ba17f27", null ] -]; \ No newline at end of file diff --git a/docs/html/structcorres__genus__coll__graph.dot b/docs/html/structcorres__genus__coll__graph.dot deleted file mode 100644 index 8ee0d7b..0000000 --- a/docs/html/structcorres__genus__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "corres_genus" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{corres_genus\n|+ genus\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/html/structedge.html b/docs/html/structedge.html deleted file mode 100644 index 3824f7e..0000000 --- a/docs/html/structedge.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: edge Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    edge Struct Reference
    -
    -
    - -

    structure définissant une arête - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for edge:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    treetree1
     premier arbre connecté More...
     
    treetree2
     deuxième arbre connecté More...
     
    -

    Detailed Description

    -

    structure définissant une arête

    -

    Field Documentation

    - -

    ◆ tree1

    - -
    -
    - - - - -
    tree* edge::tree1
    -
    - -

    premier arbre connecté

    - -
    -
    - -

    ◆ tree2

    - -
    -
    - - - - -
    tree* edge::tree2
    -
    - -

    deuxième arbre connecté

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structedge.js b/docs/html/structedge.js deleted file mode 100644 index 185da4a..0000000 --- a/docs/html/structedge.js +++ /dev/null @@ -1,5 +0,0 @@ -var structedge = -[ - [ "tree1", "structedge.html#a691a39efbffc566e6d86d01c4858f54a", null ], - [ "tree2", "structedge.html#ab7d029eeb2b522e8f81373450c476741", null ] -]; \ No newline at end of file diff --git a/docs/html/structedge2.html b/docs/html/structedge2.html deleted file mode 100644 index a4373e0..0000000 --- a/docs/html/structedge2.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - - -Project 2022: edge2 Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    edge2 Struct Reference
    -
    -
    - -

    2ième structure définissant une arête (pour options) - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for edge2:
    -
    -
    Collaboration graph
    - -
    - - - - - - -

    -Data Fields

    size_t tree1
     
    size_t tree2
     
    -

    Detailed Description

    -

    2ième structure définissant une arête (pour options)

    -

    Field Documentation

    - -

    ◆ tree1

    - -
    -
    - - - - -
    size_t edge2::tree1
    -
    - -
    -
    - -

    ◆ tree2

    - -
    -
    - - - - -
    size_t edge2::tree2
    -
    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structedge2.js b/docs/html/structedge2.js deleted file mode 100644 index 21cbd2d..0000000 --- a/docs/html/structedge2.js +++ /dev/null @@ -1,5 +0,0 @@ -var structedge2 = -[ - [ "tree1", "structedge2.html#ad708c186ae678c61094235cf16c5800a", null ], - [ "tree2", "structedge2.html#a3155914d13a029d020cdbc431e345f2b", null ] -]; \ No newline at end of file diff --git a/docs/html/structedge2__coll__graph.dot b/docs/html/structedge2__coll__graph.dot deleted file mode 100644 index 161a7f2..0000000 --- a/docs/html/structedge2__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "edge2" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{edge2\n|+ tree1\l+ tree2\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="2ième structure définissant une arête (pour options)"]; -} diff --git a/docs/html/structedge__coll__graph.dot b/docs/html/structedge__coll__graph.dot deleted file mode 100644 index aa779a3..0000000 --- a/docs/html/structedge__coll__graph.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "edge" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{edge\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant une arête"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +tree1\n+tree2" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{tree\n|+ genus\l+ height\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtree.html",tooltip="structure informations importantes concernant un arbre"]; - Node3 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond",fontname="Helvetica"]; - Node3 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/html/structlist__t.html b/docs/html/structlist__t.html deleted file mode 100644 index cd2c875..0000000 --- a/docs/html/structlist__t.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - -Project 2022: list_t Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    list_t Struct Reference
    -
    -
    -
    -Collaboration diagram for list_t:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    void ** element
     
    size_t allocated
     
    size_t size
     
    -

    Field Documentation

    - -

    ◆ allocated

    - -
    -
    - - - - -
    size_t list_t::allocated
    -
    - -
    -
    - -

    ◆ element

    - -
    -
    - - - - -
    void** list_t::element
    -
    - -
    -
    - -

    ◆ size

    - -
    -
    - - - - -
    size_t list_t::size
    -
    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structlist__t.js b/docs/html/structlist__t.js deleted file mode 100644 index 4bb414f..0000000 --- a/docs/html/structlist__t.js +++ /dev/null @@ -1,6 +0,0 @@ -var structlist__t = -[ - [ "allocated", "structlist__t.html#a545866c10437e674417eed908a43846a", null ], - [ "element", "structlist__t.html#a50b00b979c754b66e735689d37b1fa4d", null ], - [ "size", "structlist__t.html#a5c985284293b9906f913542e36e40b41", null ] -]; \ No newline at end of file diff --git a/docs/html/structlist__t__coll__graph.dot b/docs/html/structlist__t__coll__graph.dot deleted file mode 100644 index 50e5403..0000000 --- a/docs/html/structlist__t__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "list_t" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{list_t\n|+ element\l+ allocated\l+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; -} diff --git a/docs/html/structnode.html b/docs/html/structnode.html deleted file mode 100644 index 87693d6..0000000 --- a/docs/html/structnode.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - - - -Project 2022: node Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    node Struct Reference
    -
    -
    - -

    structure définissant un noeud - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for node:
    -
    -
    Collaboration graph
    - -
    - - - - -

    -Data Fields

    list_tneighbors
     
    -

    Detailed Description

    -

    structure définissant un noeud

    -

    Field Documentation

    - -

    ◆ neighbors

    - -
    -
    - - - - -
    list_t* node::neighbors
    -
    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structnode.js b/docs/html/structnode.js deleted file mode 100644 index 681b5e8..0000000 --- a/docs/html/structnode.js +++ /dev/null @@ -1,4 +0,0 @@ -var structnode = -[ - [ "neighbors", "structnode.html#aa2af56ab31cad8ae60cb6482c6386d67", null ] -]; \ No newline at end of file diff --git a/docs/html/structnode__coll__graph.dot b/docs/html/structnode__coll__graph.dot deleted file mode 100644 index b6fde89..0000000 --- a/docs/html/structnode__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "node" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{node\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant un noeud"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +neighbors" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{list_t\n|+ element\l+ allocated\l+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structlist__t.html",tooltip=" "]; -} diff --git a/docs/html/structopt.html b/docs/html/structopt.html deleted file mode 100644 index e64651f..0000000 --- a/docs/html/structopt.html +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - -Project 2022: opt Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    opt Struct Reference
    -
    -
    - -

    gestion des options en argument - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for opt:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - -

    -Data Fields

    int stat
     
    int help
     
    char * in_path
     
    char * out_path
     
    char * span_tree_path
     
    char * location
     
    char * limit_value
     
    char * genus
     
    char * height
     
    char * conserve
     
    char * recharge
     
    -

    Detailed Description

    -

    gestion des options en argument

    -

    Field Documentation

    - -

    ◆ conserve

    - -
    -
    - - - - -
    char* opt::conserve
    -
    - -
    -
    - -

    ◆ genus

    - -
    -
    - - - - -
    char* opt::genus
    -
    - -
    -
    - -

    ◆ height

    - -
    -
    - - - - -
    char* opt::height
    -
    - -
    -
    - -

    ◆ help

    - -
    -
    - - - - -
    int opt::help
    -
    - -
    -
    - -

    ◆ in_path

    - -
    -
    - - - - -
    char* opt::in_path
    -
    - -
    -
    - -

    ◆ limit_value

    - -
    -
    - - - - -
    char* opt::limit_value
    -
    - -
    -
    - -

    ◆ location

    - -
    -
    - - - - -
    char* opt::location
    -
    - -
    -
    - -

    ◆ out_path

    - -
    -
    - - - - -
    char* opt::out_path
    -
    - -
    -
    - -

    ◆ recharge

    - -
    -
    - - - - -
    char* opt::recharge
    -
    - -
    -
    - -

    ◆ span_tree_path

    - -
    -
    - - - - -
    char* opt::span_tree_path
    -
    - -
    -
    - -

    ◆ stat

    - -
    -
    - - - - -
    int opt::stat
    -
    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structopt.js b/docs/html/structopt.js deleted file mode 100644 index 71dc218..0000000 --- a/docs/html/structopt.js +++ /dev/null @@ -1,14 +0,0 @@ -var structopt = -[ - [ "conserve", "structopt.html#a57d1c1dc92ba99df66d0fd603189bae3", null ], - [ "genus", "structopt.html#ab5b54f29a8bc5c4e1a2c84527aad8c00", null ], - [ "height", "structopt.html#ab74aec43a44b95b42fffc3319adb019f", null ], - [ "help", "structopt.html#af41d727a82e845ad5fd61173c9cc8831", null ], - [ "in_path", "structopt.html#a2809598faded69f650028625e2600379", null ], - [ "limit_value", "structopt.html#a5c2fc0cd11085fc8bf313b56cc791a75", null ], - [ "location", "structopt.html#aaf6d5cc2fc5b59c841a9dab86bb025a1", null ], - [ "out_path", "structopt.html#a47181603b53379d816eacaf7ed06854c", null ], - [ "recharge", "structopt.html#a2be9a32bb8a2a689af9265b4b0c03728", null ], - [ "span_tree_path", "structopt.html#a74783b8f970c1467dd813848c0c93fc9", null ], - [ "stat", "structopt.html#a470e589ac658e33386e40fe4449f4889", null ] -]; \ No newline at end of file diff --git a/docs/html/structopt__coll__graph.dot b/docs/html/structopt__coll__graph.dot deleted file mode 100644 index 3a848b1..0000000 --- a/docs/html/structopt__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "opt" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{opt\n|+ stat\l+ help\l+ in_path\l+ out_path\l+ span_tree_path\l+ location\l+ limit_value\l+ genus\l+ height\l+ conserve\l+ recharge\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="gestion des options en argument"]; -} diff --git a/docs/html/structposition.html b/docs/html/structposition.html deleted file mode 100644 index a25f9b5..0000000 --- a/docs/html/structposition.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: position Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    position Struct Reference
    -
    -
    - -

    structure donnant la localisation d'un arbre - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for position:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    double x
     latitude position arbre (en degré) More...
     
    double y
     longitude position arbre (en degré) More...
     
    -

    Detailed Description

    -

    structure donnant la localisation d'un arbre

    -

    Field Documentation

    - -

    ◆ x

    - -
    -
    - - - - -
    double position::x
    -
    - -

    latitude position arbre (en degré)

    - -
    -
    - -

    ◆ y

    - -
    -
    - - - - -
    double position::y
    -
    - -

    longitude position arbre (en degré)

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structposition.js b/docs/html/structposition.js deleted file mode 100644 index c921688..0000000 --- a/docs/html/structposition.js +++ /dev/null @@ -1,5 +0,0 @@ -var structposition = -[ - [ "x", "structposition.html#a0ab4d1279ca59c4e71d543144a4ea98f", null ], - [ "y", "structposition.html#a4c8f3776329f75007608235aae679e8a", null ] -]; \ No newline at end of file diff --git a/docs/html/structposition__coll__graph.dot b/docs/html/structposition__coll__graph.dot deleted file mode 100644 index c2517bf..0000000 --- a/docs/html/structposition__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "position" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/html/structtab__genre.html b/docs/html/structtab__genre.html deleted file mode 100644 index 896f404..0000000 --- a/docs/html/structtab__genre.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: tab_genre Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    tab_genre Struct Reference
    -
    -
    - -

    structure de tableau et taille associée - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for tab_genre:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    corres_genre genres [255]
     tableau de paires genre/id correspondant More...
     
    int size
     nombre d'éléments dans le tableau More...
     
    -

    Detailed Description

    -

    structure de tableau et taille associée

    -

    Field Documentation

    - -

    ◆ genres

    - -
    -
    - - - - -
    corres_genre tab_genre::genres[255]
    -
    - -

    tableau de paires genre/id correspondant

    - -
    -
    - -

    ◆ size

    - -
    -
    - - - - -
    int tab_genre::size
    -
    - -

    nombre d'éléments dans le tableau

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structtab__genre.js b/docs/html/structtab__genre.js deleted file mode 100644 index 9bedaa6..0000000 --- a/docs/html/structtab__genre.js +++ /dev/null @@ -1,5 +0,0 @@ -var structtab__genre = -[ - [ "genres", "structtab__genre.html#aa0f5907d6dd0b1d9679c3ba9471598c1", null ], - [ "size", "structtab__genre.html#a31c2e43b705450b17e65746f6730a917", null ] -]; \ No newline at end of file diff --git a/docs/html/structtab__genre__coll__graph.dot b/docs/html/structtab__genre__coll__graph.dot deleted file mode 100644 index ba586d8..0000000 --- a/docs/html/structtab__genre__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tab_genre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tab_genre\n|+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure de tableau et taille associée"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +genres" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{corres_genre\n|+ genre\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structcorres__genre.html",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/html/structtab__genus.html b/docs/html/structtab__genus.html deleted file mode 100644 index 1a58c28..0000000 --- a/docs/html/structtab__genus.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - -Project 2022: tab_genus Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    tab_genus Struct Reference
    -
    -
    - -

    structure de tableau et taille associée - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for tab_genus:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - -

    -Data Fields

    corres_genus genuses [255]
     tableau de paires genre/id correspondant More...
     
    int size
     nombre d'éléments dans le tableau More...
     
    -

    Detailed Description

    -

    structure de tableau et taille associée

    -

    Field Documentation

    - -

    ◆ genuses

    - -
    -
    - - - - -
    corres_genus tab_genus::genuses[255]
    -
    - -

    tableau de paires genre/id correspondant

    - -
    -
    - -

    ◆ size

    - -
    -
    - - - - -
    int tab_genus::size
    -
    - -

    nombre d'éléments dans le tableau

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structtab__genus.js b/docs/html/structtab__genus.js deleted file mode 100644 index 2866957..0000000 --- a/docs/html/structtab__genus.js +++ /dev/null @@ -1,5 +0,0 @@ -var structtab__genus = -[ - [ "genuses", "structtab__genus.html#a3cd0ec1e14551ec94550d26be22a6b21", null ], - [ "size", "structtab__genus.html#a33c8c1e67948ffd7d1eda170452ee589", null ] -]; \ No newline at end of file diff --git a/docs/html/structtab__genus__coll__graph.dot b/docs/html/structtab__genus__coll__graph.dot deleted file mode 100644 index dc55db6..0000000 --- a/docs/html/structtab__genus__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tab_genus" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tab_genus\n|+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure de tableau et taille associée"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +genuses" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{corres_genus\n|+ genus\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structcorres__genus.html",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/html/structtree.html b/docs/html/structtree.html deleted file mode 100644 index 24aa0f1..0000000 --- a/docs/html/structtree.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - -Project 2022: tree Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    tree Struct Reference
    -
    -
    - -

    structure informations importantes concernant un arbre - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for tree:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - - - - -

    -Data Fields

    position geoloc
     struture correspondant à la position de l'arbre More...
     
    short genus
     genre de l'arbre More...
     
    short height
     hauteur de l'arbre More...
     
    -

    Detailed Description

    -

    structure informations importantes concernant un arbre

    -

    Field Documentation

    - -

    ◆ genus

    - -
    -
    - - - - -
    short tree::genus
    -
    - -

    genre de l'arbre

    - -
    -
    - -

    ◆ geoloc

    - -
    -
    - - - - -
    position tree::geoloc
    -
    - -

    struture correspondant à la position de l'arbre

    - -
    -
    - -

    ◆ height

    - -
    -
    - - - - -
    short tree::height
    -
    - -

    hauteur de l'arbre

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structtree.js b/docs/html/structtree.js deleted file mode 100644 index 9d65572..0000000 --- a/docs/html/structtree.js +++ /dev/null @@ -1,6 +0,0 @@ -var structtree = -[ - [ "genus", "structtree.html#a656022a4f0afcd69428a5b413333c906", null ], - [ "geoloc", "structtree.html#a298f78a3e0e132f7b8635cadc96727c7", null ], - [ "height", "structtree.html#aa7924d19ff993d28766f18e9c583c1f8", null ] -]; \ No newline at end of file diff --git a/docs/html/structtree__coll__graph.dot b/docs/html/structtree__coll__graph.dot deleted file mode 100644 index 1db58a5..0000000 --- a/docs/html/structtree__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tree" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tree\n|+ genus\l+ height\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure informations importantes concernant un arbre"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond",fontname="Helvetica"]; - Node2 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/html/structvertex.html b/docs/html/structvertex.html deleted file mode 100644 index a4e6615..0000000 --- a/docs/html/structvertex.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - -Project 2022: vertex Struct Reference - - - - - - - - - - - - - -
    -
    - - - - - - -
    -
    Project 2022 -
    -
    Finding a minimum spanning tree
    -
    -
    - - - - - - - -
    -
    - -
    -
    -
    - -
    - -
    -
    - - -
    - -
    - -
    - -
    -
    vertex Struct Reference
    -
    -
    - -

    structure représentant un sommet pour la fonction minimumSpanningTree - More...

    - -

    #include <struct.h>

    -
    -Collaboration diagram for vertex:
    -
    -
    Collaboration graph
    - -
    - - - - - - - - - - - -

    -Data Fields

    short isInComponent
     1 si le sommet est déjà dans la composante More...
     
    double distMin
     la distance minimale aux autres sommets enregistrée More...
     
    size_t vertexMin
     le sommet réalisant cette distance More...
     
    -

    Detailed Description

    -

    structure représentant un sommet pour la fonction minimumSpanningTree

    -

    Field Documentation

    - -

    ◆ distMin

    - -
    -
    - - - - -
    double vertex::distMin
    -
    - -

    la distance minimale aux autres sommets enregistrée

    - -
    -
    - -

    ◆ isInComponent

    - -
    -
    - - - - -
    short vertex::isInComponent
    -
    - -

    1 si le sommet est déjà dans la composante

    - -
    -
    - -

    ◆ vertexMin

    - -
    -
    - - - - -
    size_t vertex::vertexMin
    -
    - -

    le sommet réalisant cette distance

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    -
    - - - - diff --git a/docs/html/structvertex.js b/docs/html/structvertex.js deleted file mode 100644 index 563364f..0000000 --- a/docs/html/structvertex.js +++ /dev/null @@ -1,6 +0,0 @@ -var structvertex = -[ - [ "distMin", "structvertex.html#a514cfdd1b334916366fb7c03241b6702", null ], - [ "isInComponent", "structvertex.html#abb304730a96e200d85efecb1dc3334ea", null ], - [ "vertexMin", "structvertex.html#a02e22a2c9888862e832740689849d197", null ] -]; \ No newline at end of file diff --git a/docs/html/structvertex__coll__graph.dot b/docs/html/structvertex__coll__graph.dot deleted file mode 100644 index f96ee1a..0000000 --- a/docs/html/structvertex__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "vertex" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{vertex\n|+ isInComponent\l+ distMin\l+ vertexMin\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure représentant un sommet pour la fonction minimumSpanningTree"]; -} diff --git a/docs/html/sync_off.png b/docs/html/sync_off.png deleted file mode 100644 index 3b443fc62892114406e3d399421b2a881b897acc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* diff --git a/docs/html/sync_on.png b/docs/html/sync_on.png deleted file mode 100644 index e08320fb64e6fa33b573005ed6d8fe294e19db76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 diff --git a/docs/html/tab_a.png b/docs/html/tab_a.png deleted file mode 100644 index 3b725c41c5a527a3a3e40097077d0e206a681247..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 diff --git a/docs/html/tab_b.png b/docs/html/tab_b.png deleted file mode 100644 index e2b4a8638cb3496a016eaed9e16ffc12846dea18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ diff --git a/docs/html/tabs.css b/docs/html/tabs.css deleted file mode 100644 index 7d45d36..0000000 --- a/docs/html/tabs.css +++ /dev/null @@ -1 +0,0 @@ -.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} diff --git a/docs/latex/Makefile b/docs/latex/Makefile deleted file mode 100644 index 877c9cc..0000000 --- a/docs/latex/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -LATEX_CMD=pdflatex - -all: refman.pdf - -pdf: refman.pdf - -refman.pdf: clean refman.tex - $(LATEX_CMD) refman - makeindex refman.idx - $(LATEX_CMD) refman - latex_count=8 ; \ - while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\ - do \ - echo "Rerunning latex...." ;\ - $(LATEX_CMD) refman ;\ - latex_count=`expr $$latex_count - 1` ;\ - done - makeindex refman.idx - $(LATEX_CMD) refman - - -clean: - rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf diff --git a/docs/latex/algo_8c.tex b/docs/latex/algo_8c.tex deleted file mode 100644 index a42a595..0000000 --- a/docs/latex/algo_8c.tex +++ /dev/null @@ -1,303 +0,0 @@ -\hypertarget{algo_8c}{}\doxysection{src/algo.c File Reference} -\label{algo_8c}\index{src/algo.c@{src/algo.c}} -{\ttfamily \#include \char`\"{}../include/algo.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/fonctions.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/display.\+h\char`\"{}}\newline -{\ttfamily \#include $<$time.\+h$>$}\newline -Include dependency graph for algo.\+c\+: -% FIG 0 -\doxysubsection*{Macros} -\begin{DoxyCompactItemize} -\item -\#define \mbox{\hyperlink{algo_8c_a16e936a5369064315b9b8ec4d7a5ba3a}{I\+N\+F\+I\+NI}}~4000000 -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -size\+\_\+t \mbox{\hyperlink{algo_8c_ac12979f67142d15820bc04e3965f6076}{vertex\+Dist\+Min}} (\mbox{\hyperlink{structvertex}{vertex}} $\ast$tab, size\+\_\+t size) -\item -\mbox{\hyperlink{structedge}{edge}} $\ast$ \mbox{\hyperlink{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimum\+Spanning\+Tree}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Une fonction qui calcule l\textquotesingle{}arbre recouvrant minimal du graphe structure passé en paramètre. \end{DoxyCompactList}\item -size\+\_\+t \mbox{\hyperlink{algo_8c_afda0b5b5cb8bd315ffe91b00cf20abdb}{first\+Not\+Handled\+Vertex}} (short $\ast$composante, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Pour gérer le cas où on ne veut que la plus grande composante connexe. \end{DoxyCompactList}\item -void \mbox{\hyperlink{algo_8c_a0c4590f35ac72bce8e6e93c59b120e00}{add\+Vertexes}} (short $\ast$composante, size\+\_\+t size, size\+\_\+t tree1, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, double distmax, \mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$currentcomposante) -\begin{DoxyCompactList}\small\item\em Ajoute à currentcomposante le premier sommet non traité à distance$<$distmax de tree1 et itère sur ce sommet. \end{DoxyCompactList}\item -void \mbox{\hyperlink{algo_8c_ad93045f895f3eff95932b687479497ee}{copy\+Composant}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$composante1, \mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$composante2) -\begin{DoxyCompactList}\small\item\em Copie le contenu de composante2 dans composante1 en supposant que size(composante2) $>$ size(composante1) \end{DoxyCompactList}\item -\mbox{\hyperlink{structtree}{tree}} $\ast$ \mbox{\hyperlink{algo_8c_ab0c982f403cbd716f39ace419829a668}{get\+Forest\+Max\+Composante}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, double distmax, size\+\_\+t $\ast$newsize) -\begin{DoxyCompactList}\small\item\em Get the Forest Max Composante object Renvoie la liste d\textquotesingle{}arbres \char`\"{}forêt\char`\"{} composée de la plus grande composante connexe, paramétrée par la distance distmax. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Macro Definition Documentation} -\mbox{\Hypertarget{algo_8c_a16e936a5369064315b9b8ec4d7a5ba3a}\label{algo_8c_a16e936a5369064315b9b8ec4d7a5ba3a}} -\index{algo.c@{algo.c}!INFINI@{INFINI}} -\index{INFINI@{INFINI}!algo.c@{algo.c}} -\doxysubsubsection{\texorpdfstring{INFINI}{INFINI}} -{\footnotesize\ttfamily \#define I\+N\+F\+I\+NI~4000000} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{algo_8c_a0c4590f35ac72bce8e6e93c59b120e00}\label{algo_8c_a0c4590f35ac72bce8e6e93c59b120e00}} -\index{algo.c@{algo.c}!addVertexes@{addVertexes}} -\index{addVertexes@{addVertexes}!algo.c@{algo.c}} -\doxysubsubsection{\texorpdfstring{addVertexes()}{addVertexes()}} -{\footnotesize\ttfamily void add\+Vertexes (\begin{DoxyParamCaption}\item[{short $\ast$}]{composante, }\item[{size\+\_\+t}]{size, }\item[{size\+\_\+t}]{tree1, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{double}]{distmax, }\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{currentcomposante }\end{DoxyParamCaption})} - - - -Ajoute à currentcomposante le premier sommet non traité à distance$<$distmax de tree1 et itère sur ce sommet. - - -\begin{DoxyParams}{Parameters} -{\em composante} & \\ -\hline -{\em size} & \\ -\hline -{\em tree} & \\ -\hline -{\em forest} & \\ -\hline -{\em distmax} & \\ -\hline -{\em currentcomposante} & \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{103 \{} -\DoxyCodeLine{104 composante[tree1] = 1;} -\DoxyCodeLine{105 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i$ size(composante1) - - -\begin{DoxyParams}{Parameters} -{\em composante1} & \\ -\hline -{\em composante2} & \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{123 \{} -\DoxyCodeLine{124 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i<\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composante1); i++)\{} -\DoxyCodeLine{125 \textcolor{keywordtype}{size\_t} elm = *((\textcolor{keywordtype}{size\_t}*)\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(composante2, i));} -\DoxyCodeLine{126 \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\_set}}(composante1, i, \mbox{\hyperlink{array-list_8c_a7b8af2083784734274bbee9e5c67d34b}{create\_size\_t}}(elm));} -\DoxyCodeLine{127 \}} -\DoxyCodeLine{128 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composante1); i<\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composante2); i++)\{} -\DoxyCodeLine{129 \textcolor{keywordtype}{size\_t} elm = *((\textcolor{keywordtype}{size\_t}*)\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(composante2, i));} -\DoxyCodeLine{130 \mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\_append}}(composante1, \mbox{\hyperlink{array-list_8c_a7b8af2083784734274bbee9e5c67d34b}{create\_size\_t}}(elm));} -\DoxyCodeLine{131 \}} -\DoxyCodeLine{132 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{algo_8c_afda0b5b5cb8bd315ffe91b00cf20abdb}\label{algo_8c_afda0b5b5cb8bd315ffe91b00cf20abdb}} -\index{algo.c@{algo.c}!firstNotHandledVertex@{firstNotHandledVertex}} -\index{firstNotHandledVertex@{firstNotHandledVertex}!algo.c@{algo.c}} -\doxysubsubsection{\texorpdfstring{firstNotHandledVertex()}{firstNotHandledVertex()}} -{\footnotesize\ttfamily size\+\_\+t first\+Not\+Handled\+Vertex (\begin{DoxyParamCaption}\item[{short $\ast$}]{composante, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Pour gérer le cas où on ne veut que la plus grande composante connexe. - -retourne le premier sommet pas encore traité - - -\begin{DoxyParams}{Parameters} -{\em composante} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -size\+\_\+t -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{83 \{} -\DoxyCodeLine{84 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax))\{;} -\DoxyCodeLine{156 \mbox{\hyperlink{algo_8c_ad93045f895f3eff95932b687479497ee}{copyComposant}}(composantemax, currentcomposante);} -\DoxyCodeLine{157 \}} -\DoxyCodeLine{158 \mbox{\hyperlink{array-list_8c_adb3fd6e587db7dbce8703815a8200441}{list\_free}}(currentcomposante);} -\DoxyCodeLine{159 \}} -\DoxyCodeLine{160 } -\DoxyCodeLine{161 \mbox{\hyperlink{structtree}{tree}}* forest2 = malloc(\textcolor{keyword}{sizeof}(*forest2)*\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax));} -\DoxyCodeLine{162 } -\DoxyCodeLine{163 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i<\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax); i++)\{} -\DoxyCodeLine{164 \textcolor{keywordtype}{size\_t} \mbox{\hyperlink{structtree}{tree}} = *((\textcolor{keywordtype}{size\_t}*)\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(composantemax, i));} -\DoxyCodeLine{165 forest2[i] = forest[\mbox{\hyperlink{struct_8h_a434e35ec9d53f159cc82d020517a98bb}{tree}}];} -\DoxyCodeLine{166 \}} -\DoxyCodeLine{167 } -\DoxyCodeLine{168 *newsize = \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax);} -\DoxyCodeLine{169 \mbox{\hyperlink{array-list_8c_adb3fd6e587db7dbce8703815a8200441}{list\_free}}(composantemax);} -\DoxyCodeLine{170 \textcolor{keywordflow}{return} forest2;} -\DoxyCodeLine{171 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}\label{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}} -\index{algo.c@{algo.c}!minimumSpanningTree@{minimumSpanningTree}} -\index{minimumSpanningTree@{minimumSpanningTree}!algo.c@{algo.c}} -\doxysubsubsection{\texorpdfstring{minimumSpanningTree()}{minimumSpanningTree()}} -{\footnotesize\ttfamily \mbox{\hyperlink{structedge}{edge}}$\ast$ minimum\+Spanning\+Tree (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Une fonction qui calcule l\textquotesingle{}arbre recouvrant minimal du graphe structure passé en paramètre. - - -\begin{DoxyParams}{Parameters} -{\em forest} & le graphe dont on calcule l\textquotesingle{}arbre \\ -\hline -{\em size} & la taille du graphe \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -arete$\ast$ \+: la liste des arètes constituant l\textquotesingle{}arbre recouvrant minimal -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{25 \{} -\DoxyCodeLine{26 clock\_t start = clock();} -\DoxyCodeLine{27 \mbox{\hyperlink{structvertex}{vertex}} tab[size];} -\DoxyCodeLine{28 \textcolor{keywordtype}{size\_t} sizeOfComposante = 1;} -\DoxyCodeLine{29 \textcolor{keywordtype}{double} minimumDistance = \mbox{\hyperlink{algo_8c_a16e936a5369064315b9b8ec4d7a5ba3a}{INFINI}};} -\DoxyCodeLine{30 } -\DoxyCodeLine{31 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node6 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node10 [color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node10 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/algo_8h.tex b/docs/latex/algo_8h.tex deleted file mode 100644 index 7bdca8b..0000000 --- a/docs/latex/algo_8h.tex +++ /dev/null @@ -1,5 +0,0 @@ -\hypertarget{algo_8h}{}\doxysection{include/algo.h File Reference} -\label{algo_8h}\index{include/algo.h@{include/algo.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for algo.\+h\+: diff --git a/docs/latex/algo_8h.tex.tmp b/docs/latex/algo_8h.tex.tmp deleted file mode 100644 index e2e5acc..0000000 --- a/docs/latex/algo_8h.tex.tmp +++ /dev/null @@ -1,152 +0,0 @@ -\hypertarget{algo_8h}{}\doxysection{include/algo.h File Reference} -\label{algo_8h}\index{include/algo.h@{include/algo.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for algo.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structedge}{edge}} $\ast$ \mbox{\hyperlink{algo_8h_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimum\+Spanning\+Tree}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Une fonction qui calcule l\textquotesingle{}arbre recouvrant minimal du graphe structure passé en paramètre. \end{DoxyCompactList}\item -\mbox{\hyperlink{structtree}{tree}} $\ast$ \mbox{\hyperlink{algo_8h_ab0c982f403cbd716f39ace419829a668}{get\+Forest\+Max\+Composante}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, double distmax, size\+\_\+t $\ast$newsize) -\begin{DoxyCompactList}\small\item\em Get the Forest Max Composante object Renvoie la liste d\textquotesingle{}arbres \char`\"{}forêt\char`\"{} composée de la plus grande composante connexe, paramétrée par la distance distmax. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{algo_8h_ab0c982f403cbd716f39ace419829a668}\label{algo_8h_ab0c982f403cbd716f39ace419829a668}} -\index{algo.h@{algo.h}!getForestMaxComposante@{getForestMaxComposante}} -\index{getForestMaxComposante@{getForestMaxComposante}!algo.h@{algo.h}} -\doxysubsubsection{\texorpdfstring{getForestMaxComposante()}{getForestMaxComposante()}} -{\footnotesize\ttfamily \mbox{\hyperlink{structtree}{tree}}$\ast$ get\+Forest\+Max\+Composante (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size, }\item[{double}]{distmax, }\item[{size\+\_\+t $\ast$}]{newsize }\end{DoxyParamCaption})} - - - -Get the Forest Max Composante object Renvoie la liste d\textquotesingle{}arbres \char`\"{}forêt\char`\"{} composée de la plus grande composante connexe, paramétrée par la distance distmax. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & la taille de forest \\ -\hline -{\em distmax} & \\ -\hline -{\em newsize} & pointeur vers la nouvelle taille de la forêt \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -tree$\ast$ -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{136 \{} -\DoxyCodeLine{137 clock\_t start = clock();} -\DoxyCodeLine{138 \textcolor{keywordtype}{short} composante[size]; \textcolor{comment}{//si l'arbre appartient déjà à une composante}} -\DoxyCodeLine{139 \textcolor{keywordtype}{size\_t} numberOfVertexHandled = 0;} -\DoxyCodeLine{140 } -\DoxyCodeLine{141 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax))\{;} -\DoxyCodeLine{156 \mbox{\hyperlink{algo_8c_ad93045f895f3eff95932b687479497ee}{copyComposant}}(composantemax, currentcomposante);} -\DoxyCodeLine{157 \}} -\DoxyCodeLine{158 \mbox{\hyperlink{array-list_8c_adb3fd6e587db7dbce8703815a8200441}{list\_free}}(currentcomposante);} -\DoxyCodeLine{159 \}} -\DoxyCodeLine{160 } -\DoxyCodeLine{161 \mbox{\hyperlink{structtree}{tree}}* forest2 = malloc(\textcolor{keyword}{sizeof}(*forest2)*\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax));} -\DoxyCodeLine{162 } -\DoxyCodeLine{163 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i<\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax); i++)\{} -\DoxyCodeLine{164 \textcolor{keywordtype}{size\_t} \mbox{\hyperlink{structtree}{tree}} = *((\textcolor{keywordtype}{size\_t}*)\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(composantemax, i));} -\DoxyCodeLine{165 forest2[i] = forest[\mbox{\hyperlink{struct_8h_a434e35ec9d53f159cc82d020517a98bb}{tree}}];} -\DoxyCodeLine{166 \}} -\DoxyCodeLine{167 } -\DoxyCodeLine{168 *newsize = \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(composantemax);} -\DoxyCodeLine{169 \mbox{\hyperlink{array-list_8c_adb3fd6e587db7dbce8703815a8200441}{list\_free}}(composantemax);} -\DoxyCodeLine{170 \textcolor{keywordflow}{return} forest2;} -\DoxyCodeLine{171 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{algo_8h_ae3566388dc2dbe7eb6197bbf6b7979e4}\label{algo_8h_ae3566388dc2dbe7eb6197bbf6b7979e4}} -\index{algo.h@{algo.h}!minimumSpanningTree@{minimumSpanningTree}} -\index{minimumSpanningTree@{minimumSpanningTree}!algo.h@{algo.h}} -\doxysubsubsection{\texorpdfstring{minimumSpanningTree()}{minimumSpanningTree()}} -{\footnotesize\ttfamily \mbox{\hyperlink{structedge}{edge}}$\ast$ minimum\+Spanning\+Tree (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Une fonction qui calcule l\textquotesingle{}arbre recouvrant minimal du graphe structure passé en paramètre. - - -\begin{DoxyParams}{Parameters} -{\em forest} & le graphe dont on calcule l\textquotesingle{}arbre \\ -\hline -{\em size} & la taille du graphe \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -arete$\ast$ \+: la liste des arètes constituant l\textquotesingle{}arbre recouvrant minimal -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{25 \{} -\DoxyCodeLine{26 clock\_t start = clock();} -\DoxyCodeLine{27 \mbox{\hyperlink{structvertex}{vertex}} tab[size];} -\DoxyCodeLine{28 \textcolor{keywordtype}{size\_t} sizeOfComposante = 1;} -\DoxyCodeLine{29 \textcolor{keywordtype}{double} minimumDistance = \mbox{\hyperlink{algo_8c_a16e936a5369064315b9b8ec4d7a5ba3a}{INFINI}};} -\DoxyCodeLine{30 } -\DoxyCodeLine{31 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/latex/algo_8h__incl.dot b/docs/latex/algo_8h__incl.dot deleted file mode 100644 index ec5ce90..0000000 --- a/docs/latex/algo_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/algo.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/annotated.tex b/docs/latex/annotated.tex deleted file mode 100644 index ec126ce..0000000 --- a/docs/latex/annotated.tex +++ /dev/null @@ -1,13 +0,0 @@ -\doxysection{Data Structures} -Here are the data structures with brief descriptions\+:\begin{DoxyCompactList} -\item\contentsline{section}{\mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} \\*Structure associant une genre à une identifiant }{\pageref{structcorres__genus}}{} -\item\contentsline{section}{\mbox{\hyperlink{structedge}{edge}} \\*Structure définissant une arête }{\pageref{structedge}}{} -\item\contentsline{section}{\mbox{\hyperlink{structedge2}{edge2}} \\*2ième structure définissant une arête (pour options) }{\pageref{structedge2}}{} -\item\contentsline{section}{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} }{\pageref{structlist__t}}{} -\item\contentsline{section}{\mbox{\hyperlink{structnode}{node}} \\*Structure définissant un noeud }{\pageref{structnode}}{} -\item\contentsline{section}{\mbox{\hyperlink{structopt}{opt}} \\*Gestion des options en argument }{\pageref{structopt}}{} -\item\contentsline{section}{\mbox{\hyperlink{structposition}{position}} \\*Structure donnant la localisation d\textquotesingle{}un arbre }{\pageref{structposition}}{} -\item\contentsline{section}{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} \\*Structure de tableau et taille associée }{\pageref{structtab__genus}}{} -\item\contentsline{section}{\mbox{\hyperlink{structtree}{tree}} \\*Structure informations importantes concernant un arbre }{\pageref{structtree}}{} -\item\contentsline{section}{\mbox{\hyperlink{structvertex}{vertex}} \\*Structure représentant un sommet pour la fonction minimum\+Spanning\+Tree }{\pageref{structvertex}}{} -\end{DoxyCompactList} diff --git a/docs/latex/arbres_8c.tex b/docs/latex/arbres_8c.tex deleted file mode 100644 index 1e37a82..0000000 --- a/docs/latex/arbres_8c.tex +++ /dev/null @@ -1,100 +0,0 @@ -\hypertarget{arbres_8c}{}\doxysection{src/arbres.c File Reference} -\label{arbres_8c}\index{src/arbres.c@{src/arbres.c}} -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/fonctions.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/options.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/parse.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/algo.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/display.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/stat.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/restrictive\+Options.\+h\char`\"{}}\newline -Include dependency graph for arbres.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -int \mbox{\hyperlink{arbres_8c_a3c04138a5bfe5d72780bb7e82a18e627}{main}} (int argc, char $\ast$$\ast$argv) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{arbres_8c_a3c04138a5bfe5d72780bb7e82a18e627}\label{arbres_8c_a3c04138a5bfe5d72780bb7e82a18e627}} -\index{arbres.c@{arbres.c}!main@{main}} -\index{main@{main}!arbres.c@{arbres.c}} -\doxysubsubsection{\texorpdfstring{main()}{main()}} -{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{56 \{} -\DoxyCodeLine{57 (void)argc;} -\DoxyCodeLine{58 } -\DoxyCodeLine{59 \mbox{\hyperlink{structopt}{opt}} handlingOptions;} -\DoxyCodeLine{60 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}(argc,argv,\&handlingOptions);} -\DoxyCodeLine{61 } -\DoxyCodeLine{62 \textcolor{keywordtype}{int} size;} -\DoxyCodeLine{63 \mbox{\hyperlink{structtree}{tree}} * trees=malloc(300000*\textcolor{keyword}{sizeof}(\mbox{\hyperlink{structtree}{tree}}));} -\DoxyCodeLine{64 \textcolor{keywordflow}{if}(trees == NULL) \{ exit(15); \}} -\DoxyCodeLine{65 memset(trees,0,\textcolor{keyword}{sizeof}(*trees)*300000);} -\DoxyCodeLine{66 \mbox{\hyperlink{parse_8c_abd3676c711ff2728e5acc162628c39bb}{handlingFile}}(handlingOptions,trees,\&size);} -\DoxyCodeLine{67 } -\DoxyCodeLine{68 \textcolor{keywordtype}{int} sizeSelection;} -\DoxyCodeLine{69 \mbox{\hyperlink{structtree}{tree}} * treesSelection=malloc(300000*\textcolor{keyword}{sizeof}(\mbox{\hyperlink{structtree}{tree}}));} -\DoxyCodeLine{70 \textcolor{keywordflow}{if}(treesSelection == NULL)\{ exit(15); \}} -\DoxyCodeLine{71 \mbox{\hyperlink{structedge}{edge}} * MST;} -\DoxyCodeLine{72 \textcolor{keywordtype}{size\_t} newsize;} -\DoxyCodeLine{73 \textcolor{keywordtype}{char} * endPointer;} -\DoxyCodeLine{74 } -\DoxyCodeLine{75 } -\DoxyCodeLine{76 \mbox{\hyperlink{fonctions_8c_af18ef119d8c281b81165033c74ad49f1}{projectionTrees}}(trees, size);} -\DoxyCodeLine{77 } -\DoxyCodeLine{78 \textcolor{comment}{//printf("\%ld",strtod(handlingOptions.location,\&endPointer));}} -\DoxyCodeLine{79 } -\DoxyCodeLine{80 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_ab74aec43a44b95b42fffc3319adb019f}{height}} == NULL \&\& handlingOptions.\mbox{\hyperlink{structopt_ab5b54f29a8bc5c4e1a2c84527aad8c00}{genus}} == NULL \&\& handlingOptions.\mbox{\hyperlink{structopt_a5c2fc0cd11085fc8bf313b56cc791a75}{limit\_value}} == NULL)\{ } -\DoxyCodeLine{81 } -\DoxyCodeLine{82 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}{location}} != NULL) \{} -\DoxyCodeLine{83 \mbox{\hyperlink{structtree}{tree}}* treesSelection2 = \mbox{\hyperlink{algo_8c_ab0c982f403cbd716f39ace419829a668}{getForestMaxComposante}}(trees, size, pow(strtod(handlingOptions.\mbox{\hyperlink{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}{location}},\&endPointer)/\mbox{\hyperlink{fonctions_8h_a3304c99f43f534878204486fc7b9673d}{RAYON}}, 2), \&newsize);} -\DoxyCodeLine{84 MST = \mbox{\hyperlink{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimumSpanningTree}}(treesSelection2, newsize);} -\DoxyCodeLine{85 \mbox{\hyperlink{stat_8c_ad0504264256ba096bb799d387f11682d}{stat}}(handlingOptions,MST,newsize, treesSelection2);} -\DoxyCodeLine{86 \mbox{\hyperlink{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}{displayTrees}}(MST, newsize, treesSelection2);} -\DoxyCodeLine{87 \mbox{\hyperlink{parse_8c_ae17e8d9b38ac4864828eb54b4d916a0f}{writeEdges}}(MST,newsize-\/1,handlingOptions);} -\DoxyCodeLine{88 } -\DoxyCodeLine{89 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{90 MST = \mbox{\hyperlink{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimumSpanningTree}}(trees, size);} -\DoxyCodeLine{91 \mbox{\hyperlink{stat_8c_ad0504264256ba096bb799d387f11682d}{stat}}(handlingOptions,MST,size, trees);} -\DoxyCodeLine{92 \mbox{\hyperlink{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}{displayTrees}}(MST, size, trees);} -\DoxyCodeLine{93 \mbox{\hyperlink{parse_8c_ae17e8d9b38ac4864828eb54b4d916a0f}{writeEdges}}(MST,size-\/1,handlingOptions);} -\DoxyCodeLine{94 } -\DoxyCodeLine{95 \}} -\DoxyCodeLine{96 } -\DoxyCodeLine{97 \}\textcolor{keywordflow}{else}\{ } -\DoxyCodeLine{98 } -\DoxyCodeLine{99 \mbox{\hyperlink{restrictiveOptions_8c_af922efbacb29fb8a175816b5f164b9e3}{handlingRestrictingOptions}}(handlingOptions,trees,treesSelection,size,\&sizeSelection); } -\DoxyCodeLine{100 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}{location}} != NULL) \{} -\DoxyCodeLine{101 \mbox{\hyperlink{structtree}{tree}}* treesSelection2 = \mbox{\hyperlink{algo_8c_ab0c982f403cbd716f39ace419829a668}{getForestMaxComposante}}(treesSelection, sizeSelection, pow(strtod(handlingOptions.\mbox{\hyperlink{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}{location}},\&endPointer)/\mbox{\hyperlink{fonctions_8h_a3304c99f43f534878204486fc7b9673d}{RAYON}}, 2), \&newsize);} -\DoxyCodeLine{102 MST = \mbox{\hyperlink{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimumSpanningTree}}(treesSelection2, newsize);} -\DoxyCodeLine{103 \mbox{\hyperlink{stat_8c_ad0504264256ba096bb799d387f11682d}{stat}}(handlingOptions,MST,newsize, treesSelection2);} -\DoxyCodeLine{104 \mbox{\hyperlink{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}{displayTrees}}(MST, newsize, treesSelection2);} -\DoxyCodeLine{105 \mbox{\hyperlink{parse_8c_ae17e8d9b38ac4864828eb54b4d916a0f}{writeEdges}}(MST,newsize-\/1,handlingOptions);} -\DoxyCodeLine{106 } -\DoxyCodeLine{107 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{108 } -\DoxyCodeLine{109 MST = \mbox{\hyperlink{algo_8c_ae3566388dc2dbe7eb6197bbf6b7979e4}{minimumSpanningTree}}(treesSelection, sizeSelection);} -\DoxyCodeLine{110 \mbox{\hyperlink{stat_8c_ad0504264256ba096bb799d387f11682d}{stat}}(handlingOptions,MST,size, treesSelection);} -\DoxyCodeLine{111 \mbox{\hyperlink{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}{displayTrees}}(MST, sizeSelection, treesSelection);} -\DoxyCodeLine{112 \mbox{\hyperlink{parse_8c_ae17e8d9b38ac4864828eb54b4d916a0f}{writeEdges}}(MST,sizeSelection-\/1,handlingOptions);} -\DoxyCodeLine{113 } -\DoxyCodeLine{114 \}} -\DoxyCodeLine{115 } -\DoxyCodeLine{116 \}} -\DoxyCodeLine{117 } -\DoxyCodeLine{118 } -\DoxyCodeLine{119 free(MST);} -\DoxyCodeLine{120 free(trees);} -\DoxyCodeLine{121 free(treesSelection);} -\DoxyCodeLine{122 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{123 } -\DoxyCodeLine{124 \}} - -\end{DoxyCode} diff --git a/docs/latex/arbres_8c__incl.dot b/docs/latex/arbres_8c__incl.dot deleted file mode 100644 index 558bafd..0000000 --- a/docs/latex/arbres_8c__incl.dot +++ /dev/null @@ -1,48 +0,0 @@ -digraph "src/arbres.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="../include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node5 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node5 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node5 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node5 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="../include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node10 [color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node10 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node10 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid"]; - Node11 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node11 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node11 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node11 -> Node12 [color="midnightblue",fontsize="10",style="solid"]; - Node12 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node13 [color="midnightblue",fontsize="10",style="solid"]; - Node13 [label="../include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node13 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node13 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node14 [color="midnightblue",fontsize="10",style="solid"]; - Node14 [label="../include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node14 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node14 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/array-list_8c.tex b/docs/latex/array-list_8c.tex deleted file mode 100644 index 24c7893..0000000 --- a/docs/latex/array-list_8c.tex +++ /dev/null @@ -1,286 +0,0 @@ -\hypertarget{array-list_8c}{}\doxysection{src/array-\/list.c File Reference} -\label{array-list_8c}\index{src/array-\/list.c@{src/array-\/list.c}} -{\ttfamily \#include \char`\"{}../include/array-\/list.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -Include dependency graph for array-\/list.c\+: -% FIG 0 -\doxysubsection*{Data Structures} -\begin{DoxyCompactItemize} -\item -struct \mbox{\hyperlink{structlist__t}{list\+\_\+t}} -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$ \mbox{\hyperlink{array-list_8c_a29f30488e60e8e4222c5118d754f0dbb}{list\+\_\+create}} (void) -\begin{DoxyCompactList}\small\item\em Crée une liste vide. \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\+\_\+append}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, void $\ast$element\+\_\+to\+\_\+append) -\begin{DoxyCompactList}\small\item\em Ajoute un élément à la fin de la liste. \end{DoxyCompactList}\item -void $\ast$ \mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\+\_\+get}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, int pos) -\begin{DoxyCompactList}\small\item\em retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt \end{DoxyCompactList}\item -void \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\+\_\+set}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, int pos, void $\ast$element) -\begin{DoxyCompactList}\small\item\em remplace l\textquotesingle{}élément à la position donnée par l\textquotesingle{}élément donné \end{DoxyCompactList}\item -size\+\_\+t \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\+\_\+size}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it) -\begin{DoxyCompactList}\small\item\em revoie la taille de la liste \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8c_ab3e47ea7db86a9f33d93fca5a25b87cc}{list\+\_\+insert}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, size\+\_\+t pos, void $\ast$elmt) -\begin{DoxyCompactList}\small\item\em insère un élément à la position idx \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8c_a5eb5f590f52fa4763c75eabcda9abe36}{list\+\_\+prepend}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, void $\ast$elmt) -\begin{DoxyCompactList}\small\item\em Ajoute un élément en début de liste. \end{DoxyCompactList}\item -void $\ast$ \mbox{\hyperlink{array-list_8c_a086e3f7f2956e50db180c011845cb776}{list\+\_\+take}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it, int pos) -\begin{DoxyCompactList}\small\item\em retourne l\textquotesingle{}élément à la position idc, puis enlève cet élément de la liste \end{DoxyCompactList}\item -void \mbox{\hyperlink{array-list_8c_adb3fd6e587db7dbce8703815a8200441}{list\+\_\+free}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it) -\begin{DoxyCompactList}\small\item\em libère la liste et tous ses éléments \end{DoxyCompactList}\item -size\+\_\+t $\ast$ \mbox{\hyperlink{array-list_8c_a7b8af2083784734274bbee9e5c67d34b}{create\+\_\+size\+\_\+t}} (size\+\_\+t i) -\item -void \mbox{\hyperlink{array-list_8c_a09e105a966c9826976187aa227f67194}{list\+\_\+free2}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{array-list_8c_a7b8af2083784734274bbee9e5c67d34b}\label{array-list_8c_a7b8af2083784734274bbee9e5c67d34b}} -\index{array-\/list.c@{array-\/list.c}!create\_size\_t@{create\_size\_t}} -\index{create\_size\_t@{create\_size\_t}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{create\_size\_t()}{create\_size\_t()}} -{\footnotesize\ttfamily size\+\_\+t$\ast$ create\+\_\+size\+\_\+t (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{i }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{92 \{} -\DoxyCodeLine{93 \textcolor{keywordtype}{size\_t}* p = malloc(\textcolor{keyword}{sizeof}(\textcolor{keywordtype}{size\_t}));} -\DoxyCodeLine{94 *p = i;} -\DoxyCodeLine{95 \textcolor{keywordflow}{return} p;} -\DoxyCodeLine{96 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_abd5d607adddcc300a324588f12b00ed8}\label{array-list_8c_abd5d607adddcc300a324588f12b00ed8}} -\index{array-\/list.c@{array-\/list.c}!list\_append@{list\_append}} -\index{list\_append@{list\_append}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_append()}{list\_append()}} -{\footnotesize\ttfamily int list\+\_\+append (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -Ajoute un élément à la fin de la liste. - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{27 \{} -\DoxyCodeLine{28 \textcolor{keywordflow}{if}( it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} < it-\/>\mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}})\{} -\DoxyCodeLine{29 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}}] = element\_to\_append;} -\DoxyCodeLine{30 it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} ++;} -\DoxyCodeLine{31 \textcolor{keywordflow}{return} 1; } -\DoxyCodeLine{32 \}} -\DoxyCodeLine{33 } -\DoxyCodeLine{34 \textcolor{keywordtype}{void}** tmp = realloc(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}},(it-\/>\mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}}+15)*\textcolor{keyword}{sizeof}(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[0]));} -\DoxyCodeLine{35 \textcolor{keywordflow}{if} (tmp == NULL)\{} -\DoxyCodeLine{36 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{37 \}} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} = tmp;} -\DoxyCodeLine{40 it-\/>\mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}} += 15; } -\DoxyCodeLine{41 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}}] = element\_to\_append;} -\DoxyCodeLine{42 it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} ++;} -\DoxyCodeLine{43 \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{44 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a29f30488e60e8e4222c5118d754f0dbb}\label{array-list_8c_a29f30488e60e8e4222c5118d754f0dbb}} -\index{array-\/list.c@{array-\/list.c}!list\_create@{list\_create}} -\index{list\_create@{list\_create}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_create()}{list\_create()}} -{\footnotesize\ttfamily \mbox{\hyperlink{structlist__t}{list\+\_\+t}}$\ast$ list\+\_\+create (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - - -Crée une liste vide. - -\begin{DoxyReturn}{Returns} -list\+\_\+t$\ast$ ou N\+U\+LL en cas de problème -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{11 \{} -\DoxyCodeLine{12 \mbox{\hyperlink{structlist__t}{list\_t}}* it = malloc(\textcolor{keyword}{sizeof}(*it));} -\DoxyCodeLine{13 \textcolor{keywordflow}{if} (it == NULL) \textcolor{keywordflow}{return} NULL;} -\DoxyCodeLine{14 } -\DoxyCodeLine{15 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} = malloc(10*\textcolor{keyword}{sizeof}(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[0]));} -\DoxyCodeLine{16 \textcolor{keywordflow}{if} (it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} == NULL)\{} -\DoxyCodeLine{17 free(it);} -\DoxyCodeLine{18 \textcolor{keywordflow}{return} NULL;} -\DoxyCodeLine{19 \}} -\DoxyCodeLine{20 } -\DoxyCodeLine{21 it-\/>\mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}} = 10;} -\DoxyCodeLine{22 it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} = 0;} -\DoxyCodeLine{23 \textcolor{keywordflow}{return} it;} -\DoxyCodeLine{24 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_adb3fd6e587db7dbce8703815a8200441}\label{array-list_8c_adb3fd6e587db7dbce8703815a8200441}} -\index{array-\/list.c@{array-\/list.c}!list\_free@{list\_free}} -\index{list\_free@{list\_free}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_free()}{list\_free()}} -{\footnotesize\ttfamily void list\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{ }\end{DoxyParamCaption})} - - - -libère la liste et tous ses éléments - - -\begin{DoxyCode}{0} -\DoxyCodeLine{84 \{} -\DoxyCodeLine{85 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{size\_t} i = 0; i < \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(it); i++)} -\DoxyCodeLine{86 free(\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, i));} -\DoxyCodeLine{87 } -\DoxyCodeLine{88 free(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}});} -\DoxyCodeLine{89 free(it); \textcolor{comment}{//modif concernant le projet programmation }} -\DoxyCodeLine{90 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a09e105a966c9826976187aa227f67194}\label{array-list_8c_a09e105a966c9826976187aa227f67194}} -\index{array-\/list.c@{array-\/list.c}!list\_free2@{list\_free2}} -\index{list\_free2@{list\_free2}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_free2()}{list\_free2()}} -{\footnotesize\ttfamily void list\+\_\+free2 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{it }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{98 \{} -\DoxyCodeLine{99 free(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}); } -\DoxyCodeLine{100 free(it);} -\DoxyCodeLine{101 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}\label{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}} -\index{array-\/list.c@{array-\/list.c}!list\_get@{list\_get}} -\index{list\_get@{list\_get}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_get()}{list\_get()}} -{\footnotesize\ttfamily void$\ast$ list\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{ }\end{DoxyParamCaption})} - - - -retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt - -\begin{DoxyReturn}{Returns} -void$\ast$ -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{46 \{} -\DoxyCodeLine{47 \textcolor{keywordflow}{return} it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[pos];} -\DoxyCodeLine{48 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_ab3e47ea7db86a9f33d93fca5a25b87cc}\label{array-list_8c_ab3e47ea7db86a9f33d93fca5a25b87cc}} -\index{array-\/list.c@{array-\/list.c}!list\_insert@{list\_insert}} -\index{list\_insert@{list\_insert}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_insert()}{list\_insert()}} -{\footnotesize\ttfamily int list\+\_\+insert (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{size\+\_\+t}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -insère un élément à la position idx - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{58 \{} -\DoxyCodeLine{59 } -\DoxyCodeLine{60 \textcolor{keywordflow}{if} (\mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\_append}}(it, elmt) == 0) \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{61 } -\DoxyCodeLine{62 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} -\/ 1; i>pos; i-\/-\/)\{} -\DoxyCodeLine{63 \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\_set}}(it, i, \mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, i-\/1));} -\DoxyCodeLine{64 \}} -\DoxyCodeLine{65 \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\_set}}(it, pos, elmt);} -\DoxyCodeLine{66 \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{67 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a5eb5f590f52fa4763c75eabcda9abe36}\label{array-list_8c_a5eb5f590f52fa4763c75eabcda9abe36}} -\index{array-\/list.c@{array-\/list.c}!list\_prepend@{list\_prepend}} -\index{list\_prepend@{list\_prepend}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_prepend()}{list\_prepend()}} -{\footnotesize\ttfamily int list\+\_\+prepend (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -Ajoute un élément en début de liste. - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{69 \{} -\DoxyCodeLine{70 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_ab3e47ea7db86a9f33d93fca5a25b87cc}{list\_insert}}(it, 0, elmt);} -\DoxyCodeLine{71 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}\label{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}} -\index{array-\/list.c@{array-\/list.c}!list\_set@{list\_set}} -\index{list\_set@{list\_set}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_set()}{list\_set()}} -{\footnotesize\ttfamily void list\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -remplace l\textquotesingle{}élément à la position donnée par l\textquotesingle{}élément donné - - -\begin{DoxyCode}{0} -\DoxyCodeLine{50 \{} -\DoxyCodeLine{51 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[pos] = element;} -\DoxyCodeLine{52 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}\label{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}} -\index{array-\/list.c@{array-\/list.c}!list\_size@{list\_size}} -\index{list\_size@{list\_size}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_size()}{list\_size()}} -{\footnotesize\ttfamily size\+\_\+t list\+\_\+size (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{ }\end{DoxyParamCaption})} - - - -revoie la taille de la liste - -\begin{DoxyReturn}{Returns} -size\+\_\+t -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{54 \{} -\DoxyCodeLine{55 \textcolor{keywordflow}{return} it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}};} -\DoxyCodeLine{56 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8c_a086e3f7f2956e50db180c011845cb776}\label{array-list_8c_a086e3f7f2956e50db180c011845cb776}} -\index{array-\/list.c@{array-\/list.c}!list\_take@{list\_take}} -\index{list\_take@{list\_take}!array-\/list.c@{array-\/list.c}} -\doxysubsubsection{\texorpdfstring{list\_take()}{list\_take()}} -{\footnotesize\ttfamily void$\ast$ list\+\_\+take (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{ }\end{DoxyParamCaption})} - - - -retourne l\textquotesingle{}élément à la position idc, puis enlève cet élément de la liste - -\begin{DoxyReturn}{Returns} -void$\ast$ -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{73 \{} -\DoxyCodeLine{74 \textcolor{keywordtype}{void}* elmt = \mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, pos);} -\DoxyCodeLine{75 } -\DoxyCodeLine{76 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = pos; i < it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}}-\/1; i++)\{} -\DoxyCodeLine{77 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[i] = it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[i+1];} -\DoxyCodeLine{78 \}} -\DoxyCodeLine{79 it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}}-\/-\/;} -\DoxyCodeLine{80 \textcolor{keywordflow}{return} elmt;} -\DoxyCodeLine{81 \}} - -\end{DoxyCode} diff --git a/docs/latex/array-list_8c__incl.dot b/docs/latex/array-list_8c__incl.dot deleted file mode 100644 index ea1947c..0000000 --- a/docs/latex/array-list_8c__incl.dot +++ /dev/null @@ -1,14 +0,0 @@ -digraph "src/array-list.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/array-list.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/array-list_8h.tex b/docs/latex/array-list_8h.tex deleted file mode 100644 index 25c611e..0000000 --- a/docs/latex/array-list_8h.tex +++ /dev/null @@ -1,295 +0,0 @@ -\hypertarget{array-list_8h}{}\doxysection{include/array-\/list.h File Reference} -\label{array-list_8h}\index{include/array-\/list.h@{include/array-\/list.h}} -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for array-\/list.h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Typedefs} -\begin{DoxyCompactItemize} -\item -typedef struct \mbox{\hyperlink{structlist__t}{list\+\_\+t}} \mbox{\hyperlink{array-list_8h_a2400033025820f5e82c0e72c47386627}{list\+\_\+t}} -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$ \mbox{\hyperlink{array-list_8h_a29f30488e60e8e4222c5118d754f0dbb}{list\+\_\+create}} (void) -\begin{DoxyCompactList}\small\item\em Crée une liste vide. \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8h_a8841ba80500e11a4380929d3c3597de9}{list\+\_\+append}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, void $\ast$) -\begin{DoxyCompactList}\small\item\em Ajoute un élément à la fin de la liste. \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8h_ad59e715707419ee7577c66d23c9573a2}{list\+\_\+prepend}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, void $\ast$) -\begin{DoxyCompactList}\small\item\em Ajoute un élément en début de liste. \end{DoxyCompactList}\item -void $\ast$ \mbox{\hyperlink{array-list_8h_af058305b3e75702ca11274d23f820515}{list\+\_\+get}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, int) -\begin{DoxyCompactList}\small\item\em retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt \end{DoxyCompactList}\item -void \mbox{\hyperlink{array-list_8h_a7e05e7fb0fca583ed13ee9dc29450a08}{list\+\_\+set}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, int, void $\ast$) -\begin{DoxyCompactList}\small\item\em remplace l\textquotesingle{}élément à la position donnée par l\textquotesingle{}élément donné \end{DoxyCompactList}\item -size\+\_\+t \mbox{\hyperlink{array-list_8h_a6555dbaf1bf1ecafac79e7dcfafa05d9}{list\+\_\+size}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$) -\begin{DoxyCompactList}\small\item\em revoie la taille de la liste \end{DoxyCompactList}\item -int \mbox{\hyperlink{array-list_8h_ab1c2550e5093d373e875893339936fad}{list\+\_\+insert}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, size\+\_\+t, void $\ast$) -\begin{DoxyCompactList}\small\item\em insère un élément à la position idx \end{DoxyCompactList}\item -void $\ast$ \mbox{\hyperlink{array-list_8h_ad8ea0715edb588b046fbe943a9c6577b}{list\+\_\+take}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$, int) -\begin{DoxyCompactList}\small\item\em retourne l\textquotesingle{}élément à la position idc, puis enlève cet élément de la liste \end{DoxyCompactList}\item -void \mbox{\hyperlink{array-list_8h_a74dde820738687bc183a09495909e64c}{list\+\_\+free}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$) -\begin{DoxyCompactList}\small\item\em libère la liste et tous ses éléments \end{DoxyCompactList}\item -size\+\_\+t $\ast$ \mbox{\hyperlink{array-list_8h_a7b8af2083784734274bbee9e5c67d34b}{create\+\_\+size\+\_\+t}} (size\+\_\+t i) -\item -void \mbox{\hyperlink{array-list_8h_a09e105a966c9826976187aa227f67194}{list\+\_\+free2}} (\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$it) -\end{DoxyCompactItemize} - - -\doxysubsection{Typedef Documentation} -\mbox{\Hypertarget{array-list_8h_a2400033025820f5e82c0e72c47386627}\label{array-list_8h_a2400033025820f5e82c0e72c47386627}} -\index{array-\/list.h@{array-\/list.h}!list\_t@{list\_t}} -\index{list\_t@{list\_t}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_t}{list\_t}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structlist__t}{list\+\_\+t}} \mbox{\hyperlink{structlist__t}{list\+\_\+t}}} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{array-list_8h_a7b8af2083784734274bbee9e5c67d34b}\label{array-list_8h_a7b8af2083784734274bbee9e5c67d34b}} -\index{array-\/list.h@{array-\/list.h}!create\_size\_t@{create\_size\_t}} -\index{create\_size\_t@{create\_size\_t}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{create\_size\_t()}{create\_size\_t()}} -{\footnotesize\ttfamily size\+\_\+t$\ast$ create\+\_\+size\+\_\+t (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{i }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{92 \{} -\DoxyCodeLine{93 \textcolor{keywordtype}{size\_t}* p = malloc(\textcolor{keyword}{sizeof}(\textcolor{keywordtype}{size\_t}));} -\DoxyCodeLine{94 *p = i;} -\DoxyCodeLine{95 \textcolor{keywordflow}{return} p;} -\DoxyCodeLine{96 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a8841ba80500e11a4380929d3c3597de9}\label{array-list_8h_a8841ba80500e11a4380929d3c3597de9}} -\index{array-\/list.h@{array-\/list.h}!list\_append@{list\_append}} -\index{list\_append@{list\_append}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_append()}{list\_append()}} -{\footnotesize\ttfamily int list\+\_\+append (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -Ajoute un élément à la fin de la liste. - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{27 \{} -\DoxyCodeLine{28 \textcolor{keywordflow}{if}( it-\/>size < it-\/>allocated)\{} -\DoxyCodeLine{29 it-\/>element[it-\/>size] = element\_to\_append;} -\DoxyCodeLine{30 it-\/>size ++;} -\DoxyCodeLine{31 \textcolor{keywordflow}{return} 1; } -\DoxyCodeLine{32 \}} -\DoxyCodeLine{33 } -\DoxyCodeLine{34 \textcolor{keywordtype}{void}** tmp = realloc(it-\/>element,(it-\/>allocated+15)*\textcolor{keyword}{sizeof}(it-\/>element[0]));} -\DoxyCodeLine{35 \textcolor{keywordflow}{if} (tmp == NULL)\{} -\DoxyCodeLine{36 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{37 \}} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 it-\/>element = tmp;} -\DoxyCodeLine{40 it-\/>allocated += 15; } -\DoxyCodeLine{41 it-\/>element[it-\/>size] = element\_to\_append;} -\DoxyCodeLine{42 it-\/>size ++;} -\DoxyCodeLine{43 \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{44 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a29f30488e60e8e4222c5118d754f0dbb}\label{array-list_8h_a29f30488e60e8e4222c5118d754f0dbb}} -\index{array-\/list.h@{array-\/list.h}!list\_create@{list\_create}} -\index{list\_create@{list\_create}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_create()}{list\_create()}} -{\footnotesize\ttfamily \mbox{\hyperlink{structlist__t}{list\+\_\+t}}$\ast$ list\+\_\+create (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - - -Crée une liste vide. - -\begin{DoxyReturn}{Returns} -list\+\_\+t$\ast$ ou N\+U\+LL en cas de problème -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{11 \{} -\DoxyCodeLine{12 \mbox{\hyperlink{structlist__t}{list\_t}}* it = malloc(\textcolor{keyword}{sizeof}(*it));} -\DoxyCodeLine{13 \textcolor{keywordflow}{if} (it == NULL) \textcolor{keywordflow}{return} NULL;} -\DoxyCodeLine{14 } -\DoxyCodeLine{15 it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} = malloc(10*\textcolor{keyword}{sizeof}(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}[0]));} -\DoxyCodeLine{16 \textcolor{keywordflow}{if} (it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} == NULL)\{} -\DoxyCodeLine{17 free(it);} -\DoxyCodeLine{18 \textcolor{keywordflow}{return} NULL;} -\DoxyCodeLine{19 \}} -\DoxyCodeLine{20 } -\DoxyCodeLine{21 it-\/>\mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}} = 10;} -\DoxyCodeLine{22 it-\/>\mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} = 0;} -\DoxyCodeLine{23 \textcolor{keywordflow}{return} it;} -\DoxyCodeLine{24 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a74dde820738687bc183a09495909e64c}\label{array-list_8h_a74dde820738687bc183a09495909e64c}} -\index{array-\/list.h@{array-\/list.h}!list\_free@{list\_free}} -\index{list\_free@{list\_free}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_free()}{list\_free()}} -{\footnotesize\ttfamily void list\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{ }\end{DoxyParamCaption})} - - - -libère la liste et tous ses éléments - - -\begin{DoxyCode}{0} -\DoxyCodeLine{84 \{} -\DoxyCodeLine{85 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{size\_t} i = 0; i < \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(it); i++)} -\DoxyCodeLine{86 free(\mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, i));} -\DoxyCodeLine{87 } -\DoxyCodeLine{88 free(it-\/>element);} -\DoxyCodeLine{89 free(it); \textcolor{comment}{//modif concernant le projet programmation }} -\DoxyCodeLine{90 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a09e105a966c9826976187aa227f67194}\label{array-list_8h_a09e105a966c9826976187aa227f67194}} -\index{array-\/list.h@{array-\/list.h}!list\_free2@{list\_free2}} -\index{list\_free2@{list\_free2}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_free2()}{list\_free2()}} -{\footnotesize\ttfamily void list\+\_\+free2 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{it }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{98 \{} -\DoxyCodeLine{99 free(it-\/>\mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}}); } -\DoxyCodeLine{100 free(it);} -\DoxyCodeLine{101 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_af058305b3e75702ca11274d23f820515}\label{array-list_8h_af058305b3e75702ca11274d23f820515}} -\index{array-\/list.h@{array-\/list.h}!list\_get@{list\_get}} -\index{list\_get@{list\_get}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_get()}{list\_get()}} -{\footnotesize\ttfamily void$\ast$ list\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{ }\end{DoxyParamCaption})} - - - -retourne le (idx+1)ème élément comportement indéfini en cas de dépassemnt - -\begin{DoxyReturn}{Returns} -void$\ast$ -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{46 \{} -\DoxyCodeLine{47 \textcolor{keywordflow}{return} it-\/>element[pos];} -\DoxyCodeLine{48 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_ab1c2550e5093d373e875893339936fad}\label{array-list_8h_ab1c2550e5093d373e875893339936fad}} -\index{array-\/list.h@{array-\/list.h}!list\_insert@{list\_insert}} -\index{list\_insert@{list\_insert}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_insert()}{list\_insert()}} -{\footnotesize\ttfamily int list\+\_\+insert (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{size\+\_\+t}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -insère un élément à la position idx - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{58 \{} -\DoxyCodeLine{59 } -\DoxyCodeLine{60 \textcolor{keywordflow}{if} (\mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\_append}}(it, elmt) == 0) \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{61 } -\DoxyCodeLine{62 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = it-\/>size -\/ 1; i>pos; i-\/-\/)\{} -\DoxyCodeLine{63 \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\_set}}(it, i, \mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, i-\/1));} -\DoxyCodeLine{64 \}} -\DoxyCodeLine{65 \mbox{\hyperlink{array-list_8c_a1ec39ae5962d70f4484c0b656956fbb5}{list\_set}}(it, pos, elmt);} -\DoxyCodeLine{66 \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{67 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_ad59e715707419ee7577c66d23c9573a2}\label{array-list_8h_ad59e715707419ee7577c66d23c9573a2}} -\index{array-\/list.h@{array-\/list.h}!list\_prepend@{list\_prepend}} -\index{list\_prepend@{list\_prepend}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_prepend()}{list\_prepend()}} -{\footnotesize\ttfamily int list\+\_\+prepend (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -Ajoute un élément en début de liste. - -\begin{DoxyReturn}{Returns} -0 en cas de problème, 1 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{69 \{} -\DoxyCodeLine{70 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_ab3e47ea7db86a9f33d93fca5a25b87cc}{list\_insert}}(it, 0, elmt);} -\DoxyCodeLine{71 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a7e05e7fb0fca583ed13ee9dc29450a08}\label{array-list_8h_a7e05e7fb0fca583ed13ee9dc29450a08}} -\index{array-\/list.h@{array-\/list.h}!list\_set@{list\_set}} -\index{list\_set@{list\_set}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_set()}{list\_set()}} -{\footnotesize\ttfamily void list\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{, }\item[{void $\ast$}]{ }\end{DoxyParamCaption})} - - - -remplace l\textquotesingle{}élément à la position donnée par l\textquotesingle{}élément donné - - -\begin{DoxyCode}{0} -\DoxyCodeLine{50 \{} -\DoxyCodeLine{51 it-\/>element[pos] = element;} -\DoxyCodeLine{52 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_a6555dbaf1bf1ecafac79e7dcfafa05d9}\label{array-list_8h_a6555dbaf1bf1ecafac79e7dcfafa05d9}} -\index{array-\/list.h@{array-\/list.h}!list\_size@{list\_size}} -\index{list\_size@{list\_size}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_size()}{list\_size()}} -{\footnotesize\ttfamily size\+\_\+t list\+\_\+size (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{ }\end{DoxyParamCaption})} - - - -revoie la taille de la liste - -\begin{DoxyReturn}{Returns} -size\+\_\+t -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{54 \{} -\DoxyCodeLine{55 \textcolor{keywordflow}{return} it-\/>size;} -\DoxyCodeLine{56 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{array-list_8h_ad8ea0715edb588b046fbe943a9c6577b}\label{array-list_8h_ad8ea0715edb588b046fbe943a9c6577b}} -\index{array-\/list.h@{array-\/list.h}!list\_take@{list\_take}} -\index{list\_take@{list\_take}!array-\/list.h@{array-\/list.h}} -\doxysubsubsection{\texorpdfstring{list\_take()}{list\_take()}} -{\footnotesize\ttfamily void$\ast$ list\+\_\+take (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$}]{, }\item[{int}]{ }\end{DoxyParamCaption})} - - - -retourne l\textquotesingle{}élément à la position idc, puis enlève cet élément de la liste - -\begin{DoxyReturn}{Returns} -void$\ast$ -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{73 \{} -\DoxyCodeLine{74 \textcolor{keywordtype}{void}* elmt = \mbox{\hyperlink{array-list_8c_a8da0eb9133b9b1821cfa6811d88f4259}{list\_get}}(it, pos);} -\DoxyCodeLine{75 } -\DoxyCodeLine{76 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = pos; i < it-\/>size-\/1; i++)\{} -\DoxyCodeLine{77 it-\/>element[i] = it-\/>element[i+1];} -\DoxyCodeLine{78 \}} -\DoxyCodeLine{79 it-\/>size-\/-\/;} -\DoxyCodeLine{80 \textcolor{keywordflow}{return} elmt;} -\DoxyCodeLine{81 \}} - -\end{DoxyCode} diff --git a/docs/latex/array-list_8h__dep__incl.dot b/docs/latex/array-list_8h__dep__incl.dot deleted file mode 100644 index 1ea08f1..0000000 --- a/docs/latex/array-list_8h__dep__incl.dot +++ /dev/null @@ -1,63 +0,0 @@ -digraph "include/array-list.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node3 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node3 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node3 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; - Node2 -> Node7 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node7 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node7 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node7 -> Node8 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node7 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node9 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node9 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node11 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node2 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node12 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node12 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node12 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node12 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node13 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node13 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node13 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node13 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node14 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; - Node2 -> Node15 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node15 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node15 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node15 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node16 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node16 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node16 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node16 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node17 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node17 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8c.html",tooltip=" "]; - Node2 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node18 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node18 [label="src/array-list.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8c.html",tooltip=" "]; - Node1 -> Node19 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node19 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8c.html",tooltip=" "]; - Node1 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/array-list_8h__incl.dot b/docs/latex/array-list_8h__incl.dot deleted file mode 100644 index 709d6eb..0000000 --- a/docs/latex/array-list_8h__incl.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "include/array-list.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex b/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex deleted file mode 100644 index 58f060e..0000000 --- a/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex +++ /dev/null @@ -1,29 +0,0 @@ -\hypertarget{dir_68267d1309a1af8e8297ef4c3efbcdba}{}\doxysection{src Directory Reference} -\label{dir_68267d1309a1af8e8297ef4c3efbcdba}\index{src Directory Reference@{src Directory Reference}} -Directory dependency graph for src\+: -% FIG 0 -\doxysubsection*{Files} -\begin{DoxyCompactItemize} -\item -file \mbox{\hyperlink{algo_8c}{algo.\+c}} -\item -file \mbox{\hyperlink{arbres_8c}{arbres.\+c}} -\item -file \mbox{\hyperlink{array-list_8c}{array-\/list.\+c}} -\item -file \mbox{\hyperlink{display_8c}{display.\+c}} -\item -file \mbox{\hyperlink{fonctions_8c}{fonctions.\+c}} -\item -file \mbox{\hyperlink{manageSIGINT_8c}{manage\+S\+I\+G\+I\+N\+T.\+c}} -\item -file \mbox{\hyperlink{options_8c}{options.\+c}} -\item -file \mbox{\hyperlink{parse_8c}{parse.\+c}} -\item -file \mbox{\hyperlink{pile_8c}{pile.\+c}} -\item -file \mbox{\hyperlink{restrictiveOptions_8c}{restrictive\+Options.\+c}} -\item -file \mbox{\hyperlink{stat_8c}{stat.\+c}} -\end{DoxyCompactItemize} diff --git a/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot b/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot deleted file mode 100644 index 6447659..0000000 --- a/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba_dep.dot +++ /dev/null @@ -1,8 +0,0 @@ -digraph "src" { - compound=true - node [ fontsize="10", fontname="Helvetica"]; - edge [ labelfontsize="10", labelfontname="Helvetica"]; - dir_68267d1309a1af8e8297ef4c3efbcdba [shape=box, label="src", style="filled", fillcolor="#eeeeff", pencolor="black", URL="dir_68267d1309a1af8e8297ef4c3efbcdba.html"]; - dir_d44c64559bbebec7f509842c48db8b23 [shape=box label="include" URL="dir_d44c64559bbebec7f509842c48db8b23.html"]; - dir_68267d1309a1af8e8297ef4c3efbcdba->dir_d44c64559bbebec7f509842c48db8b23 [headlabel="34", labeldistance=1.5 headhref="dir_000001_000000.html"]; -} diff --git a/docs/latex/dir_d44c64559bbebec7f509842c48db8b23.tex b/docs/latex/dir_d44c64559bbebec7f509842c48db8b23.tex deleted file mode 100644 index 6ed98e9..0000000 --- a/docs/latex/dir_d44c64559bbebec7f509842c48db8b23.tex +++ /dev/null @@ -1,27 +0,0 @@ -\hypertarget{dir_d44c64559bbebec7f509842c48db8b23}{}\doxysection{include Directory Reference} -\label{dir_d44c64559bbebec7f509842c48db8b23}\index{include Directory Reference@{include Directory Reference}} -\doxysubsection*{Files} -\begin{DoxyCompactItemize} -\item -file \mbox{\hyperlink{algo_8h}{algo.\+h}} -\item -file \mbox{\hyperlink{array-list_8h}{array-\/list.\+h}} -\item -file \mbox{\hyperlink{display_8h}{display.\+h}} -\item -file \mbox{\hyperlink{fonctions_8h}{fonctions.\+h}} -\item -file \mbox{\hyperlink{manageSIGINT_8h}{manage\+S\+I\+G\+I\+N\+T.\+h}} -\item -file \mbox{\hyperlink{options_8h}{options.\+h}} -\item -file \mbox{\hyperlink{parse_8h}{parse.\+h}} -\item -file \mbox{\hyperlink{pile_8h}{pile.\+h}} -\item -file \mbox{\hyperlink{restrictiveOptions_8h}{restrictive\+Options.\+h}} -\item -file \mbox{\hyperlink{stat_8h}{stat.\+h}} -\item -file \mbox{\hyperlink{struct_8h}{struct.\+h}} -\end{DoxyCompactItemize} diff --git a/docs/latex/display_8c.tex b/docs/latex/display_8c.tex deleted file mode 100644 index 7f5b0d7..0000000 --- a/docs/latex/display_8c.tex +++ /dev/null @@ -1,393 +0,0 @@ -\hypertarget{display_8c}{}\doxysection{src/display.c File Reference} -\label{display_8c}\index{src/display.c@{src/display.c}} -{\ttfamily \#include \char`\"{}../include/display.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$tps.\+h$>$}\newline -Include dependency graph for display.\+c\+: -% FIG 0 -\doxysubsection*{Macros} -\begin{DoxyCompactItemize} -\item -\#define \mbox{\hyperlink{display_8c_aed89bd71aee8be823e8a20ec4e093c1e}{H\+E\+I\+G\+HT}}~800 -\item -\#define \mbox{\hyperlink{display_8c_a241aeeb764887ae5e3de58b98f04b16d}{W\+I\+D\+TH}}~800 -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{display_8c_aa8ca658ab31a0f8c373547a7bc611a87}{info\+Display}} (void) -\item -void \mbox{\hyperlink{display_8c_abd00a978a929f7fbddb92e23286273d3}{scale\+Tree}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, int zoom, int left, int up) -\begin{DoxyCompactList}\small\item\em Effectue une transformation affine des coordonnées des arbres de la liste forest de taille size, de manière à recadrer les arbres dans la fenêtre de taille W\+I\+D\+T\+H$\ast$\+H\+E\+I\+G\+HT, et à prendre compte du zoom et du déplacement avec les flèches. \end{DoxyCompactList}\item -void \mbox{\hyperlink{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}{display\+Trees}} (\mbox{\hyperlink{structedge}{edge}} $\ast$edge\+List, size\+\_\+t size, \mbox{\hyperlink{structtree}{tree}} $\ast$forest) -\begin{DoxyCompactList}\small\item\em Une fonction qui permet d\textquotesingle{}afficher l\textquotesingle{}arbre recouvrant minimal. \end{DoxyCompactList}\item -double \mbox{\hyperlink{display_8c_a4eea0232034a5a41300e04edcc853f96}{minX}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Renvoie le champ geoloc.\+x minimum de la liste forest de taille size. \end{DoxyCompactList}\item -double \mbox{\hyperlink{display_8c_ab65f047e1be48c7ae41438104c94cd08}{minY}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Renvoie le champ geoloc.\+y minimum de la liste forest de taille size. \end{DoxyCompactList}\item -double \mbox{\hyperlink{display_8c_ab52bd6692aaad6ea9b396de78236e850}{maxX}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Renvoie le champ geoloc.\+x maximum de la liste forest de taille size. \end{DoxyCompactList}\item -double \mbox{\hyperlink{display_8c_a040ffc050c09814a96186ba85cbc87d4}{maxY}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Renvoie le champ geoloc.\+y maximum de la liste forest de taille size. \end{DoxyCompactList}\item -void \mbox{\hyperlink{display_8c_ab7d67ad0a7206fc20171512033d3fb2e}{get\+Extremum}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, double $\ast$minimumX, double $\ast$minimumY, double $\ast$maximumX, double $\ast$maximumY) -\begin{DoxyCompactList}\small\item\em Get the Extremum object Ecrit à l\textquotesingle{}emplacement des pointeurs passés en paramètre les extremums des champs geoloc.\+x et geoloc.\+y de la forêt d\textquotesingle{}arbre forest de taille size. \end{DoxyCompactList}\item -void \mbox{\hyperlink{display_8c_a550e90e7a5a56b5c11d17a005ac43dee}{loading\+Bar}} (int current, int total, clock\+\_\+t delta) -\begin{DoxyCompactList}\small\item\em Une fonction permettant de visualiser l\textquotesingle{}avancement d\textquotesingle{}un processus. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Macro Definition Documentation} -\mbox{\Hypertarget{display_8c_aed89bd71aee8be823e8a20ec4e093c1e}\label{display_8c_aed89bd71aee8be823e8a20ec4e093c1e}} -\index{display.c@{display.c}!HEIGHT@{HEIGHT}} -\index{HEIGHT@{HEIGHT}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{HEIGHT}{HEIGHT}} -{\footnotesize\ttfamily \#define H\+E\+I\+G\+HT~800} - -\mbox{\Hypertarget{display_8c_a241aeeb764887ae5e3de58b98f04b16d}\label{display_8c_a241aeeb764887ae5e3de58b98f04b16d}} -\index{display.c@{display.c}!WIDTH@{WIDTH}} -\index{WIDTH@{WIDTH}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{WIDTH}{WIDTH}} -{\footnotesize\ttfamily \#define W\+I\+D\+TH~800} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}\label{display_8c_a6d1822b75d0e0ba6328174a5d84cb875}} -\index{display.c@{display.c}!displayTrees@{displayTrees}} -\index{displayTrees@{displayTrees}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{displayTrees()}{displayTrees()}} -{\footnotesize\ttfamily void display\+Trees (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{liste\+Aretes, }\item[{size\+\_\+t}]{size, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{structure }\end{DoxyParamCaption})} - - - -Une fonction qui permet d\textquotesingle{}afficher l\textquotesingle{}arbre recouvrant minimal. - - -\begin{DoxyParams}{Parameters} -{\em liste\+Aretes} & la liste des aretes de l\textquotesingle{}arbre \\ -\hline -{\em size} & la taille du graphe (la structure) \\ -\hline -{\em structure} & la structure de l\textquotesingle{}arbre de taille size + 1 \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{45 \{} -\DoxyCodeLine{46 \mbox{\hyperlink{display_8c_aa8ca658ab31a0f8c373547a7bc611a87}{infoDisplay}}();} -\DoxyCodeLine{47 } -\DoxyCodeLine{48 size-\/-\/;} -\DoxyCodeLine{49 \textcolor{keywordtype}{double} x1, x2, y1, y2;} -\DoxyCodeLine{50 tps\_createWindow(\textcolor{stringliteral}{"Arbres de Paris"}, \mbox{\hyperlink{display_8c_a241aeeb764887ae5e3de58b98f04b16d}{WIDTH}}, \mbox{\hyperlink{display_8c_aed89bd71aee8be823e8a20ec4e093c1e}{HEIGHT}});} -\DoxyCodeLine{51 tps\_background(255, 255, 255);} -\DoxyCodeLine{52 tps\_setColor(0, 0, 0);} -\DoxyCodeLine{53 \mbox{\hyperlink{display_8c_abd00a978a929f7fbddb92e23286273d3}{scaleTree}}(forest, size + 1,0,0,0);} -\DoxyCodeLine{54 } -\DoxyCodeLine{55 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{57 y1 = edgeList[i].\mbox{\hyperlink{structedge_a691a39efbffc566e6d86d01c4858f54a}{tree1}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{58 x2 = edgeList[i].\mbox{\hyperlink{structedge_ab7d029eeb2b522e8f81373450c476741}{tree2}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{59 y2 = edgeList[i].\mbox{\hyperlink{structedge_ab7d029eeb2b522e8f81373450c476741}{tree2}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{60 tps\_drawLine(x1, y1, x2, y2);} -\DoxyCodeLine{61 \}} -\DoxyCodeLine{62 } -\DoxyCodeLine{63 \textcolor{keywordtype}{int} zoom=0;} -\DoxyCodeLine{64 \textcolor{keywordtype}{int} left=0;} -\DoxyCodeLine{65 \textcolor{keywordtype}{int} up=0;} -\DoxyCodeLine{66 \textcolor{keywordflow}{while}(tps\_isRunning())\{} -\DoxyCodeLine{67 } -\DoxyCodeLine{68 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_p ) \{zoom++;\}} -\DoxyCodeLine{69 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_m ) \{zoom-\/-\/;\}} -\DoxyCodeLine{70 } -\DoxyCodeLine{71 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_LEFT ) \{left++;\}} -\DoxyCodeLine{72 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_RIGHT ) \{left-\/-\/;\}} -\DoxyCodeLine{73 } -\DoxyCodeLine{74 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_UP ) \{up++;\}} -\DoxyCodeLine{75 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_DOWN ) \{up-\/-\/;\}} -\DoxyCodeLine{76 } -\DoxyCodeLine{77 } -\DoxyCodeLine{78 tps\_background(255, 255, 255);} -\DoxyCodeLine{79 \mbox{\hyperlink{display_8c_abd00a978a929f7fbddb92e23286273d3}{scaleTree}}(forest, size + 1,zoom,left,up);} -\DoxyCodeLine{80 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{82 y1 = edgeList[i].\mbox{\hyperlink{structedge_a691a39efbffc566e6d86d01c4858f54a}{tree1}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{83 x2 = edgeList[i].\mbox{\hyperlink{structedge_ab7d029eeb2b522e8f81373450c476741}{tree2}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{84 y2 = edgeList[i].\mbox{\hyperlink{structedge_ab7d029eeb2b522e8f81373450c476741}{tree2}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{85 tps\_drawLine(x1, y1, x2, y2);} -\DoxyCodeLine{86 \}} -\DoxyCodeLine{87 } -\DoxyCodeLine{88 tps\_render();} -\DoxyCodeLine{89 \} } -\DoxyCodeLine{90 tps\_closeWindow();} -\DoxyCodeLine{91 \textcolor{keywordflow}{return};} -\DoxyCodeLine{92 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_ab7d67ad0a7206fc20171512033d3fb2e}\label{display_8c_ab7d67ad0a7206fc20171512033d3fb2e}} -\index{display.c@{display.c}!getExtremum@{getExtremum}} -\index{getExtremum@{getExtremum}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{getExtremum()}{getExtremum()}} -{\footnotesize\ttfamily void get\+Extremum (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size, }\item[{double $\ast$}]{minimumX, }\item[{double $\ast$}]{minimumY, }\item[{double $\ast$}]{maximumX, }\item[{double $\ast$}]{maximumY }\end{DoxyParamCaption})} - - - -Get the Extremum object Ecrit à l\textquotesingle{}emplacement des pointeurs passés en paramètre les extremums des champs geoloc.\+x et geoloc.\+y de la forêt d\textquotesingle{}arbre forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -{\em minimumX} & \\ -\hline -{\em minimumY} & \\ -\hline -{\em maximumX} & \\ -\hline -{\em maximumY} & \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{171 \{} -\DoxyCodeLine{172 *minimumX = \mbox{\hyperlink{display_8c_a4eea0232034a5a41300e04edcc853f96}{minX}}(forest, size);} -\DoxyCodeLine{173 *minimumY = \mbox{\hyperlink{display_8c_ab65f047e1be48c7ae41438104c94cd08}{minY}}(forest, size);} -\DoxyCodeLine{174 *maximumX = \mbox{\hyperlink{display_8c_ab52bd6692aaad6ea9b396de78236e850}{maxX}}(forest, size);} -\DoxyCodeLine{175 *maximumY = \mbox{\hyperlink{display_8c_a040ffc050c09814a96186ba85cbc87d4}{maxY}}(forest, size);} -\DoxyCodeLine{176 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_aa8ca658ab31a0f8c373547a7bc611a87}\label{display_8c_aa8ca658ab31a0f8c373547a7bc611a87}} -\index{display.c@{display.c}!infoDisplay@{infoDisplay}} -\index{infoDisplay@{infoDisplay}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{infoDisplay()}{infoDisplay()}} -{\footnotesize\ttfamily void info\+Display (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{9 \{} -\DoxyCodeLine{10 printf(\textcolor{stringliteral}{"**********************************************\(\backslash\)n"});} -\DoxyCodeLine{11 printf(\textcolor{stringliteral}{"Pour zoomer appuyer sur p.\(\backslash\)n"});} -\DoxyCodeLine{12 printf(\textcolor{stringliteral}{"Pour dézoomer appuyer sur m.\(\backslash\)n"});} -\DoxyCodeLine{13 printf(\textcolor{stringliteral}{"Pour se déplacer utiliser les flèches.\(\backslash\)n"});} -\DoxyCodeLine{14 printf(\textcolor{stringliteral}{"\(\backslash\)n**********************************************\(\backslash\)n"});} -\DoxyCodeLine{15 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_a550e90e7a5a56b5c11d17a005ac43dee}\label{display_8c_a550e90e7a5a56b5c11d17a005ac43dee}} -\index{display.c@{display.c}!loadingBar@{loadingBar}} -\index{loadingBar@{loadingBar}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{loadingBar()}{loadingBar()}} -{\footnotesize\ttfamily void loading\+Bar (\begin{DoxyParamCaption}\item[{int}]{current, }\item[{int}]{total, }\item[{clock\+\_\+t}]{delta }\end{DoxyParamCaption})} - - - -Une fonction permettant de visualiser l\textquotesingle{}avancement d\textquotesingle{}un processus. - - -\begin{DoxyParams}{Parameters} -{\em current} & la quantité actuelle d\textquotesingle{}avancement du processus \\ -\hline -{\em total} & la quantité totale de référencee \\ -\hline -{\em delta} & le nombre de millisecondes écoulées depuis le début du programme \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{178 \{} -\DoxyCodeLine{179 \textcolor{keyword}{static} \textcolor{keywordtype}{double} previoustime = 0;} -\DoxyCodeLine{180 \textcolor{keywordtype}{double} newtime;} -\DoxyCodeLine{181 \textcolor{keywordflow}{if} (current != total \&\& current\%100 == 0)\{} -\DoxyCodeLine{182 printf(\textcolor{stringliteral}{"\%d/\%d -\/-\/ "}, current, total);} -\DoxyCodeLine{183 printf(\textcolor{stringliteral}{"Time since beginning : \%fs -\/-\/ "}, ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{184 newtime = 0.5*previoustime + 0.5*(((double)(delta * ((\textcolor{keywordtype}{float})total/(\textcolor{keywordtype}{float})current)))/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{185 printf(\textcolor{stringliteral}{"Time left estimated : \%fs\(\backslash\)r"}, newtime -\/ ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{186 previoustime = newtime;} -\DoxyCodeLine{187 \}} -\DoxyCodeLine{188 } -\DoxyCodeLine{189 \textcolor{keywordflow}{else} \textcolor{keywordflow}{if}(current == total)\{} -\DoxyCodeLine{190 printf(\textcolor{stringliteral}{"\%d/\%d -\/-\/ "}, current, total);} -\DoxyCodeLine{191 printf(\textcolor{stringliteral}{"Time since beginning : \%fs -\/-\/ "}, ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{192 printf(\textcolor{stringliteral}{"Time left estimated : 0\(\backslash\)n"});} -\DoxyCodeLine{193 \}} -\DoxyCodeLine{194 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_ab52bd6692aaad6ea9b396de78236e850}\label{display_8c_ab52bd6692aaad6ea9b396de78236e850}} -\index{display.c@{display.c}!maxX@{maxX}} -\index{maxX@{maxX}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{maxX()}{maxX()}} -{\footnotesize\ttfamily double maxX (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Renvoie le champ geoloc.\+x maximum de la liste forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{140 \{} -\DoxyCodeLine{141 \textcolor{keywordtype}{size\_t} i = 0;} -\DoxyCodeLine{142 \textcolor{keywordtype}{double} distMax = forest[i].\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{143 } -\DoxyCodeLine{144 \textcolor{keywordflow}{for} (i = 1; i distMax) distMax = forest[i].\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{146 \}} -\DoxyCodeLine{147 } -\DoxyCodeLine{148 \textcolor{keywordflow}{return} distMax;} -\DoxyCodeLine{149 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_a040ffc050c09814a96186ba85cbc87d4}\label{display_8c_a040ffc050c09814a96186ba85cbc87d4}} -\index{display.c@{display.c}!maxY@{maxY}} -\index{maxY@{maxY}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{maxY()}{maxY()}} -{\footnotesize\ttfamily double maxY (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Renvoie le champ geoloc.\+y maximum de la liste forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{158 \{} -\DoxyCodeLine{159 \textcolor{keywordtype}{size\_t} i = 0;} -\DoxyCodeLine{160 \textcolor{keywordtype}{double} distMax = forest[i].\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{161 } -\DoxyCodeLine{162 \textcolor{keywordflow}{for} (i = 1; i distMax) distMax = forest[i].\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}};} -\DoxyCodeLine{164 \}} -\DoxyCodeLine{165 } -\DoxyCodeLine{166 \textcolor{keywordflow}{return} distMax;} -\DoxyCodeLine{167 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8c_a4eea0232034a5a41300e04edcc853f96}\label{display_8c_a4eea0232034a5a41300e04edcc853f96}} -\index{display.c@{display.c}!minX@{minX}} -\index{minX@{minX}!display.c@{display.c}} -\doxysubsubsection{\texorpdfstring{minX()}{minX()}} -{\footnotesize\ttfamily double minX (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Renvoie le champ geoloc.\+x minimum de la liste forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{104 \{} -\DoxyCodeLine{105 \textcolor{keywordtype}{size\_t} i = 0;} -\DoxyCodeLine{106 \textcolor{keywordtype}{double} distMin = forest[i].\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}};} -\DoxyCodeLine{107 } -\DoxyCodeLine{108 \textcolor{keywordflow}{for} (i = 1; i Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/display_8h.tex b/docs/latex/display_8h.tex deleted file mode 100644 index a09a350..0000000 --- a/docs/latex/display_8h.tex +++ /dev/null @@ -1,167 +0,0 @@ -\hypertarget{display_8h}{}\doxysection{include/display.h File Reference} -\label{display_8h}\index{include/display.h@{include/display.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$time.\+h$>$}\newline -Include dependency graph for display.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{display_8h_adb313f63bb0c4ad9ce73a49eb31e3992}{display\+Trees}} (\mbox{\hyperlink{structedge}{edge}} $\ast$liste\+Aretes, size\+\_\+t size, \mbox{\hyperlink{structtree}{tree}} $\ast$structure) -\begin{DoxyCompactList}\small\item\em Une fonction qui permet d\textquotesingle{}afficher l\textquotesingle{}arbre recouvrant minimal. \end{DoxyCompactList}\item -void \mbox{\hyperlink{display_8h_a550e90e7a5a56b5c11d17a005ac43dee}{loading\+Bar}} (int current, int total, clock\+\_\+t delta) -\begin{DoxyCompactList}\small\item\em Une fonction permettant de visualiser l\textquotesingle{}avancement d\textquotesingle{}un processus. \end{DoxyCompactList}\item -void \mbox{\hyperlink{display_8h_ab7d67ad0a7206fc20171512033d3fb2e}{get\+Extremum}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, double $\ast$minimumX, double $\ast$minimumY, double $\ast$maximumX, double $\ast$maximumY) -\begin{DoxyCompactList}\small\item\em Get the Extremum object Ecrit à l\textquotesingle{}emplacement des pointeurs passés en paramètre les extremums des champs geoloc.\+x et geoloc.\+y de la forêt d\textquotesingle{}arbre forest de taille size. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{display_8h_adb313f63bb0c4ad9ce73a49eb31e3992}\label{display_8h_adb313f63bb0c4ad9ce73a49eb31e3992}} -\index{display.h@{display.h}!displayTrees@{displayTrees}} -\index{displayTrees@{displayTrees}!display.h@{display.h}} -\doxysubsubsection{\texorpdfstring{displayTrees()}{displayTrees()}} -{\footnotesize\ttfamily void display\+Trees (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{liste\+Aretes, }\item[{size\+\_\+t}]{size, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{structure }\end{DoxyParamCaption})} - - - -Une fonction qui permet d\textquotesingle{}afficher l\textquotesingle{}arbre recouvrant minimal. - - -\begin{DoxyParams}{Parameters} -{\em liste\+Aretes} & la liste des aretes de l\textquotesingle{}arbre \\ -\hline -{\em size} & la taille du graphe (la structure) \\ -\hline -{\em structure} & la structure de l\textquotesingle{}arbre de taille size + 1 \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{45 \{} -\DoxyCodeLine{46 \mbox{\hyperlink{display_8c_aa8ca658ab31a0f8c373547a7bc611a87}{infoDisplay}}();} -\DoxyCodeLine{47 } -\DoxyCodeLine{48 size-\/-\/;} -\DoxyCodeLine{49 \textcolor{keywordtype}{double} x1, x2, y1, y2;} -\DoxyCodeLine{50 tps\_createWindow(\textcolor{stringliteral}{"Arbres de Paris"}, \mbox{\hyperlink{display_8c_a241aeeb764887ae5e3de58b98f04b16d}{WIDTH}}, \mbox{\hyperlink{display_8c_aed89bd71aee8be823e8a20ec4e093c1e}{HEIGHT}});} -\DoxyCodeLine{51 tps\_background(255, 255, 255);} -\DoxyCodeLine{52 tps\_setColor(0, 0, 0);} -\DoxyCodeLine{53 \mbox{\hyperlink{display_8c_abd00a978a929f7fbddb92e23286273d3}{scaleTree}}(forest, size + 1,0,0,0);} -\DoxyCodeLine{54 } -\DoxyCodeLine{55 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; igeoloc.x;} -\DoxyCodeLine{57 y1 = edgeList[i].tree1-\/>geoloc.y;} -\DoxyCodeLine{58 x2 = edgeList[i].tree2-\/>geoloc.x;} -\DoxyCodeLine{59 y2 = edgeList[i].tree2-\/>geoloc.y;} -\DoxyCodeLine{60 tps\_drawLine(x1, y1, x2, y2);} -\DoxyCodeLine{61 \}} -\DoxyCodeLine{62 } -\DoxyCodeLine{63 \textcolor{keywordtype}{int} zoom=0;} -\DoxyCodeLine{64 \textcolor{keywordtype}{int} left=0;} -\DoxyCodeLine{65 \textcolor{keywordtype}{int} up=0;} -\DoxyCodeLine{66 \textcolor{keywordflow}{while}(tps\_isRunning())\{} -\DoxyCodeLine{67 } -\DoxyCodeLine{68 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_p ) \{zoom++;\}} -\DoxyCodeLine{69 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_m ) \{zoom-\/-\/;\}} -\DoxyCodeLine{70 } -\DoxyCodeLine{71 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_LEFT ) \{left++;\}} -\DoxyCodeLine{72 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_RIGHT ) \{left-\/-\/;\}} -\DoxyCodeLine{73 } -\DoxyCodeLine{74 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_UP ) \{up++;\}} -\DoxyCodeLine{75 \textcolor{keywordflow}{if}(tps\_getKeyPressed() == SDLK\_DOWN ) \{up-\/-\/;\}} -\DoxyCodeLine{76 } -\DoxyCodeLine{77 } -\DoxyCodeLine{78 tps\_background(255, 255, 255);} -\DoxyCodeLine{79 \mbox{\hyperlink{display_8c_abd00a978a929f7fbddb92e23286273d3}{scaleTree}}(forest, size + 1,zoom,left,up);} -\DoxyCodeLine{80 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; igeoloc.x;} -\DoxyCodeLine{82 y1 = edgeList[i].tree1-\/>geoloc.y;} -\DoxyCodeLine{83 x2 = edgeList[i].tree2-\/>geoloc.x;} -\DoxyCodeLine{84 y2 = edgeList[i].tree2-\/>geoloc.y;} -\DoxyCodeLine{85 tps\_drawLine(x1, y1, x2, y2);} -\DoxyCodeLine{86 \}} -\DoxyCodeLine{87 } -\DoxyCodeLine{88 tps\_render();} -\DoxyCodeLine{89 \} } -\DoxyCodeLine{90 tps\_closeWindow();} -\DoxyCodeLine{91 \textcolor{keywordflow}{return};} -\DoxyCodeLine{92 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8h_ab7d67ad0a7206fc20171512033d3fb2e}\label{display_8h_ab7d67ad0a7206fc20171512033d3fb2e}} -\index{display.h@{display.h}!getExtremum@{getExtremum}} -\index{getExtremum@{getExtremum}!display.h@{display.h}} -\doxysubsubsection{\texorpdfstring{getExtremum()}{getExtremum()}} -{\footnotesize\ttfamily void get\+Extremum (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size, }\item[{double $\ast$}]{minimumX, }\item[{double $\ast$}]{minimumY, }\item[{double $\ast$}]{maximumX, }\item[{double $\ast$}]{maximumY }\end{DoxyParamCaption})} - - - -Get the Extremum object Ecrit à l\textquotesingle{}emplacement des pointeurs passés en paramètre les extremums des champs geoloc.\+x et geoloc.\+y de la forêt d\textquotesingle{}arbre forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -{\em minimumX} & \\ -\hline -{\em minimumY} & \\ -\hline -{\em maximumX} & \\ -\hline -{\em maximumY} & \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{171 \{} -\DoxyCodeLine{172 *minimumX = \mbox{\hyperlink{display_8c_a4eea0232034a5a41300e04edcc853f96}{minX}}(forest, size);} -\DoxyCodeLine{173 *minimumY = \mbox{\hyperlink{display_8c_ab65f047e1be48c7ae41438104c94cd08}{minY}}(forest, size);} -\DoxyCodeLine{174 *maximumX = \mbox{\hyperlink{display_8c_ab52bd6692aaad6ea9b396de78236e850}{maxX}}(forest, size);} -\DoxyCodeLine{175 *maximumY = \mbox{\hyperlink{display_8c_a040ffc050c09814a96186ba85cbc87d4}{maxY}}(forest, size);} -\DoxyCodeLine{176 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{display_8h_a550e90e7a5a56b5c11d17a005ac43dee}\label{display_8h_a550e90e7a5a56b5c11d17a005ac43dee}} -\index{display.h@{display.h}!loadingBar@{loadingBar}} -\index{loadingBar@{loadingBar}!display.h@{display.h}} -\doxysubsubsection{\texorpdfstring{loadingBar()}{loadingBar()}} -{\footnotesize\ttfamily void loading\+Bar (\begin{DoxyParamCaption}\item[{int}]{current, }\item[{int}]{total, }\item[{clock\+\_\+t}]{delta }\end{DoxyParamCaption})} - - - -Une fonction permettant de visualiser l\textquotesingle{}avancement d\textquotesingle{}un processus. - - -\begin{DoxyParams}{Parameters} -{\em current} & la quantité actuelle d\textquotesingle{}avancement du processus \\ -\hline -{\em total} & la quantité totale de référencee \\ -\hline -{\em delta} & le nombre de millisecondes écoulées depuis le début du programme \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{178 \{} -\DoxyCodeLine{179 \textcolor{keyword}{static} \textcolor{keywordtype}{double} previoustime = 0;} -\DoxyCodeLine{180 \textcolor{keywordtype}{double} newtime;} -\DoxyCodeLine{181 \textcolor{keywordflow}{if} (current != total \&\& current\%100 == 0)\{} -\DoxyCodeLine{182 printf(\textcolor{stringliteral}{"\%d/\%d -\/-\/ "}, current, total);} -\DoxyCodeLine{183 printf(\textcolor{stringliteral}{"Time since beginning : \%fs -\/-\/ "}, ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{184 newtime = 0.5*previoustime + 0.5*(((double)(delta * ((\textcolor{keywordtype}{float})total/(\textcolor{keywordtype}{float})current)))/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{185 printf(\textcolor{stringliteral}{"Time left estimated : \%fs\(\backslash\)r"}, newtime -\/ ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{186 previoustime = newtime;} -\DoxyCodeLine{187 \}} -\DoxyCodeLine{188 } -\DoxyCodeLine{189 \textcolor{keywordflow}{else} \textcolor{keywordflow}{if}(current == total)\{} -\DoxyCodeLine{190 printf(\textcolor{stringliteral}{"\%d/\%d -\/-\/ "}, current, total);} -\DoxyCodeLine{191 printf(\textcolor{stringliteral}{"Time since beginning : \%fs -\/-\/ "}, ((\textcolor{keywordtype}{double})delta)/CLOCKS\_PER\_SEC);} -\DoxyCodeLine{192 printf(\textcolor{stringliteral}{"Time left estimated : 0\(\backslash\)n"});} -\DoxyCodeLine{193 \}} -\DoxyCodeLine{194 \}} - -\end{DoxyCode} diff --git a/docs/latex/display_8h__dep__incl.dot b/docs/latex/display_8h__dep__incl.dot deleted file mode 100644 index 9bfa3b5..0000000 --- a/docs/latex/display_8h__dep__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/display.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; -} diff --git a/docs/latex/display_8h__incl.dot b/docs/latex/display_8h__incl.dot deleted file mode 100644 index ddb62ca..0000000 --- a/docs/latex/display_8h__incl.dot +++ /dev/null @@ -1,17 +0,0 @@ -digraph "include/display.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/doxygen.sty b/docs/latex/doxygen.sty deleted file mode 100644 index 78a5254..0000000 --- a/docs/latex/doxygen.sty +++ /dev/null @@ -1,576 +0,0 @@ -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{doxygen} - -% Packages used by this style file -\RequirePackage{alltt} -%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package -\RequirePackage{calc} -\RequirePackage{float} -%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package -\RequirePackage{verbatim} -\RequirePackage[table]{xcolor} -\RequirePackage{longtable_doxygen} -\RequirePackage{tabu_doxygen} -\RequirePackage{fancyvrb} -\RequirePackage{tabularx} -\RequirePackage{multirow} -\RequirePackage{hanging} -\RequirePackage{ifpdf} -\RequirePackage{adjustbox} -\RequirePackage{amssymb} -\RequirePackage{stackengine} -\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis - -%---------- Internal commands used in this style file ---------------- - -\newcommand{\ensurespace}[1]{% - \begingroup% - \setlength{\dimen@}{#1}% - \vskip\z@\@plus\dimen@% - \penalty -100\vskip\z@\@plus -\dimen@% - \vskip\dimen@% - \penalty 9999% - \vskip -\dimen@% - \vskip\z@skip% hide the previous |\vskip| from |\addvspace| - \endgroup% -} - -\newcommand{\DoxyHorRuler}[1]{% - \setlength{\parskip}{0ex plus 0ex minus 0ex}% - \ifthenelse{#1=0}% - {% - \hrule% - }% - {% - \hrulefilll% - }% -} -\newcommand{\DoxyLabelFont}{} -\newcommand{\entrylabel}[1]{% - {% - \parbox[b]{\labelwidth-4pt}{% - \makebox[0pt][l]{\DoxyLabelFont#1}% - \vspace{1.5\baselineskip}% - }% - }% -} - -\newenvironment{DoxyDesc}[1]{% - \ensurespace{4\baselineskip}% - \begin{list}{}{% - \settowidth{\labelwidth}{20pt}% - %\setlength{\parsep}{0pt}% - \setlength{\itemsep}{0pt}% - \setlength{\leftmargin}{\labelwidth+\labelsep}% - \renewcommand{\makelabel}{\entrylabel}% - }% - \item[#1]% -}{% - \end{list}% -} - -\newsavebox{\xrefbox} -\newlength{\xreflength} -\newcommand{\xreflabel}[1]{% - \sbox{\xrefbox}{#1}% - \setlength{\xreflength}{\wd\xrefbox}% - \ifthenelse{\xreflength>\labelwidth}{% - \begin{minipage}{\textwidth}% - \setlength{\parindent}{0pt}% - \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}% - \end{minipage}% - }{% - \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}% - }% -} - -%---------- Commands used by doxygen LaTeX output generator ---------- - -% Used by
     ... 
    -\newenvironment{DoxyPre}{% - \small% - \begin{alltt}% -}{% - \end{alltt}% - \normalsize% -} -% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output. -\newlength{\CodeWidthChar} -\newlength{\CodeHeightChar} -\settowidth{\CodeWidthChar}{?} -\settoheight{\CodeHeightChar}{?} -% Necessary for hanging indent -\newlength{\DoxyCodeWidth} - -\newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par} - -\newcommand\NiceSpace{% - \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}% -} - -% Used by @code ... @endcode -\newenvironment{DoxyCode}[1]{% - \par% - \scriptsize% - \normalfont\ttfamily% - \rightskip0pt plus 1fil% - \settowidth{\DoxyCodeWidth}{000000}% - \settowidth{\CodeWidthChar}{?}% - \settoheight{\CodeHeightChar}{?}% - \setlength{\parskip}{0ex plus 0ex minus 0ex}% - \ifthenelse{\equal{#1}{0}} - { - {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces% - } - { - {\lccode`~32 \lowercase{\global\let~}}\obeyspaces% - } - -}{% - \normalfont% - \normalsize% - \settowidth{\CodeWidthChar}{?}% - \settoheight{\CodeHeightChar}{?}% -} - -% Redefining not defined characters, i.e. "Replacement Character" in tex output. -\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{% - \textcolor{white}{\sffamily\bfseries\small ?}}{% - \rotatebox{45}{$\blacksquare$}}}} - -% Used by @example, @include, @includelineno and @dontinclude -\newenvironment{DoxyCodeInclude}[1]{% - \DoxyCode{#1}% -}{% - \endDoxyCode% -} - -% Used by @verbatim ... @endverbatim -\newenvironment{DoxyVerb}{% - \footnotesize% - \verbatim% -}{% - \endverbatim% - \normalsize% -} - -% Used by @verbinclude -\newenvironment{DoxyVerbInclude}{% - \DoxyVerb% -}{% - \endDoxyVerb% -} - -% Used by numbered lists (using '-#' or
      ...
    ) -\newenvironment{DoxyEnumerate}{% - \enumerate% -}{% - \endenumerate% -} - -% Used by bullet lists (using '-', @li, @arg, or
      ...
    ) -\newenvironment{DoxyItemize}{% - \itemize% -}{% - \enditemize% -} - -% Used by description lists (using
    ...
    ) -\newenvironment{DoxyDescription}{% - \description% -}{% - \enddescription% -} - -% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc -% (only if caption is specified) -\newenvironment{DoxyImage}{% - \begin{figure}[H]% - \begin{center}% -}{% - \end{center}% - \end{figure}% -} - -% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc -% (only if no caption is specified) -\newenvironment{DoxyImageNoCaption}{% - \begin{center}% -}{% - \end{center}% -} - -% Used by @image -% (only if inline is specified) -\newenvironment{DoxyInlineImage}{% -}{% -} - -% Used by @attention -\newenvironment{DoxyAttention}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @author and @authors -\newenvironment{DoxyAuthor}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @date -\newenvironment{DoxyDate}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @invariant -\newenvironment{DoxyInvariant}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @note -\newenvironment{DoxyNote}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @post -\newenvironment{DoxyPostcond}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @pre -\newenvironment{DoxyPrecond}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @copyright -\newenvironment{DoxyCopyright}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @remark -\newenvironment{DoxyRemark}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @return and @returns -\newenvironment{DoxyReturn}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @since -\newenvironment{DoxySince}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @see -\newenvironment{DoxySeeAlso}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @version -\newenvironment{DoxyVersion}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @warning -\newenvironment{DoxyWarning}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by @internal -\newenvironment{DoxyInternal}[1]{% - \paragraph*{#1}% -}{% -} - -% Used by @par and @paragraph -\newenvironment{DoxyParagraph}[1]{% - \begin{DoxyDesc}{#1}% -}{% - \end{DoxyDesc}% -} - -% Used by parameter lists -\newenvironment{DoxyParams}[2][]{% - \tabulinesep=1mm% - \par% - \ifthenelse{\equal{#1}{}}% - {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description - {\ifthenelse{\equal{#1}{1}}% - {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc - {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc - } - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used for fields of simple structs -\newenvironment{DoxyFields}[1]{% - \tabulinesep=1mm% - \par% - \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}% - \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used for fields simple class style enums -\newenvironment{DoxyEnumFields}[1]{% - \tabulinesep=1mm% - \par% - \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used for parameters within a detailed function description -\newenvironment{DoxyParamCaption}{% - \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}% -}{% -} - -% Used by return value lists -\newenvironment{DoxyRetVals}[1]{% - \tabulinesep=1mm% - \par% - \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used by exception lists -\newenvironment{DoxyExceptions}[1]{% - \tabulinesep=1mm% - \par% - \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used by template parameter lists -\newenvironment{DoxyTemplParams}[1]{% - \tabulinesep=1mm% - \par% - \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endfirsthead% - \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% - \hline% - \endhead% -}{% - \end{longtabu*}% - \vspace{6pt}% -} - -% Used for member lists -\newenvironment{DoxyCompactItemize}{% - \begin{itemize}% - \setlength{\itemsep}{-3pt}% - \setlength{\parsep}{0pt}% - \setlength{\topsep}{0pt}% - \setlength{\partopsep}{0pt}% -}{% - \end{itemize}% -} - -% Used for member descriptions -\newenvironment{DoxyCompactList}{% - \begin{list}{}{% - \setlength{\leftmargin}{0.5cm}% - \setlength{\itemsep}{0pt}% - \setlength{\parsep}{0pt}% - \setlength{\topsep}{0pt}% - \renewcommand{\makelabel}{\hfill}% - }% -}{% - \end{list}% -} - -% Used for reference lists (@bug, @deprecated, @todo, etc.) -\newenvironment{DoxyRefList}{% - \begin{list}{}{% - \setlength{\labelwidth}{10pt}% - \setlength{\leftmargin}{\labelwidth}% - \addtolength{\leftmargin}{\labelsep}% - \renewcommand{\makelabel}{\xreflabel}% - }% -}{% - \end{list}% -} - -% Used by @bug, @deprecated, @todo, etc. -\newenvironment{DoxyRefDesc}[1]{% - \begin{list}{}{% - \renewcommand\makelabel[1]{\textbf{##1}}% - \settowidth\labelwidth{\makelabel{#1}}% - \setlength\leftmargin{\labelwidth+\labelsep}% - }% -}{% - \end{list}% -} - -% Used by parameter lists and simple sections -\newenvironment{Desc} -{\begin{list}{}{% - \settowidth{\labelwidth}{20pt}% - \setlength{\parsep}{0pt}% - \setlength{\itemsep}{0pt}% - \setlength{\leftmargin}{\labelwidth+\labelsep}% - \renewcommand{\makelabel}{\entrylabel}% - } -}{% - \end{list}% -} - -% Used by tables -\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}% -\newenvironment{TabularC}[1]% -{\tabulinesep=1mm -\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}% -{\end{longtabu*}\par}% - -\newenvironment{TabularNC}[1]% -{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}% -{\end{tabu}\par}% - -% Used for member group headers -\newenvironment{Indent}{% - \begin{list}{}{% - \setlength{\leftmargin}{0.5cm}% - }% - \item[]\ignorespaces% -}{% - \unskip% - \end{list}% -} - -% Used when hyperlinks are turned off -\newcommand{\doxyref}[3]{% - \textbf{#1} (\textnormal{#2}\,\pageref{#3})% -} - -% Used to link to a table when hyperlinks are turned on -\newcommand{\doxytablelink}[2]{% - \ref{#1}% -} - -% Used to link to a table when hyperlinks are turned off -\newcommand{\doxytableref}[3]{% - \ref{#3}% -} - -% Used by @addindex -\newcommand{\lcurly}{\{} -\newcommand{\rcurly}{\}} - -% Colors used for syntax highlighting -\definecolor{comment}{rgb}{0.5,0.0,0.0} -\definecolor{keyword}{rgb}{0.0,0.5,0.0} -\definecolor{keywordtype}{rgb}{0.38,0.25,0.125} -\definecolor{keywordflow}{rgb}{0.88,0.5,0.0} -\definecolor{preprocessor}{rgb}{0.5,0.38,0.125} -\definecolor{stringliteral}{rgb}{0.0,0.125,0.25} -\definecolor{charliteral}{rgb}{0.0,0.5,0.5} -\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0} -\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43} -\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0} -\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0} - -% Color used for table heading -\newcommand{\tableheadbgcolor}{lightgray}% - -% Version of hypertarget with correct landing location -\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}} - -% possibility to have sections etc. be within the margins -% unfortunately had to copy part of book.cls and add \raggedright -\makeatletter -\newcommand\doxysection{\@startsection {section}{1}{\z@}% - {-3.5ex \@plus -1ex \@minus -.2ex}% - {2.3ex \@plus.2ex}% - {\raggedright\normalfont\Large\bfseries}} -\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\raggedright\normalfont\large\bfseries}} -\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}% - {-3.25ex\@plus -1ex \@minus -.2ex}% - {1.5ex \@plus .2ex}% - {\raggedright\normalfont\normalsize\bfseries}} -\newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}% - {3.25ex \@plus1ex \@minus.2ex}% - {-1em}% - {\raggedright\normalfont\normalsize\bfseries}} -\newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}% - {3.25ex \@plus1ex \@minus .2ex}% - {-1em}% - {\raggedright\normalfont\normalsize\bfseries}} -\makeatother -% Define caption that is also suitable in a table -\makeatletter -\def\doxyfigcaption{% -\refstepcounter{figure}% -\@dblarg{\@caption{figure}}} -\makeatother diff --git a/docs/latex/files.tex b/docs/latex/files.tex deleted file mode 100644 index c3a2108..0000000 --- a/docs/latex/files.tex +++ /dev/null @@ -1,25 +0,0 @@ -\doxysection{File List} -Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList} -\item\contentsline{section}{include/\mbox{\hyperlink{algo_8h}{algo.\+h}} }{\pageref{algo_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{array-list_8h}{array-\/list.\+h}} }{\pageref{array-list_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{display_8h}{display.\+h}} }{\pageref{display_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{fonctions_8h}{fonctions.\+h}} }{\pageref{fonctions_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{manageSIGINT_8h}{manage\+S\+I\+G\+I\+N\+T.\+h}} }{\pageref{manageSIGINT_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{options_8h}{options.\+h}} }{\pageref{options_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{parse_8h}{parse.\+h}} }{\pageref{parse_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{pile_8h}{pile.\+h}} }{\pageref{pile_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{restrictiveOptions_8h}{restrictive\+Options.\+h}} }{\pageref{restrictiveOptions_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{stat_8h}{stat.\+h}} }{\pageref{stat_8h}}{} -\item\contentsline{section}{include/\mbox{\hyperlink{struct_8h}{struct.\+h}} }{\pageref{struct_8h}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{algo_8c}{algo.\+c}} }{\pageref{algo_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{arbres_8c}{arbres.\+c}} }{\pageref{arbres_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{array-list_8c}{array-\/list.\+c}} }{\pageref{array-list_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{display_8c}{display.\+c}} }{\pageref{display_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{fonctions_8c}{fonctions.\+c}} }{\pageref{fonctions_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{manageSIGINT_8c}{manage\+S\+I\+G\+I\+N\+T.\+c}} }{\pageref{manageSIGINT_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{options_8c}{options.\+c}} }{\pageref{options_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{parse_8c}{parse.\+c}} }{\pageref{parse_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{pile_8c}{pile.\+c}} }{\pageref{pile_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{restrictiveOptions_8c}{restrictive\+Options.\+c}} }{\pageref{restrictiveOptions_8c}}{} -\item\contentsline{section}{src/\mbox{\hyperlink{stat_8c}{stat.\+c}} }{\pageref{stat_8c}}{} -\end{DoxyCompactList} diff --git a/docs/latex/fonctions_8c.tex b/docs/latex/fonctions_8c.tex deleted file mode 100644 index d61690f..0000000 --- a/docs/latex/fonctions_8c.tex +++ /dev/null @@ -1,141 +0,0 @@ -\hypertarget{fonctions_8c}{}\doxysection{src/fonctions.c File Reference} -\label{fonctions_8c}\index{src/fonctions.c@{src/fonctions.c}} -{\ttfamily \#include \char`\"{}../include/fonctions.\+h\char`\"{}}\newline -{\ttfamily \#include $<$math.\+h$>$}\newline -Include dependency graph for fonctions.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -double \mbox{\hyperlink{fonctions_8c_a62955c07d956aebbaf0db45e96e83100}{get\+Mean\+Longitude}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Get the Mean Longitude object Renvoie la longitude moyenne des arbres de la liste forest de taille size. \end{DoxyCompactList}\item -double \mbox{\hyperlink{fonctions_8c_a4e28ba677802ecff6a230577f4d1b3c0}{get\+Mean\+Latitude}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size. \end{DoxyCompactList}\item -void \mbox{\hyperlink{fonctions_8c_af18ef119d8c281b81165033c74ad49f1}{projection\+Trees}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Fais la projection équirectangulaire des arbres de la liste forest de taille size. \end{DoxyCompactList}\item -double \mbox{\hyperlink{fonctions_8c_a069ef6fd0a0890ba4f9548734804118f}{distance\+Trees}} (\mbox{\hyperlink{structtree}{tree}} $\ast$tree1, \mbox{\hyperlink{structtree}{tree}} $\ast$tree2) -\begin{DoxyCompactList}\small\item\em Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{fonctions_8c_a069ef6fd0a0890ba4f9548734804118f}\label{fonctions_8c_a069ef6fd0a0890ba4f9548734804118f}} -\index{fonctions.c@{fonctions.c}!distanceTrees@{distanceTrees}} -\index{distanceTrees@{distanceTrees}!fonctions.c@{fonctions.c}} -\doxysubsubsection{\texorpdfstring{distanceTrees()}{distanceTrees()}} -{\footnotesize\ttfamily double distance\+Trees (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree1, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree2 }\end{DoxyParamCaption})} - - - -Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. - - -\begin{DoxyParams}{Parameters} -{\em tree1} & premier arbre à comparer \\ -\hline -{\em tree2} & second arbre à comparer \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{50 \{} -\DoxyCodeLine{51 \textcolor{keywordflow}{return} ((pow(tree1-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} -\/ tree2-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}}, 2) + pow(tree1-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} -\/ tree2-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}}, 2)));} -\DoxyCodeLine{52 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{fonctions_8c_a4e28ba677802ecff6a230577f4d1b3c0}\label{fonctions_8c_a4e28ba677802ecff6a230577f4d1b3c0}} -\index{fonctions.c@{fonctions.c}!getMeanLatitude@{getMeanLatitude}} -\index{getMeanLatitude@{getMeanLatitude}!fonctions.c@{fonctions.c}} -\doxysubsubsection{\texorpdfstring{getMeanLatitude()}{getMeanLatitude()}} -{\footnotesize\ttfamily double get\+Mean\+Latitude (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Get the Mean Latitude object Renvoie la latitude moyenne des arbres de la liste forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{29 \{} -\DoxyCodeLine{30 \textcolor{keywordtype}{double} meanLatitude = 0;} -\DoxyCodeLine{31 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/fonctions_8h.tex b/docs/latex/fonctions_8h.tex deleted file mode 100644 index 5c5c3a2..0000000 --- a/docs/latex/fonctions_8h.tex +++ /dev/null @@ -1,108 +0,0 @@ -\hypertarget{fonctions_8h}{}\doxysection{include/fonctions.h File Reference} -\label{fonctions_8h}\index{include/fonctions.h@{include/fonctions.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -{\ttfamily \#include $<$tps.\+h$>$}\newline -Include dependency graph for fonctions.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Macros} -\begin{DoxyCompactItemize} -\item -\#define \mbox{\hyperlink{fonctions_8h_a3304c99f43f534878204486fc7b9673d}{R\+A\+Y\+ON}}~6378137.\+0 -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -double \mbox{\hyperlink{fonctions_8h_a069ef6fd0a0890ba4f9548734804118f}{distance\+Trees}} (\mbox{\hyperlink{structtree}{tree}} $\ast$tree1, \mbox{\hyperlink{structtree}{tree}} $\ast$tree2) -\begin{DoxyCompactList}\small\item\em Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. \end{DoxyCompactList}\item -double \mbox{\hyperlink{fonctions_8h_a86aeec989899cd0691300d15d5b7de5f}{radians}} (double) -\begin{DoxyCompactList}\small\item\em Cette fonction renvoie la conversion en radians d\textquotesingle{}un angle exprimé en degrés. \end{DoxyCompactList}\item -void \mbox{\hyperlink{fonctions_8h_af18ef119d8c281b81165033c74ad49f1}{projection\+Trees}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em Fais la projection équirectangulaire des arbres de la liste forest de taille size. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Macro Definition Documentation} -\mbox{\Hypertarget{fonctions_8h_a3304c99f43f534878204486fc7b9673d}\label{fonctions_8h_a3304c99f43f534878204486fc7b9673d}} -\index{fonctions.h@{fonctions.h}!RAYON@{RAYON}} -\index{RAYON@{RAYON}!fonctions.h@{fonctions.h}} -\doxysubsubsection{\texorpdfstring{RAYON}{RAYON}} -{\footnotesize\ttfamily \#define R\+A\+Y\+ON~6378137.\+0} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{fonctions_8h_a069ef6fd0a0890ba4f9548734804118f}\label{fonctions_8h_a069ef6fd0a0890ba4f9548734804118f}} -\index{fonctions.h@{fonctions.h}!distanceTrees@{distanceTrees}} -\index{distanceTrees@{distanceTrees}!fonctions.h@{fonctions.h}} -\doxysubsubsection{\texorpdfstring{distanceTrees()}{distanceTrees()}} -{\footnotesize\ttfamily double distance\+Trees (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree1, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree2 }\end{DoxyParamCaption})} - - - -Cette fonction renvoie la distance en mètres entre deux arbres repérés par leurs coordonnées latitude et longitude. - - -\begin{DoxyParams}{Parameters} -{\em tree1} & premier arbre à comparer \\ -\hline -{\em tree2} & second arbre à comparer \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{50 \{} -\DoxyCodeLine{51 \textcolor{keywordflow}{return} ((pow(tree1-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} -\/ tree2-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}}, 2) + pow(tree1-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} -\/ tree2-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}}, 2)));} -\DoxyCodeLine{52 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{fonctions_8h_af18ef119d8c281b81165033c74ad49f1}\label{fonctions_8h_af18ef119d8c281b81165033c74ad49f1}} -\index{fonctions.h@{fonctions.h}!projectionTrees@{projectionTrees}} -\index{projectionTrees@{projectionTrees}!fonctions.h@{fonctions.h}} -\doxysubsubsection{\texorpdfstring{projectionTrees()}{projectionTrees()}} -{\footnotesize\ttfamily void projection\+Trees (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -Fais la projection équirectangulaire des arbres de la liste forest de taille size. - - -\begin{DoxyParams}{Parameters} -{\em forest} & \\ -\hline -{\em size} & \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{38 \{} -\DoxyCodeLine{39 \textcolor{keywordtype}{double} phi0 = \mbox{\hyperlink{fonctions_8c_a4e28ba677802ecff6a230577f4d1b3c0}{getMeanLatitude}}(forest, size);} -\DoxyCodeLine{40 \textcolor{keywordtype}{double} lambda0 = \mbox{\hyperlink{fonctions_8c_a62955c07d956aebbaf0db45e96e83100}{getMeanLongitude}}(forest, size);} -\DoxyCodeLine{41 \textcolor{keywordtype}{double} cosphi0 = cos(phi0*M\_PI/180);} -\DoxyCodeLine{42 } -\DoxyCodeLine{43 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{size\_t} i = 0; i Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/latex/fonctions_8h__incl.dot b/docs/latex/fonctions_8h__incl.dot deleted file mode 100644 index 4a21a32..0000000 --- a/docs/latex/fonctions_8h__incl.dot +++ /dev/null @@ -1,19 +0,0 @@ -digraph "include/fonctions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/index.tex b/docs/latex/index.tex deleted file mode 100644 index 7a11f94..0000000 --- a/docs/latex/index.tex +++ /dev/null @@ -1,35 +0,0 @@ -\hypertarget{index_sous_titre}{}\doxysection{Voici le projet 1\+A I\+R 2022-\/2023 de Inès L\+E\+M\+E\+S\+L\+E et Nicolas G\+R\+E\+S\+S\+E\+T-\/\+B\+O\+U\+R\+G\+O\+I\+S.}\label{index_sous_titre} -\hypertarget{index_step1}{}\doxysubsection{$\ast$\+Commande type à entrer en ligne de commande \+:}\label{index_step1} -\begin{DoxyVerb}./bin/arbres -i in_path.csv -o out_path -c save-struct-genre -f 1,1,50,50 -s -g Acer -h 10 - -./bin/arbres -i in_path.bin -o out_path -r save-struct-genre -f 1,1,50,50 -s -g Acer -h 10 -\end{DoxyVerb} -\hypertarget{index_step2}{}\doxysubsection{$\ast$\+Les différentes options implémentées \+:}\label{index_step2} -\begin{DoxyVerb}-Attention les options -i ... et -o ... et (-c ... ou -r ...) sont nécessaires au lancement du programme - --Possibilité de sauvegarder les informations du minimum spanning tree dans un fichier (-t ...) - --Possibilité de choisir le genre de l'arbre (-g ...) - --Possibilité de choisir la hauteur de l'arbre (-h ...) - --Possibilité de choisir un carré limite de géolocalisation (-f ...) - --Possibilité de voir les statistiques du graphe (-s) - --Possibilité de mettre une distance maximale entre 2 arbres et ne récupérer que la plus grande composante connexe (-l ...) -\end{DoxyVerb} -\hypertarget{index_step3}{}\doxysubsection{$\ast$\+Tests disponibles \+:}\label{index_step3} -\begin{DoxyVerb}-Test de la bonne gestion des options (test_option) - --Test de la réalisation du parsage (test_parsage) - --Test de la validité de la valeur des distances entre les arbres (test-distance) - --Test de la reconnaissance d'un fichier binaire ou non (test-binary) - --Test arrêt du programme si fichier non existant (test_error_file) - --Test correspondance entre les identifiants associés aux genres et les genres eux-mêmes (test_corres_genus) -\end{DoxyVerb} - \ No newline at end of file diff --git a/docs/latex/longtable_doxygen.sty b/docs/latex/longtable_doxygen.sty deleted file mode 100644 index a0eb314..0000000 --- a/docs/latex/longtable_doxygen.sty +++ /dev/null @@ -1,448 +0,0 @@ -%% -%% This is file `longtable.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% longtable.dtx (with options: `package') -%% -%% This is a generated file. -%% -%% The source is maintained by the LaTeX Project team and bug -%% reports for it can be opened at http://latex-project.org/bugs.html -%% (but please observe conditions on bug reports sent to that address!) -%% -%% Copyright 1993-2016 -%% The LaTeX3 Project and any individual authors listed elsewhere -%% in this file. -%% -%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'. -%% -------------------------------------------------------------------------- -%% -%% It may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3c -%% of this license or (at your option) any later version. -%% The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3c or later is part of all distributions of LaTeX -%% version 2005/12/01 or later. -%% -%% This file may only be distributed together with a copy of the LaTeX -%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle' -%% without such generated files. -%% -%% The list of all files belonging to the LaTeX `Tools Bundle' is -%% given in the file `manifest.txt'. -%% -%% File: longtable.dtx Copyright (C) 1990-2001 David Carlisle -\NeedsTeXFormat{LaTeX2e}[1995/06/01] -\ProvidesPackage{longtable_doxygen} - [2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen] -\def\LT@err{\PackageError{longtable}} -\def\LT@warn{\PackageWarning{longtable}} -\def\LT@final@warn{% - \AtEndDocument{% - \LT@warn{Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}% - \global\let\LT@final@warn\relax} -\DeclareOption{errorshow}{% - \def\LT@warn{\PackageInfo{longtable}}} -\DeclareOption{pausing}{% - \def\LT@warn#1{% - \LT@err{#1}{This is not really an error}}} -\DeclareOption{set}{} -\DeclareOption{final}{} -\ProcessOptions -\newskip\LTleft \LTleft=\fill -\newskip\LTright \LTright=\fill -\newskip\LTpre \LTpre=\bigskipamount -\newskip\LTpost \LTpost=\bigskipamount -\newcount\LTchunksize \LTchunksize=20 -\let\c@LTchunksize\LTchunksize -\newdimen\LTcapwidth \LTcapwidth=4in -\newbox\LT@head -\newbox\LT@firsthead -\newbox\LT@foot -\newbox\LT@lastfoot -\newcount\LT@cols -\newcount\LT@rows -\newcounter{LT@tables} -\newcounter{LT@chunks}[LT@tables] -\ifx\c@table\undefined - \newcounter{table} - \def\fnum@table{\tablename~\thetable} -\fi -\ifx\tablename\undefined - \def\tablename{Table} -\fi -\newtoks\LT@p@ftn -\mathchardef\LT@end@pen=30000 -\def\longtable{% - \par - \ifx\multicols\@undefined - \else - \ifnum\col@number>\@ne - \@twocolumntrue - \fi - \fi - \if@twocolumn - \LT@err{longtable not in 1-column mode}\@ehc - \fi - \begingroup - \@ifnextchar[\LT@array{\LT@array[x]}} -\def\LT@array[#1]#2{% - \refstepcounter{table}\stepcounter{LT@tables}% - \if l#1% - \LTleft\z@ \LTright\fill - \else\if r#1% - \LTleft\fill \LTright\z@ - \else\if c#1% - \LTleft\fill \LTright\fill - \fi\fi\fi - \let\LT@mcol\multicolumn - \let\LT@@tabarray\@tabarray - \let\LT@@hl\hline - \def\@tabarray{% - \let\hline\LT@@hl - \LT@@tabarray}% - \let\\\LT@tabularcr\let\tabularnewline\\% - \def\newpage{\noalign{\break}}% - \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}% - \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}% - \let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption - \@tempdima\ht\strutbox - \let\@endpbox\LT@endpbox - \ifx\extrarowheight\@undefined - \let\@acol\@tabacol - \let\@classz\@tabclassz \let\@classiv\@tabclassiv - \def\@startpbox{\vtop\LT@startpbox}% - \let\@@startpbox\@startpbox - \let\@@endpbox\@endpbox - \let\LT@LL@FM@cr\@tabularcr - \else - \advance\@tempdima\extrarowheight - \col@sep\tabcolsep - \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr - \fi - \setbox\@arstrutbox\hbox{\vrule - \@height \arraystretch \@tempdima - \@depth \arraystretch \dp \strutbox - \@width \z@}% - \let\@sharp##\let\protect\relax - \begingroup - \@mkpream{#2}% - \xdef\LT@bchunk{% - \global\advance\c@LT@chunks\@ne - \global\LT@rows\z@\setbox\z@\vbox\bgroup - \LT@setprevdepth - \tabskip\LTleft \noexpand\halign to\hsize\bgroup - \tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}% - \endgroup - \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols - \LT@make@row - \m@th\let\par\@empty - \everycr{}\lineskip\z@\baselineskip\z@ - \LT@bchunk} -\def\LT@no@pgbk#1[#2]{\penalty #1\@getpen{#2}\ifnum`{=0\fi}} -\def\LT@start{% - \let\LT@start\endgraf - \endgraf\penalty\z@\vskip\LTpre - \dimen@\pagetotal - \advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi - \advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi - \advance\dimen@ \ht\LT@foot - \dimen@ii\vfuzz - \vfuzz\maxdimen - \setbox\tw@\copy\z@ - \setbox\tw@\vsplit\tw@ to \ht\@arstrutbox - \setbox\tw@\vbox{\unvbox\tw@}% - \vfuzz\dimen@ii - \advance\dimen@ \ht - \ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi - \advance\dimen@\dp - \ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi - \advance\dimen@ -\pagegoal - \ifdim \dimen@>\z@\vfil\break\fi - \global\@colroom\@colht - \ifvoid\LT@foot\else - \advance\vsize-\ht\LT@foot - \global\advance\@colroom-\ht\LT@foot - \dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@ - \maxdepth\z@ - \fi - \ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi\nobreak - \output{\LT@output}} -\def\endlongtable{% - \crcr - \noalign{% - \let\LT@entry\LT@entry@chop - \xdef\LT@save@row{\LT@save@row}}% - \LT@echunk - \LT@start - \unvbox\z@ - \LT@get@widths - \if@filesw - {\let\LT@entry\LT@entry@write\immediate\write\@auxout{% - \gdef\expandafter\noexpand - \csname LT@\romannumeral\c@LT@tables\endcsname - {\LT@save@row}}}% - \fi - \ifx\LT@save@row\LT@@save@row - \else - \LT@warn{Column \@width s have changed\MessageBreak - in table \thetable}% - \LT@final@warn - \fi - \endgraf\penalty -\LT@end@pen - \endgroup - \global\@mparbottom\z@ - \pagegoal\vsize - \endgraf\penalty\z@\addvspace\LTpost - \ifvoid\footins\else\insert\footins{}\fi} -\def\LT@nofcols#1&{% - \futurelet\@let@token\LT@n@fcols} -\def\LT@n@fcols{% - \advance\LT@cols\@ne - \ifx\@let@token\LT@nofcols - \expandafter\@gobble - \else - \expandafter\LT@nofcols - \fi} -\def\LT@tabularcr{% - \relax\iffalse{\fi\ifnum0=`}\fi - \@ifstar - {\def\crcr{\LT@crcr\noalign{\nobreak}}\let\cr\crcr - \LT@t@bularcr}% - {\LT@t@bularcr}} -\let\LT@crcr\crcr -\let\LT@setprevdepth\relax -\def\LT@t@bularcr{% - \global\advance\LT@rows\@ne - \ifnum\LT@rows=\LTchunksize - \gdef\LT@setprevdepth{% - \prevdepth\z@\global - \global\let\LT@setprevdepth\relax}% - \expandafter\LT@xtabularcr - \else - \ifnum0=`{}\fi - \expandafter\LT@LL@FM@cr - \fi} -\def\LT@xtabularcr{% - \@ifnextchar[\LT@argtabularcr\LT@ntabularcr} -\def\LT@ntabularcr{% - \ifnum0=`{}\fi - \LT@echunk - \LT@start - \unvbox\z@ - \LT@get@widths - \LT@bchunk} -\def\LT@argtabularcr[#1]{% - \ifnum0=`{}\fi - \ifdim #1>\z@ - \unskip\@xargarraycr{#1}% - \else - \@yargarraycr{#1}% - \fi - \LT@echunk - \LT@start - \unvbox\z@ - \LT@get@widths - \LT@bchunk} -\def\LT@echunk{% - \crcr\LT@save@row\cr\egroup - \global\setbox\@ne\lastbox - \unskip - \egroup} -\def\LT@entry#1#2{% - \ifhmode\@firstofone{&}\fi\omit - \ifnum#1=\c@LT@chunks - \else - \kern#2\relax - \fi} -\def\LT@entry@chop#1#2{% - \noexpand\LT@entry - {\ifnum#1>\c@LT@chunks - 1}{0pt% - \else - #1}{#2% - \fi}} -\def\LT@entry@write{% - \noexpand\LT@entry^^J% - \@spaces} -\def\LT@kill{% - \LT@echunk - \LT@get@widths - \expandafter\LT@rebox\LT@bchunk} -\def\LT@rebox#1\bgroup{% - #1\bgroup - \unvbox\z@ - \unskip - \setbox\z@\lastbox} -\def\LT@blank@row{% - \xdef\LT@save@row{\expandafter\LT@build@blank - \romannumeral\number\LT@cols 001 }} -\def\LT@build@blank#1{% - \if#1m% - \noexpand\LT@entry{1}{0pt}% - \expandafter\LT@build@blank - \fi} -\def\LT@make@row{% - \global\expandafter\let\expandafter\LT@save@row - \csname LT@\romannumeral\c@LT@tables\endcsname - \ifx\LT@save@row\relax - \LT@blank@row - \else - {\let\LT@entry\or - \if!% - \ifcase\expandafter\expandafter\expandafter\LT@cols - \expandafter\@gobble\LT@save@row - \or - \else - \relax - \fi - !% - \else - \aftergroup\LT@blank@row - \fi}% - \fi} -\let\setlongtables\relax -\def\LT@get@widths{% - \setbox\tw@\hbox{% - \unhbox\@ne - \let\LT@old@row\LT@save@row - \global\let\LT@save@row\@empty - \count@\LT@cols - \loop - \unskip - \setbox\tw@\lastbox - \ifhbox\tw@ - \LT@def@row - \advance\count@\m@ne - \repeat}% - \ifx\LT@@save@row\@undefined - \let\LT@@save@row\LT@save@row - \fi} -\def\LT@def@row{% - \let\LT@entry\or - \edef\@tempa{% - \ifcase\expandafter\count@\LT@old@row - \else - {1}{0pt}% - \fi}% - \let\LT@entry\relax - \xdef\LT@save@row{% - \LT@entry - \expandafter\LT@max@sel\@tempa - \LT@save@row}} -\def\LT@max@sel#1#2{% - {\ifdim#2=\wd\tw@ - #1% - \else - \number\c@LT@chunks - \fi}% - {\the\wd\tw@}} -\def\LT@hline{% - \noalign{\ifnum0=`}\fi - \penalty\@M - \futurelet\@let@token\LT@@hline} -\def\LT@@hline{% - \ifx\@let@token\hline - \global\let\@gtempa\@gobble - \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}% - \else - \global\let\@gtempa\@empty - \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}% - \fi - \ifnum0=`{\fi}% - \multispan\LT@cols - \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr - \noalign{\LT@sep}% - \multispan\LT@cols - \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr - \noalign{\penalty\@M}% - \@gtempa} -\def\LT@caption{% - \noalign\bgroup - \@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n} -\def\LT@c@ption#1[#2]#3{% - \LT@makecaption#1\fnum@table{#3}% - \def\@tempa{#2}% - \ifx\@tempa\@empty\else - {\let\\\space - \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}% - \fi} -\def\LT@capti@n{% - \@ifstar - {\egroup\LT@c@ption\@gobble[]}% - {\egroup\@xdblarg{\LT@c@ption\@firstofone}}} -\def\LT@makecaption#1#2#3{% - \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{% - \sbox\@tempboxa{#1{#2: }#3}% - \ifdim\wd\@tempboxa>\hsize - #1{#2: }#3% - \else - \hbox to\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \endgraf\vskip\baselineskip}% - \hss}}} -\def\LT@output{% - \ifnum\outputpenalty <-\@Mi - \ifnum\outputpenalty > -\LT@end@pen - \LT@err{floats and marginpars not allowed in a longtable}\@ehc - \else - \setbox\z@\vbox{\unvbox\@cclv}% - \ifdim \ht\LT@lastfoot>\ht\LT@foot - \dimen@\pagegoal - \advance\dimen@-\ht\LT@lastfoot - \ifdim\dimen@<\ht\z@ - \setbox\@cclv\vbox{\unvbox\z@\copy\LT@foot\vss}% - \@makecol - \@outputpage - \setbox\z@\vbox{\box\LT@head}% - \fi - \fi - \global\@colroom\@colht - \global\vsize\@colht - \vbox - {\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}% - \fi - \else - \setbox\@cclv\vbox{\unvbox\@cclv\copy\LT@foot\vss}% - \@makecol - \@outputpage - \global\vsize\@colroom - \copy\LT@head\nobreak - \fi} -\def\LT@end@hd@ft#1{% - \LT@echunk - \ifx\LT@start\endgraf - \LT@err - {Longtable head or foot not at start of table}% - {Increase LTchunksize}% - \fi - \setbox#1\box\z@ - \LT@get@widths - \LT@bchunk} -\def\endfirsthead{\LT@end@hd@ft\LT@firsthead} -\def\endhead{\LT@end@hd@ft\LT@head} -\def\endfoot{\LT@end@hd@ft\LT@foot} -\def\endlastfoot{\LT@end@hd@ft\LT@lastfoot} -\def\LT@startpbox#1{% - \bgroup - \let\@footnotetext\LT@p@ftntext - \setlength\hsize{#1}% - \@arrayparboxrestore - \vrule \@height \ht\@arstrutbox \@width \z@} -\def\LT@endpbox{% - \@finalstrut\@arstrutbox - \egroup - \the\LT@p@ftn - \global\LT@p@ftn{}% - \hfil} -\def\LT@p@ftntext#1{% - \edef\@tempa{\the\LT@p@ftn\noexpand\footnotetext[\the\c@footnote]}% - \global\LT@p@ftn\expandafter{\@tempa{#1}}}% - -\@namedef{ver@longtable.sty}{2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen} -\endinput -%% -%% End of file `longtable.sty'. diff --git a/docs/latex/manageSIGINT_8c.tex b/docs/latex/manageSIGINT_8c.tex deleted file mode 100644 index 2848148..0000000 --- a/docs/latex/manageSIGINT_8c.tex +++ /dev/null @@ -1,64 +0,0 @@ -\hypertarget{manageSIGINT_8c}{}\doxysection{src/manage\+S\+I\+G\+I\+NT.c File Reference} -\label{manageSIGINT_8c}\index{src/manageSIGINT.c@{src/manageSIGINT.c}} -{\ttfamily \#include $<$unistd.\+h$>$}\newline -{\ttfamily \#include $<$signal.\+h$>$}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/manage\+S\+I\+G\+I\+N\+T.\+h\char`\"{}}\newline -Include dependency graph for manage\+S\+I\+G\+I\+N\+T.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{manageSIGINT_8c_af3362a540be27c1ebee056ba2d040832}{sig\+Intitialise}} (sigset\+\_\+t $\ast$masked, sigset\+\_\+t $\ast$old) -\item -void \mbox{\hyperlink{manageSIGINT_8c_a141451f2022226a29ab278b96b477e0f}{sig\+Handle}} (struct sigaction $\ast$ignore, sigset\+\_\+t $\ast$pending, sigset\+\_\+t $\ast$old) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{manageSIGINT_8c_a141451f2022226a29ab278b96b477e0f}\label{manageSIGINT_8c_a141451f2022226a29ab278b96b477e0f}} -\index{manageSIGINT.c@{manageSIGINT.c}!sigHandle@{sigHandle}} -\index{sigHandle@{sigHandle}!manageSIGINT.c@{manageSIGINT.c}} -\doxysubsubsection{\texorpdfstring{sigHandle()}{sigHandle()}} -{\footnotesize\ttfamily void sig\+Handle (\begin{DoxyParamCaption}\item[{struct sigaction $\ast$}]{ignore, }\item[{sigset\+\_\+t $\ast$}]{pending, }\item[{sigset\+\_\+t $\ast$}]{old }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{18 \{} -\DoxyCodeLine{19 } -\DoxyCodeLine{20 \textcolor{keyword}{struct }sigaction saved;} -\DoxyCodeLine{21 } -\DoxyCodeLine{22 sigpending(pending); \textcolor{comment}{//ajoute tous les signaux (ici SIGINT) en attente dans le set pending}} -\DoxyCodeLine{23 } -\DoxyCodeLine{24 sigemptyset(\&ignore-\/>sa\_mask); \textcolor{comment}{//initialise le set sa\_mask de la structure ignore}} -\DoxyCodeLine{25 ignore-\/>sa\_flags=0;} -\DoxyCodeLine{26 } -\DoxyCodeLine{27 sigaction(SIGINT,ignore,\&saved); \textcolor{comment}{//donne nouveau comportement après \string^C d'après ignore et stocke l'ancien dans sauvegarde}} -\DoxyCodeLine{28 } -\DoxyCodeLine{29 sigprocmask(SIG\_SETMASK,old,0); \textcolor{comment}{//retour au comportemetn normal}} -\DoxyCodeLine{30 ignore-\/>sa\_handler=SIG\_IGN;} -\DoxyCodeLine{31 } -\DoxyCodeLine{32 sigaction(SIGINT,\&saved,0); \textcolor{comment}{//reprend l'ancien comportement}} -\DoxyCodeLine{33 } -\DoxyCodeLine{34 } -\DoxyCodeLine{35 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{manageSIGINT_8c_af3362a540be27c1ebee056ba2d040832}\label{manageSIGINT_8c_af3362a540be27c1ebee056ba2d040832}} -\index{manageSIGINT.c@{manageSIGINT.c}!sigIntitialise@{sigIntitialise}} -\index{sigIntitialise@{sigIntitialise}!manageSIGINT.c@{manageSIGINT.c}} -\doxysubsubsection{\texorpdfstring{sigIntitialise()}{sigIntitialise()}} -{\footnotesize\ttfamily void sig\+Intitialise (\begin{DoxyParamCaption}\item[{sigset\+\_\+t $\ast$}]{masked, }\item[{sigset\+\_\+t $\ast$}]{old }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{8 \{} -\DoxyCodeLine{9 } -\DoxyCodeLine{10 printf(\textcolor{stringliteral}{"\string^C will be taken into account when finishing to write in the binary file.\(\backslash\)n"});} -\DoxyCodeLine{11 } -\DoxyCodeLine{12 sigemptyset(masked); \textcolor{comment}{//initialise le set masked (vide)}} -\DoxyCodeLine{13 sigaddset(masked,SIGINT); \textcolor{comment}{//ajoute SIGINT au set masked}} -\DoxyCodeLine{14 sigprocmask(SIG\_SETMASK,masked,old); \textcolor{comment}{//met ce qu'il y avait dans masked dans old}} -\DoxyCodeLine{15 \}} - -\end{DoxyCode} diff --git a/docs/latex/manageSIGINT_8c__incl.dot b/docs/latex/manageSIGINT_8c__incl.dot deleted file mode 100644 index 0fb2282..0000000 --- a/docs/latex/manageSIGINT_8c__incl.dot +++ /dev/null @@ -1,17 +0,0 @@ -digraph "src/manageSIGINT.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/manageSIGINT.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="../include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8h.html",tooltip=" "]; - Node5 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node5 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/manageSIGINT_8h.tex b/docs/latex/manageSIGINT_8h.tex deleted file mode 100644 index 0e6ec09..0000000 --- a/docs/latex/manageSIGINT_8h.tex +++ /dev/null @@ -1,64 +0,0 @@ -\hypertarget{manageSIGINT_8h}{}\doxysection{include/manage\+S\+I\+G\+I\+NT.h File Reference} -\label{manageSIGINT_8h}\index{include/manageSIGINT.h@{include/manageSIGINT.h}} -{\ttfamily \#include $<$unistd.\+h$>$}\newline -{\ttfamily \#include $<$signal.\+h$>$}\newline -Include dependency graph for manage\+S\+I\+G\+I\+N\+T.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{manageSIGINT_8h_af3362a540be27c1ebee056ba2d040832}{sig\+Intitialise}} (sigset\+\_\+t $\ast$masked, sigset\+\_\+t $\ast$old) -\item -void \mbox{\hyperlink{manageSIGINT_8h_a141451f2022226a29ab278b96b477e0f}{sig\+Handle}} (struct sigaction $\ast$ignore, sigset\+\_\+t $\ast$pending, sigset\+\_\+t $\ast$old) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{manageSIGINT_8h_a141451f2022226a29ab278b96b477e0f}\label{manageSIGINT_8h_a141451f2022226a29ab278b96b477e0f}} -\index{manageSIGINT.h@{manageSIGINT.h}!sigHandle@{sigHandle}} -\index{sigHandle@{sigHandle}!manageSIGINT.h@{manageSIGINT.h}} -\doxysubsubsection{\texorpdfstring{sigHandle()}{sigHandle()}} -{\footnotesize\ttfamily void sig\+Handle (\begin{DoxyParamCaption}\item[{struct sigaction $\ast$}]{ignore, }\item[{sigset\+\_\+t $\ast$}]{pending, }\item[{sigset\+\_\+t $\ast$}]{old }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{18 \{} -\DoxyCodeLine{19 } -\DoxyCodeLine{20 \textcolor{keyword}{struct }sigaction saved;} -\DoxyCodeLine{21 } -\DoxyCodeLine{22 sigpending(pending); \textcolor{comment}{//ajoute tous les signaux (ici SIGINT) en attente dans le set pending}} -\DoxyCodeLine{23 } -\DoxyCodeLine{24 sigemptyset(\&ignore-\/>sa\_mask); \textcolor{comment}{//initialise le set sa\_mask de la structure ignore}} -\DoxyCodeLine{25 ignore-\/>sa\_flags=0;} -\DoxyCodeLine{26 } -\DoxyCodeLine{27 sigaction(SIGINT,ignore,\&saved); \textcolor{comment}{//donne nouveau comportement après \string^C d'après ignore et stocke l'ancien dans sauvegarde}} -\DoxyCodeLine{28 } -\DoxyCodeLine{29 sigprocmask(SIG\_SETMASK,old,0); \textcolor{comment}{//retour au comportemetn normal}} -\DoxyCodeLine{30 ignore-\/>sa\_handler=SIG\_IGN;} -\DoxyCodeLine{31 } -\DoxyCodeLine{32 sigaction(SIGINT,\&saved,0); \textcolor{comment}{//reprend l'ancien comportement}} -\DoxyCodeLine{33 } -\DoxyCodeLine{34 } -\DoxyCodeLine{35 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{manageSIGINT_8h_af3362a540be27c1ebee056ba2d040832}\label{manageSIGINT_8h_af3362a540be27c1ebee056ba2d040832}} -\index{manageSIGINT.h@{manageSIGINT.h}!sigIntitialise@{sigIntitialise}} -\index{sigIntitialise@{sigIntitialise}!manageSIGINT.h@{manageSIGINT.h}} -\doxysubsubsection{\texorpdfstring{sigIntitialise()}{sigIntitialise()}} -{\footnotesize\ttfamily void sig\+Intitialise (\begin{DoxyParamCaption}\item[{sigset\+\_\+t $\ast$}]{masked, }\item[{sigset\+\_\+t $\ast$}]{old }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{8 \{} -\DoxyCodeLine{9 } -\DoxyCodeLine{10 printf(\textcolor{stringliteral}{"\string^C will be taken into account when finishing to write in the binary file.\(\backslash\)n"});} -\DoxyCodeLine{11 } -\DoxyCodeLine{12 sigemptyset(masked); \textcolor{comment}{//initialise le set masked (vide)}} -\DoxyCodeLine{13 sigaddset(masked,SIGINT); \textcolor{comment}{//ajoute SIGINT au set masked}} -\DoxyCodeLine{14 sigprocmask(SIG\_SETMASK,masked,old); \textcolor{comment}{//met ce qu'il y avait dans masked dans old}} -\DoxyCodeLine{15 \}} - -\end{DoxyCode} diff --git a/docs/latex/manageSIGINT_8h__dep__incl.dot b/docs/latex/manageSIGINT_8h__dep__incl.dot deleted file mode 100644 index 14a8a7c..0000000 --- a/docs/latex/manageSIGINT_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/manageSIGINT.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/manageSIGINT.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; -} diff --git a/docs/latex/manageSIGINT_8h__incl.dot b/docs/latex/manageSIGINT_8h__incl.dot deleted file mode 100644 index 35f17a1..0000000 --- a/docs/latex/manageSIGINT_8h__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/manageSIGINT.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/options_8c.tex b/docs/latex/options_8c.tex deleted file mode 100644 index 4f46481..0000000 --- a/docs/latex/options_8c.tex +++ /dev/null @@ -1,158 +0,0 @@ -\hypertarget{options_8c}{}\doxysection{src/options.c File Reference} -\label{options_8c}\index{src/options.c@{src/options.c}} -{\ttfamily \#include $<$ctype.\+h$>$}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -{\ttfamily \#include $<$unistd.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -Include dependency graph for options.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}} (void) -\item -void \mbox{\hyperlink{options_8c_a6dc7b40134f3b10f300db7e031fcb942}{init\+Options}} (\mbox{\hyperlink{structopt}{opt}} $\ast$\mbox{\hyperlink{options_8h_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}) -\item -void \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}} (int argc, char $\ast$$\ast$argv, \mbox{\hyperlink{structopt}{opt}} $\ast$options) -\begin{DoxyCompactList}\small\item\em Cette fonction gère les options mises en argument. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{options_8c_a0bed8474bd33a912769360766f6b10d4}\label{options_8c_a0bed8474bd33a912769360766f6b10d4}} -\index{options.c@{options.c}!help@{help}} -\index{help@{help}!options.c@{options.c}} -\doxysubsubsection{\texorpdfstring{help()}{help()}} -{\footnotesize\ttfamily void help (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{7 \{} -\DoxyCodeLine{8 printf(\textcolor{stringliteral}{"\(\backslash\)n**********************************************************************************************************\(\backslash\)n"});} -\DoxyCodeLine{9 printf(\textcolor{stringliteral}{"i option (followed by a path) : path of the file you want to parse [csv or binary]\(\backslash\)n"});} -\DoxyCodeLine{10 printf(\textcolor{stringliteral}{"c option (followed by a path) : path of the file where you want to save your gender correspondance table (if use of csv file)\(\backslash\)n"});} -\DoxyCodeLine{11 printf(\textcolor{stringliteral}{"r option (followed by a path) : path of the file from where you want to load your gender correspondance table (if use of binary file)\(\backslash\)n"});} -\DoxyCodeLine{12 printf(\textcolor{stringliteral}{"o option (followed by a path) : path of the file where you save the binary version of your input [binary]\(\backslash\)n"});} -\DoxyCodeLine{13 printf(\textcolor{stringliteral}{"t option (followed by a path) : path of the file saving the minimum panning tree informations\(\backslash\)n"});} -\DoxyCodeLine{14 printf(\textcolor{stringliteral}{"l option (followed by a positive int) : maximum distance allowed betwween your trees [meters]\(\backslash\)n"});} -\DoxyCodeLine{15 printf(\textcolor{stringliteral}{"s option (no arguments) : to get statistics on the tree\(\backslash\)n"});} -\DoxyCodeLine{16 printf(\textcolor{stringliteral}{"f option (followed by 4 positives int) : x minimum X1, y minimum Y1,x maximum X2, y maximum Y2 [°]\(\backslash\)n"});} -\DoxyCodeLine{17 printf(\textcolor{stringliteral}{"g option (followed by a string) : to get a mimimum spanning tree only considering this genus\(\backslash\)n"});} -\DoxyCodeLine{18 printf(\textcolor{stringliteral}{"h option (followed by an positive int) : to get a mimimum spanning tree only considering this height [meters]\(\backslash\)n"});} -\DoxyCodeLine{19 printf(\textcolor{stringliteral}{"**********************************************************************************************************\(\backslash\)n"});} -\DoxyCodeLine{20 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{options_8c_a6dc7b40134f3b10f300db7e031fcb942}\label{options_8c_a6dc7b40134f3b10f300db7e031fcb942}} -\index{options.c@{options.c}!initOptions@{initOptions}} -\index{initOptions@{initOptions}!options.c@{options.c}} -\doxysubsubsection{\texorpdfstring{initOptions()}{initOptions()}} -{\footnotesize\ttfamily void init\+Options (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}} $\ast$}]{options }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{22 \{} -\DoxyCodeLine{23 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>in\_path = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{24 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>out\_path = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{25 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>span\_tree\_path = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{26 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value = NULL; } -\DoxyCodeLine{27 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>stat = 0;} -\DoxyCodeLine{28 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>location = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{29 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>genus = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{30 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{31 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>conserve = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{32 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>recharge = NULL; \textcolor{comment}{//ok}} -\DoxyCodeLine{33 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>help = 0; \textcolor{comment}{//ok}} -\DoxyCodeLine{34 } -\DoxyCodeLine{35 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}\label{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}} -\index{options.c@{options.c}!options@{options}} -\index{options@{options}!options.c@{options.c}} -\doxysubsubsection{\texorpdfstring{options()}{options()}} -{\footnotesize\ttfamily void options (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv, }\item[{\mbox{\hyperlink{structopt}{opt}} $\ast$}]{options }\end{DoxyParamCaption})} - - - -Cette fonction gère les options mises en argument. - - -\begin{DoxyParams}{Parameters} -{\em argc} & nombre d\textquotesingle{}arguments \\ -\hline -{\em argv} & liste des différentes chaînes de caractères écrites en arguments \\ -\hline -{\em options} & pointeur vers une structure stockant chaque option mise en argument \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{37 \{} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 \mbox{\hyperlink{options_8c_a6dc7b40134f3b10f300db7e031fcb942}{initOptions}}(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}});} -\DoxyCodeLine{40 \textcolor{keywordtype}{int} c;} -\DoxyCodeLine{41 \textcolor{keywordflow}{while} ((c = getopt (argc, argv, \textcolor{stringliteral}{"i:o:t:l:sf:g:h:c:r:a"})) != -\/1)} -\DoxyCodeLine{42 \textcolor{keywordflow}{switch} (c) \{} -\DoxyCodeLine{43 \textcolor{keywordflow}{case} \textcolor{charliteral}{'i'}:} -\DoxyCodeLine{44 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>in\_path = optarg;} -\DoxyCodeLine{45 \textcolor{keywordflow}{break};} -\DoxyCodeLine{46 \textcolor{keywordflow}{case} \textcolor{charliteral}{'o'}:} -\DoxyCodeLine{47 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>out\_path = optarg;} -\DoxyCodeLine{48 \textcolor{keywordflow}{break};} -\DoxyCodeLine{49 \textcolor{keywordflow}{case} \textcolor{charliteral}{'t'}:} -\DoxyCodeLine{50 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>span\_tree\_path = optarg;} -\DoxyCodeLine{51 \textcolor{keywordflow}{break};} -\DoxyCodeLine{52 \textcolor{keywordflow}{case} \textcolor{charliteral}{'f'}:} -\DoxyCodeLine{53 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value = optarg;} -\DoxyCodeLine{54 \textcolor{keywordflow}{if}(atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value) <= 0) \{fprintf(stderr,\textcolor{stringliteral}{"The limit \%d must be a positive value"},atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value)); \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); exit(1);\}} -\DoxyCodeLine{55 \textcolor{keywordflow}{break};} -\DoxyCodeLine{56 \textcolor{keywordflow}{case} \textcolor{charliteral}{'s'}:} -\DoxyCodeLine{57 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>stat= 1;} -\DoxyCodeLine{58 \textcolor{keywordflow}{break};} -\DoxyCodeLine{59 \textcolor{keywordflow}{case} \textcolor{charliteral}{'l'}:} -\DoxyCodeLine{60 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>location = optarg;} -\DoxyCodeLine{61 \textcolor{keywordflow}{break};} -\DoxyCodeLine{62 \textcolor{keywordflow}{case} \textcolor{charliteral}{'g'}:} -\DoxyCodeLine{63 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>genus = optarg;} -\DoxyCodeLine{64 \textcolor{keywordflow}{break};} -\DoxyCodeLine{65 \textcolor{keywordflow}{case} \textcolor{charliteral}{'h'}:} -\DoxyCodeLine{66 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height = optarg;} -\DoxyCodeLine{67 \textcolor{keywordflow}{if}(atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height) <= 0) \{fprintf(stderr,\textcolor{stringliteral}{"Th height \%d must be a positive value"},atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height)); \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); exit(1);\}} -\DoxyCodeLine{68 \textcolor{keywordflow}{break};} -\DoxyCodeLine{69 \textcolor{keywordflow}{case} \textcolor{charliteral}{'c'}:} -\DoxyCodeLine{70 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>conserve = optarg;} -\DoxyCodeLine{71 \textcolor{keywordflow}{break};} -\DoxyCodeLine{72 \textcolor{keywordflow}{case} \textcolor{charliteral}{'r'}:} -\DoxyCodeLine{73 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>recharge = optarg;} -\DoxyCodeLine{74 \textcolor{keywordflow}{break};} -\DoxyCodeLine{75 \textcolor{keywordflow}{case} \textcolor{charliteral}{'a'}:} -\DoxyCodeLine{76 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>help = 1;} -\DoxyCodeLine{77 \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}();} -\DoxyCodeLine{78 \textcolor{keywordflow}{break};} -\DoxyCodeLine{79 } -\DoxyCodeLine{80 \textcolor{keywordflow}{case} \textcolor{charliteral}{'?'}:} -\DoxyCodeLine{81 } -\DoxyCodeLine{82 \textcolor{keywordflow}{if} (optopt == \textcolor{charliteral}{'i'} || optopt == \textcolor{charliteral}{'o'}|| optopt == \textcolor{charliteral}{'t'} || optopt == \textcolor{charliteral}{'l'} || optopt == \textcolor{charliteral}{'f'} || optopt == \textcolor{charliteral}{'g'} || optopt == \textcolor{charliteral}{'h'})\{} -\DoxyCodeLine{83 fprintf (stderr, \textcolor{stringliteral}{"Option -\/\%c requires an argument.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{84 \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); } -\DoxyCodeLine{85 exit(2);} -\DoxyCodeLine{86 } -\DoxyCodeLine{87 \}\textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (isprint (optopt))\{} -\DoxyCodeLine{88 fprintf (stderr, \textcolor{stringliteral}{"Unknown option -\/\%c.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{89 exit(3);} -\DoxyCodeLine{90 } -\DoxyCodeLine{91 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{92 fprintf (stderr,\textcolor{stringliteral}{"Unknown option character `\(\backslash\)\(\backslash\)x\%x'.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{93 exit(3);} -\DoxyCodeLine{94 \}} -\DoxyCodeLine{95 } -\DoxyCodeLine{96 } -\DoxyCodeLine{97 \textcolor{keywordflow}{default}:} -\DoxyCodeLine{98 abort ();} -\DoxyCodeLine{99 \}} -\DoxyCodeLine{100 } -\DoxyCodeLine{101 } -\DoxyCodeLine{102 \}} - -\end{DoxyCode} diff --git a/docs/latex/options_8c__incl.dot b/docs/latex/options_8c__incl.dot deleted file mode 100644 index 20c0e9f..0000000 --- a/docs/latex/options_8c__incl.dot +++ /dev/null @@ -1,21 +0,0 @@ -digraph "src/options.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="ctype.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="../include/struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node7 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/options_8h.tex b/docs/latex/options_8h.tex deleted file mode 100644 index 92cfc93..0000000 --- a/docs/latex/options_8h.tex +++ /dev/null @@ -1,104 +0,0 @@ -\hypertarget{options_8h}{}\doxysection{include/options.h File Reference} -\label{options_8h}\index{include/options.h@{include/options.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -Include dependency graph for options.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{options_8h_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}} (int argc, char $\ast$$\ast$argv, \mbox{\hyperlink{structopt}{opt}} $\ast$options) -\begin{DoxyCompactList}\small\item\em Cette fonction gère les options mises en argument. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{options_8h_a61a7b26ea2d2c2bae572cfe57a0ce3d5}\label{options_8h_a61a7b26ea2d2c2bae572cfe57a0ce3d5}} -\index{options.h@{options.h}!options@{options}} -\index{options@{options}!options.h@{options.h}} -\doxysubsubsection{\texorpdfstring{options()}{options()}} -{\footnotesize\ttfamily void options (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv, }\item[{\mbox{\hyperlink{structopt}{opt}} $\ast$}]{options }\end{DoxyParamCaption})} - - - -Cette fonction gère les options mises en argument. - - -\begin{DoxyParams}{Parameters} -{\em argc} & nombre d\textquotesingle{}arguments \\ -\hline -{\em argv} & liste des différentes chaînes de caractères écrites en arguments \\ -\hline -{\em options} & pointeur vers une structure stockant chaque option mise en argument \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{37 \{} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 \mbox{\hyperlink{options_8c_a6dc7b40134f3b10f300db7e031fcb942}{initOptions}}(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}});} -\DoxyCodeLine{40 \textcolor{keywordtype}{int} c;} -\DoxyCodeLine{41 \textcolor{keywordflow}{while} ((c = getopt (argc, argv, \textcolor{stringliteral}{"i:o:t:l:sf:g:h:c:r:a"})) != -\/1)} -\DoxyCodeLine{42 \textcolor{keywordflow}{switch} (c) \{} -\DoxyCodeLine{43 \textcolor{keywordflow}{case} \textcolor{charliteral}{'i'}:} -\DoxyCodeLine{44 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>in\_path = optarg;} -\DoxyCodeLine{45 \textcolor{keywordflow}{break};} -\DoxyCodeLine{46 \textcolor{keywordflow}{case} \textcolor{charliteral}{'o'}:} -\DoxyCodeLine{47 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>out\_path = optarg;} -\DoxyCodeLine{48 \textcolor{keywordflow}{break};} -\DoxyCodeLine{49 \textcolor{keywordflow}{case} \textcolor{charliteral}{'t'}:} -\DoxyCodeLine{50 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>span\_tree\_path = optarg;} -\DoxyCodeLine{51 \textcolor{keywordflow}{break};} -\DoxyCodeLine{52 \textcolor{keywordflow}{case} \textcolor{charliteral}{'f'}:} -\DoxyCodeLine{53 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value = optarg;} -\DoxyCodeLine{54 \textcolor{keywordflow}{if}(atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value) <= 0) \{fprintf(stderr,\textcolor{stringliteral}{"The limit \%d must be a positive value"},atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>limit\_value)); \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); exit(1);\}} -\DoxyCodeLine{55 \textcolor{keywordflow}{break};} -\DoxyCodeLine{56 \textcolor{keywordflow}{case} \textcolor{charliteral}{'s'}:} -\DoxyCodeLine{57 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>stat= 1;} -\DoxyCodeLine{58 \textcolor{keywordflow}{break};} -\DoxyCodeLine{59 \textcolor{keywordflow}{case} \textcolor{charliteral}{'l'}:} -\DoxyCodeLine{60 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>location = optarg;} -\DoxyCodeLine{61 \textcolor{keywordflow}{break};} -\DoxyCodeLine{62 \textcolor{keywordflow}{case} \textcolor{charliteral}{'g'}:} -\DoxyCodeLine{63 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>genus = optarg;} -\DoxyCodeLine{64 \textcolor{keywordflow}{break};} -\DoxyCodeLine{65 \textcolor{keywordflow}{case} \textcolor{charliteral}{'h'}:} -\DoxyCodeLine{66 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height = optarg;} -\DoxyCodeLine{67 \textcolor{keywordflow}{if}(atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height) <= 0) \{fprintf(stderr,\textcolor{stringliteral}{"Th height \%d must be a positive value"},atoi(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>height)); \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); exit(1);\}} -\DoxyCodeLine{68 \textcolor{keywordflow}{break};} -\DoxyCodeLine{69 \textcolor{keywordflow}{case} \textcolor{charliteral}{'c'}:} -\DoxyCodeLine{70 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>conserve = optarg;} -\DoxyCodeLine{71 \textcolor{keywordflow}{break};} -\DoxyCodeLine{72 \textcolor{keywordflow}{case} \textcolor{charliteral}{'r'}:} -\DoxyCodeLine{73 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>recharge = optarg;} -\DoxyCodeLine{74 \textcolor{keywordflow}{break};} -\DoxyCodeLine{75 \textcolor{keywordflow}{case} \textcolor{charliteral}{'a'}:} -\DoxyCodeLine{76 \mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}-\/>help = 1;} -\DoxyCodeLine{77 \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}();} -\DoxyCodeLine{78 \textcolor{keywordflow}{break};} -\DoxyCodeLine{79 } -\DoxyCodeLine{80 \textcolor{keywordflow}{case} \textcolor{charliteral}{'?'}:} -\DoxyCodeLine{81 } -\DoxyCodeLine{82 \textcolor{keywordflow}{if} (optopt == \textcolor{charliteral}{'i'} || optopt == \textcolor{charliteral}{'o'}|| optopt == \textcolor{charliteral}{'t'} || optopt == \textcolor{charliteral}{'l'} || optopt == \textcolor{charliteral}{'f'} || optopt == \textcolor{charliteral}{'g'} || optopt == \textcolor{charliteral}{'h'})\{} -\DoxyCodeLine{83 fprintf (stderr, \textcolor{stringliteral}{"Option -\/\%c requires an argument.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{84 \mbox{\hyperlink{options_8c_a0bed8474bd33a912769360766f6b10d4}{help}}(); } -\DoxyCodeLine{85 exit(2);} -\DoxyCodeLine{86 } -\DoxyCodeLine{87 \}\textcolor{keywordflow}{else} \textcolor{keywordflow}{if} (isprint (optopt))\{} -\DoxyCodeLine{88 fprintf (stderr, \textcolor{stringliteral}{"Unknown option -\/\%c.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{89 exit(3);} -\DoxyCodeLine{90 } -\DoxyCodeLine{91 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{92 fprintf (stderr,\textcolor{stringliteral}{"Unknown option character `\(\backslash\)\(\backslash\)x\%x'.\(\backslash\)n"}, optopt);} -\DoxyCodeLine{93 exit(3);} -\DoxyCodeLine{94 \}} -\DoxyCodeLine{95 } -\DoxyCodeLine{96 } -\DoxyCodeLine{97 \textcolor{keywordflow}{default}:} -\DoxyCodeLine{98 abort ();} -\DoxyCodeLine{99 \}} -\DoxyCodeLine{100 } -\DoxyCodeLine{101 } -\DoxyCodeLine{102 \}} - -\end{DoxyCode} diff --git a/docs/latex/options_8h__dep__incl.dot b/docs/latex/options_8h__dep__incl.dot deleted file mode 100644 index ea2a346..0000000 --- a/docs/latex/options_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/options.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/latex/options_8h__incl.dot b/docs/latex/options_8h__incl.dot deleted file mode 100644 index 4973416..0000000 --- a/docs/latex/options_8h__incl.dot +++ /dev/null @@ -1,14 +0,0 @@ -digraph "include/options.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/parse_8c.tex b/docs/latex/parse_8c.tex deleted file mode 100644 index 38eb715..0000000 --- a/docs/latex/parse_8c.tex +++ /dev/null @@ -1,640 +0,0 @@ -\hypertarget{parse_8c}{}\doxysection{src/parse.c File Reference} -\label{parse_8c}\index{src/parse.c@{src/parse.c}} -{\ttfamily \#include $<$math.\+h$>$}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -{\ttfamily \#include $<$string.\+h$>$}\newline -{\ttfamily \#include $<$unistd.\+h$>$}\newline -{\ttfamily \#include $<$signal.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/parse.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/manage\+S\+I\+G\+I\+N\+T.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/display.\+h\char`\"{}}\newline -Include dependency graph for parse.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -int \mbox{\hyperlink{parse_8c_aa3bd640fa9b5fbfc5044816386f4c3ef}{genus\+Known}} (char $\ast$genus, char $\ast$id, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Cette fonction vérifie si le genre donné en argument est connu ou non. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_aaf08245af6f91198270cda1527fe2c48}{genus\+Id}} (char $\ast$genus, char $\ast$id, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Cette fonction associe à genre un identifiant stocké dans $\ast$id. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_ad21e256a75b8dce5308d0b0f28fdafca}{get\+Genus}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Récupère le champ Genre d\textquotesingle{}une ligne et stocke le résultat dans le champ genre (un char) de l\textquotesingle{}arbre pointé par tree et l\textquotesingle{}ajoute à tab\+\_\+corres si non connu. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_a5fb5ed49c482a810f59417be3722f925}{get\+Height}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ Hauteur d\textquotesingle{}une ligne et stocke le résultat dans le champ hauteur de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_ab40ea2e8015fc77963bedc0451ab2aca}{getposX}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ PositionX d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+x de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_ad39ea3cbbd1c031f8d819ce901826f65}{getposY}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ PositionY d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+y de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_aff72575cf07dce9f7cc0c26a8bd96c1f}{parse\+File}} (char $\ast$file, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t numberoflines, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab) -\begin{DoxyCompactList}\small\item\em Cette fonction trie des données utiles d\textquotesingle{}un fichier csv. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_a804efe18fb42cbe887070b71bd2c38e7}{binary\+File}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, char $\ast$save) -\begin{DoxyCompactList}\small\item\em Cette fonction met les informations d\textquotesingle{}un arbre dans un fichier binaire. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_af8c350631bff16c2c20835214dbc02e8}{parse\+From\+Binary\+File}} (char $\ast$file, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t numberoflines) -\begin{DoxyCompactList}\small\item\em Cette fonction trie des données utiles d\textquotesingle{}un fichier binaire. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_a44d8d667643a4dbc6772c861947f630d}{Save\+Struct\+Genus}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} tab) -\begin{DoxyCompactList}\small\item\em Cette fonction permet la sauvegarde de l\textquotesingle{}association d\textquotesingle{}un genre (char $\ast$) à un identifiant (char) \end{DoxyCompactList}\item -int \mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{is\+Binary}} (char $\ast$file) -\begin{DoxyCompactList}\small\item\em Cette fonction vérifie si le fichier est un fichier binaire ou non. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_ae17e8d9b38ac4864828eb54b4d916a0f}{write\+Edges}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size, \mbox{\hyperlink{structopt}{opt}} handling\+Options) -\begin{DoxyCompactList}\small\item\em Cette fonction écrit dans un fichier l\textquotesingle{}arbre recouvrant minimal. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8c_abd3676c711ff2728e5acc162628c39bb}{handling\+File}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}, int $\ast$nb\+Trees) -\begin{DoxyCompactList}\small\item\em Cette fonction gère l\textquotesingle{}ouverture des fichiers, le parsage, la sauvegarde de la structure etc. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{parse_8c_a804efe18fb42cbe887070b71bd2c38e7}\label{parse_8c_a804efe18fb42cbe887070b71bd2c38e7}} -\index{parse.c@{parse.c}!binaryFile@{binaryFile}} -\index{binaryFile@{binaryFile}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{binaryFile()}{binaryFile()}} -{\footnotesize\ttfamily void binary\+File (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size, }\item[{char $\ast$}]{save }\end{DoxyParamCaption})} - - - -Cette fonction met les informations d\textquotesingle{}un arbre dans un fichier binaire. - - -\begin{DoxyParams}{Parameters} -{\em structure} & liste de structures de tous les arbres pris en compte \\ -\hline -{\em size} & taille totale du tableau \\ -\hline -{\em save} & fichier dans lequel on sauvegarde les données de la structure \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{170 \{} -\DoxyCodeLine{171 } -\DoxyCodeLine{172 sigset\_t masked;} -\DoxyCodeLine{173 sigset\_t old;} -\DoxyCodeLine{174 sigset\_t pending;} -\DoxyCodeLine{175 \textcolor{keyword}{struct }sigaction ignore;} -\DoxyCodeLine{176 } -\DoxyCodeLine{177 \mbox{\hyperlink{manageSIGINT_8c_af3362a540be27c1ebee056ba2d040832}{sigIntitialise}}(\&masked,\&old);} -\DoxyCodeLine{178 } -\DoxyCodeLine{179 FILE* out = fopen(save, \textcolor{stringliteral}{"wb"});} -\DoxyCodeLine{180 \textcolor{keywordflow}{if} (out == NULL)\{} -\DoxyCodeLine{181 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, save);} -\DoxyCodeLine{182 exit(16);} -\DoxyCodeLine{183 \}} -\DoxyCodeLine{184 } -\DoxyCodeLine{185 \textcolor{keywordtype}{int} nbTrees = size -\/ 1;} -\DoxyCodeLine{186 fwrite(\&nbTrees, \textcolor{keyword}{sizeof}(nbTrees), 1, out);} -\DoxyCodeLine{187 } -\DoxyCodeLine{188 \textcolor{keywordtype}{char} * header = \textcolor{stringliteral}{"NICOLASETINES"};} -\DoxyCodeLine{189 } -\DoxyCodeLine{190 \textcolor{keywordflow}{if}(fwrite(header, 13, 1, out)!=1)\{ exit(51); \}} -\DoxyCodeLine{191 } -\DoxyCodeLine{192 } -\DoxyCodeLine{193 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}+= 1;} -\DoxyCodeLine{28 tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}-\/1].\mbox{\hyperlink{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}{id}} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}} -\/ 1;} -\DoxyCodeLine{29 *\textcolor{keywordtype}{id} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}} -\/ 1;;} -\DoxyCodeLine{30 strcpy(tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}-\/1].\mbox{\hyperlink{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}{genus}},genus);} -\DoxyCodeLine{31 \}} -\DoxyCodeLine{32 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_aa3bd640fa9b5fbfc5044816386f4c3ef}\label{parse_8c_aa3bd640fa9b5fbfc5044816386f4c3ef}} -\index{parse.c@{parse.c}!genusKnown@{genusKnown}} -\index{genusKnown@{genusKnown}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{genusKnown()}{genusKnown()}} -{\footnotesize\ttfamily int genus\+Known (\begin{DoxyParamCaption}\item[{char $\ast$}]{genus, }\item[{char $\ast$}]{id, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab\+\_\+corres }\end{DoxyParamCaption})} - - - -Cette fonction vérifie si le genre donné en argument est connu ou non. - - -\begin{DoxyParams}{Parameters} -{\em genus} & genre de l\textquotesingle{}arbre considéré (string) \\ -\hline -{\em id} & pointeur vers l\textquotesingle{}identifiant id (char), on lui affecte l\textquotesingle{}id correspondant au genre obtenu dans tab\+\_\+corres, on ne fait rien si genre pas dans tab\+\_\+corres \\ -\hline -{\em tab\+\_\+corres} & tableau de paires genre/id correspondant des genres déjà connus \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -renvoie 1 si le genre est connu et affecte l\textquotesingle{}id correspond, renvoie 0 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{14 \{} -\DoxyCodeLine{15 } -\DoxyCodeLine{16 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}};i++)\{} -\DoxyCodeLine{17 \textcolor{keywordflow}{if}(strcmp(genus,tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[i].\mbox{\hyperlink{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}{genus}}) == 0)\{ *\textcolor{keywordtype}{id} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[i].\mbox{\hyperlink{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}{id}}; \textcolor{keywordflow}{return} 1;\}} -\DoxyCodeLine{18 \}} -\DoxyCodeLine{19 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{20 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_ad21e256a75b8dce5308d0b0f28fdafca}\label{parse_8c_ad21e256a75b8dce5308d0b0f28fdafca}} -\index{parse.c@{parse.c}!getGenus@{getGenus}} -\index{getGenus@{getGenus}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{getGenus()}{getGenus()}} -{\footnotesize\ttfamily void get\+Genus (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab\+\_\+corres }\end{DoxyParamCaption})} - - - -Récupère le champ Genre d\textquotesingle{}une ligne et stocke le résultat dans le champ genre (un char) de l\textquotesingle{}arbre pointé par tree et l\textquotesingle{}ajoute à tab\+\_\+corres si non connu. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -{\em tab\+\_\+corres} & tableau des correspondances entre genre et identifiant attribué \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{34 \{} -\DoxyCodeLine{35 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{36 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{37 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 \textcolor{keywordtype}{char} * genustree = malloc(30);} -\DoxyCodeLine{40 \textcolor{keywordflow}{if}(genustree == NULL) \{ exit(15); \}} -\DoxyCodeLine{41 } -\DoxyCodeLine{42 \textcolor{keywordflow}{while} (count\_semi\_colon != 9)\{} -\DoxyCodeLine{43 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{44 cursor++;} -\DoxyCodeLine{45 \}} -\DoxyCodeLine{46 } -\DoxyCodeLine{47 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{';'})\{} -\DoxyCodeLine{48 genustree[count] = line[cursor];} -\DoxyCodeLine{49 count++;} -\DoxyCodeLine{50 cursor++;} -\DoxyCodeLine{51 \}} -\DoxyCodeLine{52 genustree[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{53 } -\DoxyCodeLine{54 \textcolor{keywordtype}{char} id;} -\DoxyCodeLine{55 \mbox{\hyperlink{parse_8c_aaf08245af6f91198270cda1527fe2c48}{genusId}}(genustree,\&\textcolor{keywordtype}{id},tab\_corres);} -\DoxyCodeLine{56 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a656022a4f0afcd69428a5b413333c906}{genus}} = id;} -\DoxyCodeLine{57 } -\DoxyCodeLine{58 free(genustree);} -\DoxyCodeLine{59 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_a5fb5ed49c482a810f59417be3722f925}\label{parse_8c_a5fb5ed49c482a810f59417be3722f925}} -\index{parse.c@{parse.c}!getHeight@{getHeight}} -\index{getHeight@{getHeight}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{getHeight()}{getHeight()}} -{\footnotesize\ttfamily void get\+Height (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ Hauteur d\textquotesingle{}une ligne et stocke le résultat dans le champ hauteur de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{61 \{} -\DoxyCodeLine{62 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{63 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{64 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{65 } -\DoxyCodeLine{66 \textcolor{keywordtype}{char} * height\_tree = malloc(5);} -\DoxyCodeLine{67 \textcolor{keywordflow}{if}(height\_tree == NULL) \{ exit(15); \}} -\DoxyCodeLine{68 } -\DoxyCodeLine{69 \textcolor{keywordflow}{while} (count\_semi\_colon != 13)\{} -\DoxyCodeLine{70 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{71 cursor++;} -\DoxyCodeLine{72 \}} -\DoxyCodeLine{73 } -\DoxyCodeLine{74 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{';'} \&\& count < 4)\{} -\DoxyCodeLine{75 height\_tree[count] = line[cursor];} -\DoxyCodeLine{76 count++;} -\DoxyCodeLine{77 cursor++;} -\DoxyCodeLine{78 \}} -\DoxyCodeLine{79 height\_tree[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{80 } -\DoxyCodeLine{81 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_aa7924d19ff993d28766f18e9c583c1f8}{height}} = (short)atoi(height\_tree);} -\DoxyCodeLine{82 free(height\_tree);} -\DoxyCodeLine{83 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_ab40ea2e8015fc77963bedc0451ab2aca}\label{parse_8c_ab40ea2e8015fc77963bedc0451ab2aca}} -\index{parse.c@{parse.c}!getposX@{getposX}} -\index{getposX@{getposX}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{getposX()}{getposX()}} -{\footnotesize\ttfamily void getposX (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ PositionX d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+x de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{85 \{} -\DoxyCodeLine{86 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{87 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{88 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{89 \textcolor{keywordtype}{char} * posx = malloc(25);} -\DoxyCodeLine{90 \textcolor{keywordflow}{if}(posx == NULL) \{ exit(15); \}} -\DoxyCodeLine{91 } -\DoxyCodeLine{92 \textcolor{keywordflow}{while} (count\_semi\_colon != 16)\{} -\DoxyCodeLine{93 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{94 cursor++;} -\DoxyCodeLine{95 \}} -\DoxyCodeLine{96 } -\DoxyCodeLine{97 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{','})\{} -\DoxyCodeLine{98 posx[count] = line[cursor];} -\DoxyCodeLine{99 count++;} -\DoxyCodeLine{100 cursor++;} -\DoxyCodeLine{101 \}} -\DoxyCodeLine{102 posx[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{103 } -\DoxyCodeLine{104 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} = atof(posx);} -\DoxyCodeLine{105 free(posx);} -\DoxyCodeLine{106 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_ad39ea3cbbd1c031f8d819ce901826f65}\label{parse_8c_ad39ea3cbbd1c031f8d819ce901826f65}} -\index{parse.c@{parse.c}!getposY@{getposY}} -\index{getposY@{getposY}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{getposY()}{getposY()}} -{\footnotesize\ttfamily void getposY (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ PositionY d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+y de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{108 \{} -\DoxyCodeLine{109 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{110 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{111 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{112 } -\DoxyCodeLine{113 \textcolor{keywordtype}{char} * posy = malloc(25);} -\DoxyCodeLine{114 \textcolor{keywordflow}{if}(posy == NULL) \{ exit(15); \}} -\DoxyCodeLine{115 } -\DoxyCodeLine{116 \textcolor{keywordflow}{while} (count\_semi\_colon != 15)\{} -\DoxyCodeLine{117 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{118 cursor++;} -\DoxyCodeLine{119 \}} -\DoxyCodeLine{120 } -\DoxyCodeLine{121 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{','})\{ cursor++; \}} -\DoxyCodeLine{122 cursor++;} -\DoxyCodeLine{123 } -\DoxyCodeLine{124 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{'\(\backslash\)n'} \&\& count<18)\{} -\DoxyCodeLine{125 posy[count] = line[cursor];} -\DoxyCodeLine{126 count++;} -\DoxyCodeLine{127 cursor++;} -\DoxyCodeLine{128 \}} -\DoxyCodeLine{129 posy[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{130 } -\DoxyCodeLine{131 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} = atof(posy);} -\DoxyCodeLine{132 free(posy);} -\DoxyCodeLine{133 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_abd3676c711ff2728e5acc162628c39bb}\label{parse_8c_abd3676c711ff2728e5acc162628c39bb}} -\index{parse.c@{parse.c}!handlingFile@{handlingFile}} -\index{handlingFile@{handlingFile}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{handlingFile()}{handlingFile()}} -{\footnotesize\ttfamily void handling\+File (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree, }\item[{int $\ast$}]{nb\+Trees }\end{DoxyParamCaption})} - - - -Cette fonction gère l\textquotesingle{}ouverture des fichiers, le parsage, la sauvegarde de la structure etc. - - -\begin{DoxyParams}{Parameters} -{\em gestion\+Options} & options entrées en ligne de commande \\ -\hline -{\em tree} & tableau où sont stockées les informations sur les arbres après le parsage \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{294 \{} -\DoxyCodeLine{295 } -\DoxyCodeLine{296 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}} == NULL) \{printf(\textcolor{stringliteral}{"input path needed.\(\backslash\)n"});exit(1);\}} -\DoxyCodeLine{297 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a47181603b53379d816eacaf7ed06854c}{out\_path}} == NULL) \{printf(\textcolor{stringliteral}{"output path needed.\(\backslash\)n"});exit(1);\}} -\DoxyCodeLine{298 } -\DoxyCodeLine{299 } -\DoxyCodeLine{300 \mbox{\hyperlink{structtab__genus}{tab\_genus}} tab = \{.\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}=0\};} -\DoxyCodeLine{301 } -\DoxyCodeLine{302 \textcolor{keywordtype}{int} size=0;} -\DoxyCodeLine{303 \textcolor{keywordtype}{char} line[1000];} -\DoxyCodeLine{304 } -\DoxyCodeLine{305 FILE * in = fopen(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\textcolor{stringliteral}{"r"});} -\DoxyCodeLine{306 \textcolor{keywordflow}{if}(in == NULL) \{} -\DoxyCodeLine{307 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}});} -\DoxyCodeLine{308 exit(16);} -\DoxyCodeLine{309 \}} -\DoxyCodeLine{310 } -\DoxyCodeLine{311 \textcolor{keywordflow}{while}(fgets(line,1000,in) != NULL)\{ size ++; \}} -\DoxyCodeLine{312 } -\DoxyCodeLine{313 } -\DoxyCodeLine{314 \textcolor{keywordflow}{if}(\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}}) == 0)\{} -\DoxyCodeLine{315 } -\DoxyCodeLine{316 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}} == NULL)\{ printf(\textcolor{stringliteral}{"A path to save the gender correspondance table is needed with -\/c (to get more help : -\/a)\(\backslash\)n"}); exit(1);\}} -\DoxyCodeLine{317 \mbox{\hyperlink{parse_8c_aff72575cf07dce9f7cc0c26a8bd96c1f}{parseFile}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\mbox{\hyperlink{structtree}{tree}},size,\&tab);} -\DoxyCodeLine{318 \mbox{\hyperlink{parse_8c_a804efe18fb42cbe887070b71bd2c38e7}{binaryFile}}(\mbox{\hyperlink{structtree}{tree}},size,handlingOptions.\mbox{\hyperlink{structopt_a47181603b53379d816eacaf7ed06854c}{out\_path}});} -\DoxyCodeLine{319 \mbox{\hyperlink{parse_8c_a44d8d667643a4dbc6772c861947f630d}{SaveStructGenus}}(handlingOptions,tab);} -\DoxyCodeLine{320 *nbTrees=size -\/1;} -\DoxyCodeLine{321 } -\DoxyCodeLine{322 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{323 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a2be9a32bb8a2a689af9265b4b0c03728}{recharge}} == NULL)\{ printf(\textcolor{stringliteral}{"A path to load the gender correspondance table is needed with -\/r (to get more help : -\/a)\(\backslash\)n"}); exit(1);\}} -\DoxyCodeLine{324 \mbox{\hyperlink{parse_8c_af8c350631bff16c2c20835214dbc02e8}{parseFromBinaryFile}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\mbox{\hyperlink{structtree}{tree}},\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}}));} -\DoxyCodeLine{325 *nbTrees=\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}});} -\DoxyCodeLine{326 \}} -\DoxyCodeLine{327 } -\DoxyCodeLine{328 } -\DoxyCodeLine{329 \textcolor{keywordflow}{if}(fclose(in) != 0 )\{ exit(17); \}} -\DoxyCodeLine{330 } -\DoxyCodeLine{331 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}\label{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}} -\index{parse.c@{parse.c}!isBinary@{isBinary}} -\index{isBinary@{isBinary}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{isBinary()}{isBinary()}} -{\footnotesize\ttfamily int is\+Binary (\begin{DoxyParamCaption}\item[{char $\ast$}]{file }\end{DoxyParamCaption})} - - - -Cette fonction vérifie si le fichier est un fichier binaire ou non. - - -\begin{DoxyParams}{Parameters} -{\em file} & chemin vers le fichier binaire ou non \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -renvoie 0 si le fichier n\textquotesingle{}est pas binaire, le nombre d\textquotesingle{}arbres sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{250 \{} -\DoxyCodeLine{251 } -\DoxyCodeLine{252 FILE * in = fopen(file,\textcolor{stringliteral}{"r"});} -\DoxyCodeLine{253 \textcolor{keywordflow}{if}(in == NULL)\{ } -\DoxyCodeLine{254 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{255 exit(16);} -\DoxyCodeLine{256 \}} -\DoxyCodeLine{257 } -\DoxyCodeLine{258 \textcolor{keywordtype}{int} size;} -\DoxyCodeLine{259 \textcolor{keywordflow}{if}(fread(\&size,\textcolor{keyword}{sizeof}(size),1,in) != 1) \{ exit(52); \}} -\DoxyCodeLine{260 } -\DoxyCodeLine{261 \textcolor{keywordtype}{char} line[13];} -\DoxyCodeLine{262 \textcolor{keywordflow}{if}(fread(line,13,1,in) != 1) \{ exit(52); \}} -\DoxyCodeLine{263 line[13] = 0;} -\DoxyCodeLine{264 } -\DoxyCodeLine{265 \textcolor{keywordflow}{if}(strcmp(line,\textcolor{stringliteral}{"NICOLASETINES"}) == 0) \{ \textcolor{keywordflow}{return} size;\}} -\DoxyCodeLine{266 } -\DoxyCodeLine{267 \textcolor{keywordflow}{if}(fclose(in) != 0) \{ exit(17); \}} -\DoxyCodeLine{268 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{269 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_aff72575cf07dce9f7cc0c26a8bd96c1f}\label{parse_8c_aff72575cf07dce9f7cc0c26a8bd96c1f}} -\index{parse.c@{parse.c}!parseFile@{parseFile}} -\index{parseFile@{parseFile}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{parseFile()}{parseFile()}} -{\footnotesize\ttfamily void parse\+File (\begin{DoxyParamCaption}\item[{char $\ast$}]{file, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{numberoflines, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab }\end{DoxyParamCaption})} - - - -Cette fonction trie des données utiles d\textquotesingle{}un fichier csv. - - -\begin{DoxyParams}{Parameters} -{\em file} & fichier que l\textquotesingle{}on va trier \\ -\hline -{\em forest} & pointure vers la structure dans lequel on va stocker les données utiles \\ -\hline -{\em numberoflines} & nombre total de lignes du fichier \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{136 \{} -\DoxyCodeLine{137 } -\DoxyCodeLine{138 printf(\textcolor{stringliteral}{"Parsing csv file\(\backslash\)n"});} -\DoxyCodeLine{139 } -\DoxyCodeLine{140 FILE* in = fopen(file, \textcolor{stringliteral}{"r"});} -\DoxyCodeLine{141 \textcolor{keywordflow}{if} (in == NULL)\{} -\DoxyCodeLine{142 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in parseFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{143 exit(16);} -\DoxyCodeLine{144 \}} -\DoxyCodeLine{145 } -\DoxyCodeLine{146 \textcolor{keywordtype}{char} * line = malloc(500*\textcolor{keyword}{sizeof}(\textcolor{keywordtype}{char}));} -\DoxyCodeLine{147 \textcolor{keywordflow}{if}(line == NULL) \{ exit(15); \}} -\DoxyCodeLine{148 } -\DoxyCodeLine{149 \textcolor{keywordtype}{size\_t} line\_number = 0;} -\DoxyCodeLine{150 } -\DoxyCodeLine{151 \textcolor{keywordflow}{if}(fgets(line, 500, in) == NULL) \{ exit(50); \} \textcolor{comment}{//on écrase la première ligne}} -\DoxyCodeLine{152 } -\DoxyCodeLine{153 } -\DoxyCodeLine{154 \textcolor{keywordflow}{while} ( line\_number < numberoflines -\/ 1)\{ \textcolor{comment}{//pour chaque ligne donc chaque arbre}} -\DoxyCodeLine{155 \textcolor{keywordflow}{if}(fgets(line, 500, in) == NULL) \{ exit(50); \}} -\DoxyCodeLine{156 } -\DoxyCodeLine{157 \mbox{\hyperlink{parse_8c_ad21e256a75b8dce5308d0b0f28fdafca}{getGenus}}(line, \&forest[line\_number],tab);} -\DoxyCodeLine{158 \mbox{\hyperlink{parse_8c_a5fb5ed49c482a810f59417be3722f925}{getHeight}}(line, \&forest[line\_number]);} -\DoxyCodeLine{159 \mbox{\hyperlink{parse_8c_ab40ea2e8015fc77963bedc0451ab2aca}{getposX}}(line, \&forest[line\_number]);} -\DoxyCodeLine{160 \mbox{\hyperlink{parse_8c_ad39ea3cbbd1c031f8d819ce901826f65}{getposY}}(line, \&forest[line\_number]);} -\DoxyCodeLine{161 line\_number++;} -\DoxyCodeLine{162 \}} -\DoxyCodeLine{163 } -\DoxyCodeLine{164 free(line);} -\DoxyCodeLine{165 \textcolor{keywordflow}{if}(fclose(in) != 0) \{exit(17);\}} -\DoxyCodeLine{166 printf(\textcolor{stringliteral}{"Data has been succesfully read\(\backslash\)n"});} -\DoxyCodeLine{167 \textcolor{keywordflow}{return};} -\DoxyCodeLine{168 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_af8c350631bff16c2c20835214dbc02e8}\label{parse_8c_af8c350631bff16c2c20835214dbc02e8}} -\index{parse.c@{parse.c}!parseFromBinaryFile@{parseFromBinaryFile}} -\index{parseFromBinaryFile@{parseFromBinaryFile}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{parseFromBinaryFile()}{parseFromBinaryFile()}} -{\footnotesize\ttfamily void parse\+From\+Binary\+File (\begin{DoxyParamCaption}\item[{char $\ast$}]{file, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{numberoflines }\end{DoxyParamCaption})} - - - -Cette fonction trie des données utiles d\textquotesingle{}un fichier binaire. - - -\begin{DoxyParams}{Parameters} -{\em file} & fichier que l\textquotesingle{}on va trier \\ -\hline -{\em forest} & pointure vers la structure dans lequel on va stocker les données utiles \\ -\hline -{\em numberoflines} & nombre total de lignes du fichier \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{204 \{} -\DoxyCodeLine{205 } -\DoxyCodeLine{206 printf(\textcolor{stringliteral}{"Parsing binary file\(\backslash\)n"});} -\DoxyCodeLine{207 } -\DoxyCodeLine{208 FILE* in = fopen(file, \textcolor{stringliteral}{"rb"});} -\DoxyCodeLine{209 \textcolor{keywordflow}{if}(in == NULL) \{} -\DoxyCodeLine{210 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{211 exit(16);} -\DoxyCodeLine{212 \}} -\DoxyCodeLine{213 } -\DoxyCodeLine{214 \textcolor{keywordtype}{char} lineIgnore[\textcolor{keyword}{sizeof}(int)];} -\DoxyCodeLine{215 \textcolor{keywordflow}{if}(fread(lineIgnore, \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int}), 1, in) != 1) \{ exit(52);\}} -\DoxyCodeLine{216 } -\DoxyCodeLine{217 \textcolor{keywordtype}{char} lineIgnore2[13];} -\DoxyCodeLine{218 \textcolor{keywordflow}{if}(fread(lineIgnore2, 13, 1, in) != 1) \{ exit(52);\}} -\DoxyCodeLine{219 } -\DoxyCodeLine{220 \textcolor{keywordtype}{int} i=0;} -\DoxyCodeLine{221 \textcolor{keywordtype}{size\_t} nbBlocks=0;} -\DoxyCodeLine{222 } -\DoxyCodeLine{223 \textcolor{keywordflow}{while}(nbBlocks != numberoflines)\{} -\DoxyCodeLine{224 } -\DoxyCodeLine{225 \textcolor{keywordflow}{if}(fread(\&(forest[i]), \textcolor{keyword}{sizeof}(forest[i]), 1, in) != 1) \{exit(52);\}} -\DoxyCodeLine{226 i++;} -\DoxyCodeLine{227 nbBlocks++;} -\DoxyCodeLine{228 \}} -\DoxyCodeLine{229 } -\DoxyCodeLine{230 printf(\textcolor{stringliteral}{"Data was succesfully read from BinaryFile\(\backslash\)n"});} -\DoxyCodeLine{231 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8c_a44d8d667643a4dbc6772c861947f630d}\label{parse_8c_a44d8d667643a4dbc6772c861947f630d}} -\index{parse.c@{parse.c}!SaveStructGenus@{SaveStructGenus}} -\index{SaveStructGenus@{SaveStructGenus}!parse.c@{parse.c}} -\doxysubsubsection{\texorpdfstring{SaveStructGenus()}{SaveStructGenus()}} -{\footnotesize\ttfamily void Save\+Struct\+Genus (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}}}]{tab }\end{DoxyParamCaption})} - - - -Cette fonction permet la sauvegarde de l\textquotesingle{}association d\textquotesingle{}un genre (char $\ast$) à un identifiant (char) - - -\begin{DoxyParams}{Parameters} -{\em tab} & tableau de correspondance \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{233 \{} -\DoxyCodeLine{234 } -\DoxyCodeLine{235 FILE * saveStruct = fopen(handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}},\textcolor{stringliteral}{"w"});} -\DoxyCodeLine{236 \textcolor{keywordflow}{if}(saveStruct == NULL)\{ } -\DoxyCodeLine{237 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in SaveStructGenus \%s\(\backslash\)n"}, handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}});} -\DoxyCodeLine{238 exit(16);} -\DoxyCodeLine{239 \}} -\DoxyCodeLine{240 } -\DoxyCodeLine{241 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="string.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="unistd.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="signal.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node8 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node9 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node9 -> Node10 [color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node10 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid"]; - Node11 [label="../include/manageSIGINT.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$manageSIGINT_8h.html",tooltip=" "]; - Node11 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node11 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node12 [color="midnightblue",fontsize="10",style="solid"]; - Node12 [label="../include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node12 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node12 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node12 -> Node13 [color="midnightblue",fontsize="10",style="solid"]; - Node13 [label="time.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/parse_8h.tex b/docs/latex/parse_8h.tex deleted file mode 100644 index bcca36f..0000000 --- a/docs/latex/parse_8h.tex +++ /dev/null @@ -1,634 +0,0 @@ -\hypertarget{parse_8h}{}\doxysection{include/parse.h File Reference} -\label{parse_8h}\index{include/parse.h@{include/parse.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for parse.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -int \mbox{\hyperlink{parse_8h_aa3bd640fa9b5fbfc5044816386f4c3ef}{genus\+Known}} (char $\ast$genus, char $\ast$id, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Cette fonction vérifie si le genre donné en argument est connu ou non. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_aaf08245af6f91198270cda1527fe2c48}{genus\+Id}} (char $\ast$genus, char $\ast$id, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Cette fonction associe à genre un identifiant stocké dans $\ast$id. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_ad21e256a75b8dce5308d0b0f28fdafca}{get\+Genus}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab\+\_\+corres) -\begin{DoxyCompactList}\small\item\em Récupère le champ Genre d\textquotesingle{}une ligne et stocke le résultat dans le champ genre (un char) de l\textquotesingle{}arbre pointé par tree et l\textquotesingle{}ajoute à tab\+\_\+corres si non connu. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_a5fb5ed49c482a810f59417be3722f925}{get\+Height}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ Hauteur d\textquotesingle{}une ligne et stocke le résultat dans le champ hauteur de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_ab40ea2e8015fc77963bedc0451ab2aca}{getposX}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ PositionX d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+x de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_ad39ea3cbbd1c031f8d819ce901826f65}{getposY}} (char $\ast$line, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}) -\begin{DoxyCompactList}\small\item\em Récupère le champ PositionY d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+y de l\textquotesingle{}arbre pointé par tree. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_aff72575cf07dce9f7cc0c26a8bd96c1f}{parse\+File}} (char $\ast$file, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t numberoflines, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$tab) -\begin{DoxyCompactList}\small\item\em Cette fonction trie des données utiles d\textquotesingle{}un fichier csv. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_a804efe18fb42cbe887070b71bd2c38e7}{binary\+File}} (\mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size, char $\ast$save) -\begin{DoxyCompactList}\small\item\em Cette fonction met les informations d\textquotesingle{}un arbre dans un fichier binaire. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_af8c350631bff16c2c20835214dbc02e8}{parse\+From\+Binary\+File}} (char $\ast$file, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t numberoflines) -\begin{DoxyCompactList}\small\item\em Cette fonction trie des données utiles d\textquotesingle{}un fichier binaire. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_a44d8d667643a4dbc6772c861947f630d}{Save\+Struct\+Genus}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} tab) -\begin{DoxyCompactList}\small\item\em Cette fonction permet la sauvegarde de l\textquotesingle{}association d\textquotesingle{}un genre (char $\ast$) à un identifiant (char) \end{DoxyCompactList}\item -int \mbox{\hyperlink{parse_8h_add2cd715c4e73ccf6075a10ab07657c2}{is\+Binary}} (char $\ast$file) -\begin{DoxyCompactList}\small\item\em Cette fonction vérifie si le fichier est un fichier binaire ou non. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_abd3676c711ff2728e5acc162628c39bb}{handling\+File}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} $\ast$\mbox{\hyperlink{structtree}{tree}}, int $\ast$nb\+Trees) -\begin{DoxyCompactList}\small\item\em Cette fonction gère l\textquotesingle{}ouverture des fichiers, le parsage, la sauvegarde de la structure etc. \end{DoxyCompactList}\item -void \mbox{\hyperlink{parse_8h_ae17e8d9b38ac4864828eb54b4d916a0f}{write\+Edges}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size, \mbox{\hyperlink{structopt}{opt}} handling\+Options) -\begin{DoxyCompactList}\small\item\em Cette fonction écrit dans un fichier l\textquotesingle{}arbre recouvrant minimal. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{parse_8h_a804efe18fb42cbe887070b71bd2c38e7}\label{parse_8h_a804efe18fb42cbe887070b71bd2c38e7}} -\index{parse.h@{parse.h}!binaryFile@{binaryFile}} -\index{binaryFile@{binaryFile}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{binaryFile()}{binaryFile()}} -{\footnotesize\ttfamily void binary\+File (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size, }\item[{char $\ast$}]{save }\end{DoxyParamCaption})} - - - -Cette fonction met les informations d\textquotesingle{}un arbre dans un fichier binaire. - - -\begin{DoxyParams}{Parameters} -{\em structure} & liste de structures de tous les arbres pris en compte \\ -\hline -{\em size} & taille totale du tableau \\ -\hline -{\em save} & fichier dans lequel on sauvegarde les données de la structure \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{170 \{} -\DoxyCodeLine{171 } -\DoxyCodeLine{172 sigset\_t masked;} -\DoxyCodeLine{173 sigset\_t old;} -\DoxyCodeLine{174 sigset\_t pending;} -\DoxyCodeLine{175 \textcolor{keyword}{struct }sigaction ignore;} -\DoxyCodeLine{176 } -\DoxyCodeLine{177 \mbox{\hyperlink{manageSIGINT_8c_af3362a540be27c1ebee056ba2d040832}{sigIntitialise}}(\&masked,\&old);} -\DoxyCodeLine{178 } -\DoxyCodeLine{179 FILE* out = fopen(save, \textcolor{stringliteral}{"wb"});} -\DoxyCodeLine{180 \textcolor{keywordflow}{if} (out == NULL)\{} -\DoxyCodeLine{181 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, save);} -\DoxyCodeLine{182 exit(16);} -\DoxyCodeLine{183 \}} -\DoxyCodeLine{184 } -\DoxyCodeLine{185 \textcolor{keywordtype}{int} nbTrees = size -\/ 1;} -\DoxyCodeLine{186 fwrite(\&nbTrees, \textcolor{keyword}{sizeof}(nbTrees), 1, out);} -\DoxyCodeLine{187 } -\DoxyCodeLine{188 \textcolor{keywordtype}{char} * header = \textcolor{stringliteral}{"NICOLASETINES"};} -\DoxyCodeLine{189 } -\DoxyCodeLine{190 \textcolor{keywordflow}{if}(fwrite(header, 13, 1, out)!=1)\{ exit(51); \}} -\DoxyCodeLine{191 } -\DoxyCodeLine{192 } -\DoxyCodeLine{193 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}+= 1;} -\DoxyCodeLine{28 tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}-\/1].\mbox{\hyperlink{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}{id}} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}} -\/ 1;} -\DoxyCodeLine{29 *\textcolor{keywordtype}{id} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}} -\/ 1;;} -\DoxyCodeLine{30 strcpy(tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}-\/1].\mbox{\hyperlink{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}{genus}},genus);} -\DoxyCodeLine{31 \}} -\DoxyCodeLine{32 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_aa3bd640fa9b5fbfc5044816386f4c3ef}\label{parse_8h_aa3bd640fa9b5fbfc5044816386f4c3ef}} -\index{parse.h@{parse.h}!genusKnown@{genusKnown}} -\index{genusKnown@{genusKnown}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{genusKnown()}{genusKnown()}} -{\footnotesize\ttfamily int genus\+Known (\begin{DoxyParamCaption}\item[{char $\ast$}]{genus, }\item[{char $\ast$}]{id, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab\+\_\+corres }\end{DoxyParamCaption})} - - - -Cette fonction vérifie si le genre donné en argument est connu ou non. - - -\begin{DoxyParams}{Parameters} -{\em genus} & genre de l\textquotesingle{}arbre considéré (string) \\ -\hline -{\em id} & pointeur vers l\textquotesingle{}identifiant id (char), on lui affecte l\textquotesingle{}id correspondant au genre obtenu dans tab\+\_\+corres, on ne fait rien si genre pas dans tab\+\_\+corres \\ -\hline -{\em tab\+\_\+corres} & tableau de paires genre/id correspondant des genres déjà connus \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -renvoie 1 si le genre est connu et affecte l\textquotesingle{}id correspond, renvoie 0 sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{14 \{} -\DoxyCodeLine{15 } -\DoxyCodeLine{16 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}};i++)\{} -\DoxyCodeLine{17 \textcolor{keywordflow}{if}(strcmp(genus,tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[i].\mbox{\hyperlink{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}{genus}}) == 0)\{ *\textcolor{keywordtype}{id} = tab\_corres-\/>\mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}}[i].\mbox{\hyperlink{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}{id}}; \textcolor{keywordflow}{return} 1;\}} -\DoxyCodeLine{18 \}} -\DoxyCodeLine{19 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{20 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_ad21e256a75b8dce5308d0b0f28fdafca}\label{parse_8h_ad21e256a75b8dce5308d0b0f28fdafca}} -\index{parse.h@{parse.h}!getGenus@{getGenus}} -\index{getGenus@{getGenus}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{getGenus()}{getGenus()}} -{\footnotesize\ttfamily void get\+Genus (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab\+\_\+corres }\end{DoxyParamCaption})} - - - -Récupère le champ Genre d\textquotesingle{}une ligne et stocke le résultat dans le champ genre (un char) de l\textquotesingle{}arbre pointé par tree et l\textquotesingle{}ajoute à tab\+\_\+corres si non connu. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -{\em tab\+\_\+corres} & tableau des correspondances entre genre et identifiant attribué \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{34 \{} -\DoxyCodeLine{35 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{36 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{37 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 \textcolor{keywordtype}{char} * genustree = malloc(30);} -\DoxyCodeLine{40 \textcolor{keywordflow}{if}(genustree == NULL) \{ exit(15); \}} -\DoxyCodeLine{41 } -\DoxyCodeLine{42 \textcolor{keywordflow}{while} (count\_semi\_colon != 9)\{} -\DoxyCodeLine{43 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{44 cursor++;} -\DoxyCodeLine{45 \}} -\DoxyCodeLine{46 } -\DoxyCodeLine{47 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{';'})\{} -\DoxyCodeLine{48 genustree[count] = line[cursor];} -\DoxyCodeLine{49 count++;} -\DoxyCodeLine{50 cursor++;} -\DoxyCodeLine{51 \}} -\DoxyCodeLine{52 genustree[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{53 } -\DoxyCodeLine{54 \textcolor{keywordtype}{char} id;} -\DoxyCodeLine{55 \mbox{\hyperlink{parse_8c_aaf08245af6f91198270cda1527fe2c48}{genusId}}(genustree,\&\textcolor{keywordtype}{id},tab\_corres);} -\DoxyCodeLine{56 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a656022a4f0afcd69428a5b413333c906}{genus}} = id;} -\DoxyCodeLine{57 } -\DoxyCodeLine{58 free(genustree);} -\DoxyCodeLine{59 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_a5fb5ed49c482a810f59417be3722f925}\label{parse_8h_a5fb5ed49c482a810f59417be3722f925}} -\index{parse.h@{parse.h}!getHeight@{getHeight}} -\index{getHeight@{getHeight}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{getHeight()}{getHeight()}} -{\footnotesize\ttfamily void get\+Height (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ Hauteur d\textquotesingle{}une ligne et stocke le résultat dans le champ hauteur de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{61 \{} -\DoxyCodeLine{62 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{63 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{64 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{65 } -\DoxyCodeLine{66 \textcolor{keywordtype}{char} * height\_tree = malloc(5);} -\DoxyCodeLine{67 \textcolor{keywordflow}{if}(height\_tree == NULL) \{ exit(15); \}} -\DoxyCodeLine{68 } -\DoxyCodeLine{69 \textcolor{keywordflow}{while} (count\_semi\_colon != 13)\{} -\DoxyCodeLine{70 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{71 cursor++;} -\DoxyCodeLine{72 \}} -\DoxyCodeLine{73 } -\DoxyCodeLine{74 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{';'} \&\& count < 4)\{} -\DoxyCodeLine{75 height\_tree[count] = line[cursor];} -\DoxyCodeLine{76 count++;} -\DoxyCodeLine{77 cursor++;} -\DoxyCodeLine{78 \}} -\DoxyCodeLine{79 height\_tree[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{80 } -\DoxyCodeLine{81 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_aa7924d19ff993d28766f18e9c583c1f8}{height}} = (short)atoi(height\_tree);} -\DoxyCodeLine{82 free(height\_tree);} -\DoxyCodeLine{83 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_ab40ea2e8015fc77963bedc0451ab2aca}\label{parse_8h_ab40ea2e8015fc77963bedc0451ab2aca}} -\index{parse.h@{parse.h}!getposX@{getposX}} -\index{getposX@{getposX}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{getposX()}{getposX()}} -{\footnotesize\ttfamily void getposX (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ PositionX d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+x de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{85 \{} -\DoxyCodeLine{86 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{87 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{88 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{89 \textcolor{keywordtype}{char} * posx = malloc(25);} -\DoxyCodeLine{90 \textcolor{keywordflow}{if}(posx == NULL) \{ exit(15); \}} -\DoxyCodeLine{91 } -\DoxyCodeLine{92 \textcolor{keywordflow}{while} (count\_semi\_colon != 16)\{} -\DoxyCodeLine{93 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{94 cursor++;} -\DoxyCodeLine{95 \}} -\DoxyCodeLine{96 } -\DoxyCodeLine{97 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{','})\{} -\DoxyCodeLine{98 posx[count] = line[cursor];} -\DoxyCodeLine{99 count++;} -\DoxyCodeLine{100 cursor++;} -\DoxyCodeLine{101 \}} -\DoxyCodeLine{102 posx[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{103 } -\DoxyCodeLine{104 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} = atof(posx);} -\DoxyCodeLine{105 free(posx);} -\DoxyCodeLine{106 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_ad39ea3cbbd1c031f8d819ce901826f65}\label{parse_8h_ad39ea3cbbd1c031f8d819ce901826f65}} -\index{parse.h@{parse.h}!getposY@{getposY}} -\index{getposY@{getposY}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{getposY()}{getposY()}} -{\footnotesize\ttfamily void getposY (\begin{DoxyParamCaption}\item[{char $\ast$}]{line, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree }\end{DoxyParamCaption})} - - - -Récupère le champ PositionY d\textquotesingle{}une ligne et stocke le résultat dans le champ geoloc.\+y de l\textquotesingle{}arbre pointé par tree. - - -\begin{DoxyParams}{Parameters} -{\em line} & ligne du fichier csv \\ -\hline -{\em tree} & pointeur vers une structure qui stocke les informations d\textquotesingle{}un arbre \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{108 \{} -\DoxyCodeLine{109 \textcolor{keywordtype}{int} cursor = 0;} -\DoxyCodeLine{110 \textcolor{keywordtype}{int} count = 0;} -\DoxyCodeLine{111 \textcolor{keywordtype}{int} count\_semi\_colon = 0;} -\DoxyCodeLine{112 } -\DoxyCodeLine{113 \textcolor{keywordtype}{char} * posy = malloc(25);} -\DoxyCodeLine{114 \textcolor{keywordflow}{if}(posy == NULL) \{ exit(15); \}} -\DoxyCodeLine{115 } -\DoxyCodeLine{116 \textcolor{keywordflow}{while} (count\_semi\_colon != 15)\{} -\DoxyCodeLine{117 \textcolor{keywordflow}{if} (line[cursor] == \textcolor{charliteral}{';'}) \{ count\_semi\_colon++; \}} -\DoxyCodeLine{118 cursor++;} -\DoxyCodeLine{119 \}} -\DoxyCodeLine{120 } -\DoxyCodeLine{121 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{','})\{ cursor++; \}} -\DoxyCodeLine{122 cursor++;} -\DoxyCodeLine{123 } -\DoxyCodeLine{124 \textcolor{keywordflow}{while} (line[cursor] != \textcolor{charliteral}{'\(\backslash\)n'} \&\& count<18)\{} -\DoxyCodeLine{125 posy[count] = line[cursor];} -\DoxyCodeLine{126 count++;} -\DoxyCodeLine{127 cursor++;} -\DoxyCodeLine{128 \}} -\DoxyCodeLine{129 posy[count] = \textcolor{charliteral}{'\(\backslash\)0'};} -\DoxyCodeLine{130 } -\DoxyCodeLine{131 \mbox{\hyperlink{structtree}{tree}}-\/>\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} = atof(posy);} -\DoxyCodeLine{132 free(posy);} -\DoxyCodeLine{133 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_abd3676c711ff2728e5acc162628c39bb}\label{parse_8h_abd3676c711ff2728e5acc162628c39bb}} -\index{parse.h@{parse.h}!handlingFile@{handlingFile}} -\index{handlingFile@{handlingFile}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{handlingFile()}{handlingFile()}} -{\footnotesize\ttfamily void handling\+File (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{tree, }\item[{int $\ast$}]{nb\+Trees }\end{DoxyParamCaption})} - - - -Cette fonction gère l\textquotesingle{}ouverture des fichiers, le parsage, la sauvegarde de la structure etc. - - -\begin{DoxyParams}{Parameters} -{\em gestion\+Options} & options entrées en ligne de commande \\ -\hline -{\em tree} & tableau où sont stockées les informations sur les arbres après le parsage \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{294 \{} -\DoxyCodeLine{295 } -\DoxyCodeLine{296 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}} == NULL) \{printf(\textcolor{stringliteral}{"input path needed.\(\backslash\)n"});exit(1);\}} -\DoxyCodeLine{297 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a47181603b53379d816eacaf7ed06854c}{out\_path}} == NULL) \{printf(\textcolor{stringliteral}{"output path needed.\(\backslash\)n"});exit(1);\}} -\DoxyCodeLine{298 } -\DoxyCodeLine{299 } -\DoxyCodeLine{300 \mbox{\hyperlink{structtab__genus}{tab\_genus}} tab = \{.\mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}}=0\};} -\DoxyCodeLine{301 } -\DoxyCodeLine{302 \textcolor{keywordtype}{int} size=0;} -\DoxyCodeLine{303 \textcolor{keywordtype}{char} line[1000];} -\DoxyCodeLine{304 } -\DoxyCodeLine{305 FILE * in = fopen(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\textcolor{stringliteral}{"r"});} -\DoxyCodeLine{306 \textcolor{keywordflow}{if}(in == NULL) \{} -\DoxyCodeLine{307 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}});} -\DoxyCodeLine{308 exit(16);} -\DoxyCodeLine{309 \}} -\DoxyCodeLine{310 } -\DoxyCodeLine{311 \textcolor{keywordflow}{while}(fgets(line,1000,in) != NULL)\{ size ++; \}} -\DoxyCodeLine{312 } -\DoxyCodeLine{313 } -\DoxyCodeLine{314 \textcolor{keywordflow}{if}(\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}}) == 0)\{} -\DoxyCodeLine{315 } -\DoxyCodeLine{316 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}} == NULL)\{ printf(\textcolor{stringliteral}{"A path to save the gender correspondance table is needed with -\/c (to get more help : -\/a)\(\backslash\)n"}); exit(1);\}} -\DoxyCodeLine{317 \mbox{\hyperlink{parse_8c_aff72575cf07dce9f7cc0c26a8bd96c1f}{parseFile}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\mbox{\hyperlink{structtree}{tree}},size,\&tab);} -\DoxyCodeLine{318 \mbox{\hyperlink{parse_8c_a804efe18fb42cbe887070b71bd2c38e7}{binaryFile}}(\mbox{\hyperlink{structtree}{tree}},size,handlingOptions.\mbox{\hyperlink{structopt_a47181603b53379d816eacaf7ed06854c}{out\_path}});} -\DoxyCodeLine{319 \mbox{\hyperlink{parse_8c_a44d8d667643a4dbc6772c861947f630d}{SaveStructGenus}}(handlingOptions,tab);} -\DoxyCodeLine{320 *nbTrees=size -\/1;} -\DoxyCodeLine{321 } -\DoxyCodeLine{322 \}\textcolor{keywordflow}{else}\{} -\DoxyCodeLine{323 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a2be9a32bb8a2a689af9265b4b0c03728}{recharge}} == NULL)\{ printf(\textcolor{stringliteral}{"A path to load the gender correspondance table is needed with -\/r (to get more help : -\/a)\(\backslash\)n"}); exit(1);\}} -\DoxyCodeLine{324 \mbox{\hyperlink{parse_8c_af8c350631bff16c2c20835214dbc02e8}{parseFromBinaryFile}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}},\mbox{\hyperlink{structtree}{tree}},\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}}));} -\DoxyCodeLine{325 *nbTrees=\mbox{\hyperlink{parse_8c_add2cd715c4e73ccf6075a10ab07657c2}{isBinary}}(handlingOptions.\mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\_path}});} -\DoxyCodeLine{326 \}} -\DoxyCodeLine{327 } -\DoxyCodeLine{328 } -\DoxyCodeLine{329 \textcolor{keywordflow}{if}(fclose(in) != 0 )\{ exit(17); \}} -\DoxyCodeLine{330 } -\DoxyCodeLine{331 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_add2cd715c4e73ccf6075a10ab07657c2}\label{parse_8h_add2cd715c4e73ccf6075a10ab07657c2}} -\index{parse.h@{parse.h}!isBinary@{isBinary}} -\index{isBinary@{isBinary}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{isBinary()}{isBinary()}} -{\footnotesize\ttfamily int is\+Binary (\begin{DoxyParamCaption}\item[{char $\ast$}]{file }\end{DoxyParamCaption})} - - - -Cette fonction vérifie si le fichier est un fichier binaire ou non. - - -\begin{DoxyParams}{Parameters} -{\em file} & chemin vers le fichier binaire ou non \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -renvoie 0 si le fichier n\textquotesingle{}est pas binaire, le nombre d\textquotesingle{}arbres sinon -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{250 \{} -\DoxyCodeLine{251 } -\DoxyCodeLine{252 FILE * in = fopen(file,\textcolor{stringliteral}{"r"});} -\DoxyCodeLine{253 \textcolor{keywordflow}{if}(in == NULL)\{ } -\DoxyCodeLine{254 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{255 exit(16);} -\DoxyCodeLine{256 \}} -\DoxyCodeLine{257 } -\DoxyCodeLine{258 \textcolor{keywordtype}{int} size;} -\DoxyCodeLine{259 \textcolor{keywordflow}{if}(fread(\&size,\textcolor{keyword}{sizeof}(size),1,in) != 1) \{ exit(52); \}} -\DoxyCodeLine{260 } -\DoxyCodeLine{261 \textcolor{keywordtype}{char} line[13];} -\DoxyCodeLine{262 \textcolor{keywordflow}{if}(fread(line,13,1,in) != 1) \{ exit(52); \}} -\DoxyCodeLine{263 line[13] = 0;} -\DoxyCodeLine{264 } -\DoxyCodeLine{265 \textcolor{keywordflow}{if}(strcmp(line,\textcolor{stringliteral}{"NICOLASETINES"}) == 0) \{ \textcolor{keywordflow}{return} size;\}} -\DoxyCodeLine{266 } -\DoxyCodeLine{267 \textcolor{keywordflow}{if}(fclose(in) != 0) \{ exit(17); \}} -\DoxyCodeLine{268 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{269 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_aff72575cf07dce9f7cc0c26a8bd96c1f}\label{parse_8h_aff72575cf07dce9f7cc0c26a8bd96c1f}} -\index{parse.h@{parse.h}!parseFile@{parseFile}} -\index{parseFile@{parseFile}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{parseFile()}{parseFile()}} -{\footnotesize\ttfamily void parse\+File (\begin{DoxyParamCaption}\item[{char $\ast$}]{file, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{numberoflines, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} $\ast$}]{tab }\end{DoxyParamCaption})} - - - -Cette fonction trie des données utiles d\textquotesingle{}un fichier csv. - - -\begin{DoxyParams}{Parameters} -{\em file} & fichier que l\textquotesingle{}on va trier \\ -\hline -{\em forest} & pointure vers la structure dans lequel on va stocker les données utiles \\ -\hline -{\em numberoflines} & nombre total de lignes du fichier \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{136 \{} -\DoxyCodeLine{137 } -\DoxyCodeLine{138 printf(\textcolor{stringliteral}{"Parsing csv file\(\backslash\)n"});} -\DoxyCodeLine{139 } -\DoxyCodeLine{140 FILE* in = fopen(file, \textcolor{stringliteral}{"r"});} -\DoxyCodeLine{141 \textcolor{keywordflow}{if} (in == NULL)\{} -\DoxyCodeLine{142 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in parseFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{143 exit(16);} -\DoxyCodeLine{144 \}} -\DoxyCodeLine{145 } -\DoxyCodeLine{146 \textcolor{keywordtype}{char} * line = malloc(500*\textcolor{keyword}{sizeof}(\textcolor{keywordtype}{char}));} -\DoxyCodeLine{147 \textcolor{keywordflow}{if}(line == NULL) \{ exit(15); \}} -\DoxyCodeLine{148 } -\DoxyCodeLine{149 \textcolor{keywordtype}{size\_t} line\_number = 0;} -\DoxyCodeLine{150 } -\DoxyCodeLine{151 \textcolor{keywordflow}{if}(fgets(line, 500, in) == NULL) \{ exit(50); \} \textcolor{comment}{//on écrase la première ligne}} -\DoxyCodeLine{152 } -\DoxyCodeLine{153 } -\DoxyCodeLine{154 \textcolor{keywordflow}{while} ( line\_number < numberoflines -\/ 1)\{ \textcolor{comment}{//pour chaque ligne donc chaque arbre}} -\DoxyCodeLine{155 \textcolor{keywordflow}{if}(fgets(line, 500, in) == NULL) \{ exit(50); \}} -\DoxyCodeLine{156 } -\DoxyCodeLine{157 \mbox{\hyperlink{parse_8c_ad21e256a75b8dce5308d0b0f28fdafca}{getGenus}}(line, \&forest[line\_number],tab);} -\DoxyCodeLine{158 \mbox{\hyperlink{parse_8c_a5fb5ed49c482a810f59417be3722f925}{getHeight}}(line, \&forest[line\_number]);} -\DoxyCodeLine{159 \mbox{\hyperlink{parse_8c_ab40ea2e8015fc77963bedc0451ab2aca}{getposX}}(line, \&forest[line\_number]);} -\DoxyCodeLine{160 \mbox{\hyperlink{parse_8c_ad39ea3cbbd1c031f8d819ce901826f65}{getposY}}(line, \&forest[line\_number]);} -\DoxyCodeLine{161 line\_number++;} -\DoxyCodeLine{162 \}} -\DoxyCodeLine{163 } -\DoxyCodeLine{164 free(line);} -\DoxyCodeLine{165 \textcolor{keywordflow}{if}(fclose(in) != 0) \{exit(17);\}} -\DoxyCodeLine{166 printf(\textcolor{stringliteral}{"Data has been succesfully read\(\backslash\)n"});} -\DoxyCodeLine{167 \textcolor{keywordflow}{return};} -\DoxyCodeLine{168 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_af8c350631bff16c2c20835214dbc02e8}\label{parse_8h_af8c350631bff16c2c20835214dbc02e8}} -\index{parse.h@{parse.h}!parseFromBinaryFile@{parseFromBinaryFile}} -\index{parseFromBinaryFile@{parseFromBinaryFile}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{parseFromBinaryFile()}{parseFromBinaryFile()}} -{\footnotesize\ttfamily void parse\+From\+Binary\+File (\begin{DoxyParamCaption}\item[{char $\ast$}]{file, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{numberoflines }\end{DoxyParamCaption})} - - - -Cette fonction trie des données utiles d\textquotesingle{}un fichier binaire. - - -\begin{DoxyParams}{Parameters} -{\em file} & fichier que l\textquotesingle{}on va trier \\ -\hline -{\em forest} & pointure vers la structure dans lequel on va stocker les données utiles \\ -\hline -{\em numberoflines} & nombre total de lignes du fichier \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{204 \{} -\DoxyCodeLine{205 } -\DoxyCodeLine{206 printf(\textcolor{stringliteral}{"Parsing binary file\(\backslash\)n"});} -\DoxyCodeLine{207 } -\DoxyCodeLine{208 FILE* in = fopen(file, \textcolor{stringliteral}{"rb"});} -\DoxyCodeLine{209 \textcolor{keywordflow}{if}(in == NULL) \{} -\DoxyCodeLine{210 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in binaryFile \%s\(\backslash\)n"}, file);} -\DoxyCodeLine{211 exit(16);} -\DoxyCodeLine{212 \}} -\DoxyCodeLine{213 } -\DoxyCodeLine{214 \textcolor{keywordtype}{char} lineIgnore[\textcolor{keyword}{sizeof}(int)];} -\DoxyCodeLine{215 \textcolor{keywordflow}{if}(fread(lineIgnore, \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int}), 1, in) != 1) \{ exit(52);\}} -\DoxyCodeLine{216 } -\DoxyCodeLine{217 \textcolor{keywordtype}{char} lineIgnore2[13];} -\DoxyCodeLine{218 \textcolor{keywordflow}{if}(fread(lineIgnore2, 13, 1, in) != 1) \{ exit(52);\}} -\DoxyCodeLine{219 } -\DoxyCodeLine{220 \textcolor{keywordtype}{int} i=0;} -\DoxyCodeLine{221 \textcolor{keywordtype}{size\_t} nbBlocks=0;} -\DoxyCodeLine{222 } -\DoxyCodeLine{223 \textcolor{keywordflow}{while}(nbBlocks != numberoflines)\{} -\DoxyCodeLine{224 } -\DoxyCodeLine{225 \textcolor{keywordflow}{if}(fread(\&(forest[i]), \textcolor{keyword}{sizeof}(forest[i]), 1, in) != 1) \{exit(52);\}} -\DoxyCodeLine{226 i++;} -\DoxyCodeLine{227 nbBlocks++;} -\DoxyCodeLine{228 \}} -\DoxyCodeLine{229 } -\DoxyCodeLine{230 printf(\textcolor{stringliteral}{"Data was succesfully read from BinaryFile\(\backslash\)n"});} -\DoxyCodeLine{231 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{parse_8h_a44d8d667643a4dbc6772c861947f630d}\label{parse_8h_a44d8d667643a4dbc6772c861947f630d}} -\index{parse.h@{parse.h}!SaveStructGenus@{SaveStructGenus}} -\index{SaveStructGenus@{SaveStructGenus}!parse.h@{parse.h}} -\doxysubsubsection{\texorpdfstring{SaveStructGenus()}{SaveStructGenus()}} -{\footnotesize\ttfamily void Save\+Struct\+Genus (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}}}]{tab }\end{DoxyParamCaption})} - - - -Cette fonction permet la sauvegarde de l\textquotesingle{}association d\textquotesingle{}un genre (char $\ast$) à un identifiant (char) - - -\begin{DoxyParams}{Parameters} -{\em tab} & tableau de correspondance \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{233 \{} -\DoxyCodeLine{234 } -\DoxyCodeLine{235 FILE * saveStruct = fopen(handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}},\textcolor{stringliteral}{"w"});} -\DoxyCodeLine{236 \textcolor{keywordflow}{if}(saveStruct == NULL)\{ } -\DoxyCodeLine{237 fprintf(stderr, \textcolor{stringliteral}{"Unable to open the file in SaveStructGenus \%s\(\backslash\)n"}, handlingOptions.\mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}});} -\DoxyCodeLine{238 exit(16);} -\DoxyCodeLine{239 \}} -\DoxyCodeLine{240 } -\DoxyCodeLine{241 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; -} diff --git a/docs/latex/parse_8h__incl.dot b/docs/latex/parse_8h__incl.dot deleted file mode 100644 index 881e7eb..0000000 --- a/docs/latex/parse_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/parse.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/pile_8c.tex b/docs/latex/pile_8c.tex deleted file mode 100644 index 3ec0ef7..0000000 --- a/docs/latex/pile_8c.tex +++ /dev/null @@ -1,104 +0,0 @@ -\hypertarget{pile_8c}{}\doxysection{src/pile.c File Reference} -\label{pile_8c}\index{src/pile.c@{src/pile.c}} -{\ttfamily \#include \char`\"{}../include/pile.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/array-\/list.\+h\char`\"{}}\newline -Include dependency graph for pile.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$ \mbox{\hyperlink{pile_8c_a2584fb19bd9f58c36b79a6887372689a}{pile\+\_\+create}} (void) -\item -void $\ast$ \mbox{\hyperlink{pile_8c_a9ddb46a3c3fceef9aa92f267cefd3825}{pop}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -int \mbox{\hyperlink{pile_8c_aa06a1925e70cab6a8713eeb25430e74d}{push}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile, void $\ast$elm) -\item -int \mbox{\hyperlink{pile_8c_a361f0852eeeb982ab3cf2204a9bbfc80}{is\+\_\+empty}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -void \mbox{\hyperlink{pile_8c_a5f0083da3cda0f8b2d3556aab57f242a}{pile\+\_\+free}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -size\+\_\+t \mbox{\hyperlink{pile_8c_a6bf23b98322c92a2689636e4b08d90bc}{pile\+\_\+size}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{pile_8c_a361f0852eeeb982ab3cf2204a9bbfc80}\label{pile_8c_a361f0852eeeb982ab3cf2204a9bbfc80}} -\index{pile.c@{pile.c}!is\_empty@{is\_empty}} -\index{is\_empty@{is\_empty}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{is\_empty()}{is\_empty()}} -{\footnotesize\ttfamily int is\+\_\+empty (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{19 \{} -\DoxyCodeLine{20 \textcolor{keywordflow}{if} (\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile) == 0) \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{21 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{22 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8c_a2584fb19bd9f58c36b79a6887372689a}\label{pile_8c_a2584fb19bd9f58c36b79a6887372689a}} -\index{pile.c@{pile.c}!pile\_create@{pile\_create}} -\index{pile\_create@{pile\_create}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{pile\_create()}{pile\_create()}} -{\footnotesize\ttfamily \mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}}$\ast$ pile\+\_\+create (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{6 \{} -\DoxyCodeLine{7 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_a29f30488e60e8e4222c5118d754f0dbb}{list\_create}}();} -\DoxyCodeLine{8 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8c_a5f0083da3cda0f8b2d3556aab57f242a}\label{pile_8c_a5f0083da3cda0f8b2d3556aab57f242a}} -\index{pile.c@{pile.c}!pile\_free@{pile\_free}} -\index{pile\_free@{pile\_free}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{pile\_free()}{pile\_free()}} -{\footnotesize\ttfamily void pile\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{24 \{} -\DoxyCodeLine{25 \mbox{\hyperlink{array-list_8c_a09e105a966c9826976187aa227f67194}{list\_free2}}(pile);} -\DoxyCodeLine{26 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8c_a6bf23b98322c92a2689636e4b08d90bc}\label{pile_8c_a6bf23b98322c92a2689636e4b08d90bc}} -\index{pile.c@{pile.c}!pile\_size@{pile\_size}} -\index{pile\_size@{pile\_size}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{pile\_size()}{pile\_size()}} -{\footnotesize\ttfamily size\+\_\+t pile\+\_\+size (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{28 \{} -\DoxyCodeLine{29 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile);} -\DoxyCodeLine{30 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8c_a9ddb46a3c3fceef9aa92f267cefd3825}\label{pile_8c_a9ddb46a3c3fceef9aa92f267cefd3825}} -\index{pile.c@{pile.c}!pop@{pop}} -\index{pop@{pop}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{pop()}{pop()}} -{\footnotesize\ttfamily void$\ast$ pop (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{10 \{} -\DoxyCodeLine{11 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_a086e3f7f2956e50db180c011845cb776}{list\_take}}(pile, \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile) -\/ 1);} -\DoxyCodeLine{12 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8c_aa06a1925e70cab6a8713eeb25430e74d}\label{pile_8c_aa06a1925e70cab6a8713eeb25430e74d}} -\index{pile.c@{pile.c}!push@{push}} -\index{push@{push}!pile.c@{pile.c}} -\doxysubsubsection{\texorpdfstring{push()}{push()}} -{\footnotesize\ttfamily int push (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile, }\item[{void $\ast$}]{elm }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{15 \{} -\DoxyCodeLine{16 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\_append}}(pile, elm);} -\DoxyCodeLine{17 \}} - -\end{DoxyCode} diff --git a/docs/latex/pile_8c__incl.dot b/docs/latex/pile_8c__incl.dot deleted file mode 100644 index 5e829be..0000000 --- a/docs/latex/pile_8c__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "src/pile.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/pile.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="../include/array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/pile_8h.tex b/docs/latex/pile_8h.tex deleted file mode 100644 index f38cb6f..0000000 --- a/docs/latex/pile_8h.tex +++ /dev/null @@ -1,118 +0,0 @@ -\hypertarget{pile_8h}{}\doxysection{include/pile.h File Reference} -\label{pile_8h}\index{include/pile.h@{include/pile.h}} -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for pile.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Typedefs} -\begin{DoxyCompactItemize} -\item -typedef struct \mbox{\hyperlink{structlist__t}{list\+\_\+t}} \mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$ \mbox{\hyperlink{pile_8h_a2584fb19bd9f58c36b79a6887372689a}{pile\+\_\+create}} (void) -\item -void $\ast$ \mbox{\hyperlink{pile_8h_a9ddb46a3c3fceef9aa92f267cefd3825}{pop}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -int \mbox{\hyperlink{pile_8h_aa06a1925e70cab6a8713eeb25430e74d}{push}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile, void $\ast$elm) -\item -int \mbox{\hyperlink{pile_8h_a361f0852eeeb982ab3cf2204a9bbfc80}{is\+\_\+empty}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -void \mbox{\hyperlink{pile_8h_a5f0083da3cda0f8b2d3556aab57f242a}{pile\+\_\+free}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\item -size\+\_\+t \mbox{\hyperlink{pile_8h_a6bf23b98322c92a2689636e4b08d90bc}{pile\+\_\+size}} (\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$pile) -\end{DoxyCompactItemize} - - -\doxysubsection{Typedef Documentation} -\mbox{\Hypertarget{pile_8h_a5776697d3a095d7ec614876c2614510c}\label{pile_8h_a5776697d3a095d7ec614876c2614510c}} -\index{pile.h@{pile.h}!pile\_t@{pile\_t}} -\index{pile\_t@{pile\_t}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{pile\_t}{pile\_t}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structlist__t}{list\+\_\+t}} \mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}}} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{pile_8h_a361f0852eeeb982ab3cf2204a9bbfc80}\label{pile_8h_a361f0852eeeb982ab3cf2204a9bbfc80}} -\index{pile.h@{pile.h}!is\_empty@{is\_empty}} -\index{is\_empty@{is\_empty}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{is\_empty()}{is\_empty()}} -{\footnotesize\ttfamily int is\+\_\+empty (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{19 \{} -\DoxyCodeLine{20 \textcolor{keywordflow}{if} (\mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile) == 0) \textcolor{keywordflow}{return} 1;} -\DoxyCodeLine{21 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{22 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8h_a2584fb19bd9f58c36b79a6887372689a}\label{pile_8h_a2584fb19bd9f58c36b79a6887372689a}} -\index{pile.h@{pile.h}!pile\_create@{pile\_create}} -\index{pile\_create@{pile\_create}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{pile\_create()}{pile\_create()}} -{\footnotesize\ttfamily \mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}}$\ast$ pile\+\_\+create (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{6 \{} -\DoxyCodeLine{7 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_a29f30488e60e8e4222c5118d754f0dbb}{list\_create}}();} -\DoxyCodeLine{8 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8h_a5f0083da3cda0f8b2d3556aab57f242a}\label{pile_8h_a5f0083da3cda0f8b2d3556aab57f242a}} -\index{pile.h@{pile.h}!pile\_free@{pile\_free}} -\index{pile\_free@{pile\_free}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{pile\_free()}{pile\_free()}} -{\footnotesize\ttfamily void pile\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{24 \{} -\DoxyCodeLine{25 \mbox{\hyperlink{array-list_8c_a09e105a966c9826976187aa227f67194}{list\_free2}}(pile);} -\DoxyCodeLine{26 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8h_a6bf23b98322c92a2689636e4b08d90bc}\label{pile_8h_a6bf23b98322c92a2689636e4b08d90bc}} -\index{pile.h@{pile.h}!pile\_size@{pile\_size}} -\index{pile\_size@{pile\_size}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{pile\_size()}{pile\_size()}} -{\footnotesize\ttfamily size\+\_\+t pile\+\_\+size (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{28 \{} -\DoxyCodeLine{29 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile);} -\DoxyCodeLine{30 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8h_a9ddb46a3c3fceef9aa92f267cefd3825}\label{pile_8h_a9ddb46a3c3fceef9aa92f267cefd3825}} -\index{pile.h@{pile.h}!pop@{pop}} -\index{pop@{pop}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{pop()}{pop()}} -{\footnotesize\ttfamily void$\ast$ pop (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{10 \{} -\DoxyCodeLine{11 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_a086e3f7f2956e50db180c011845cb776}{list\_take}}(pile, \mbox{\hyperlink{array-list_8c_adcfa11f7eafb9f7562fba20f0d7f4e2a}{list\_size}}(pile) -\/ 1);} -\DoxyCodeLine{12 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{pile_8h_aa06a1925e70cab6a8713eeb25430e74d}\label{pile_8h_aa06a1925e70cab6a8713eeb25430e74d}} -\index{pile.h@{pile.h}!push@{push}} -\index{push@{push}!pile.h@{pile.h}} -\doxysubsubsection{\texorpdfstring{push()}{push()}} -{\footnotesize\ttfamily int push (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{pile_8h_a5776697d3a095d7ec614876c2614510c}{pile\+\_\+t}} $\ast$}]{pile, }\item[{void $\ast$}]{elm }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{15 \{} -\DoxyCodeLine{16 \textcolor{keywordflow}{return} \mbox{\hyperlink{array-list_8c_abd5d607adddcc300a324588f12b00ed8}{list\_append}}(pile, elm);} -\DoxyCodeLine{17 \}} - -\end{DoxyCode} diff --git a/docs/latex/pile_8h__dep__incl.dot b/docs/latex/pile_8h__dep__incl.dot deleted file mode 100644 index afeea1d..0000000 --- a/docs/latex/pile_8h__dep__incl.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "include/pile.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/pile.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/pile.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/latex/pile_8h__incl.dot b/docs/latex/pile_8h__incl.dot deleted file mode 100644 index 2d8638d..0000000 --- a/docs/latex/pile_8h__incl.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "include/pile.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/pile.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/refman.tex b/docs/latex/refman.tex deleted file mode 100644 index e2c56ec..0000000 --- a/docs/latex/refman.tex +++ /dev/null @@ -1,224 +0,0 @@ -\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\documentclass[twoside]{book} - -%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package -\usepackage{ifthen} -\ifx\requestedLaTeXdate\undefined -\usepackage{array} -\else -\usepackage{array}[=2016-10-06] -\fi -%% -% Packages required by doxygen -\usepackage{fixltx2e} -\usepackage{calc} -\usepackage{doxygen} -\usepackage{graphicx} -\usepackage[utf8]{inputenc} -\usepackage{makeidx} -\usepackage{multicol} -\usepackage{multirow} -\PassOptionsToPackage{warn}{textcomp} -\usepackage{textcomp} -\usepackage[nointegrals]{wasysym} -\usepackage[table]{xcolor} -\usepackage{ifpdf,ifxetex} - -% Font selection -\usepackage[T1]{fontenc} -\usepackage[scaled=.90]{helvet} -\usepackage{courier} -\usepackage{amssymb} -\usepackage{sectsty} -\renewcommand{\familydefault}{\sfdefault} -\allsectionsfont{% - \fontseries{bc}\selectfont% - \color{darkgray}% -} -\renewcommand{\DoxyLabelFont}{% - \fontseries{bc}\selectfont% - \color{darkgray}% -} -\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}} - -% Arguments of doxygenemoji: -% 1) '::' form of the emoji, already "LaTeX"-escaped -% 2) file with the name of the emoji without the .png extension -% in case image exist use this otherwise use the '::' form -\newcommand{\doxygenemoji}[2]{% - \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}% -} -% Page & text layout -\usepackage{geometry} -\geometry{% - a4paper,% - top=2.5cm,% - bottom=2.5cm,% - left=2.5cm,% - right=2.5cm% -} -\tolerance=750 -\hfuzz=15pt -\hbadness=750 -\setlength{\emergencystretch}{15pt} -\setlength{\parindent}{0cm} -\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}} -\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}} -\doxynormalparskip -\makeatletter -\renewcommand{\paragraph}{% - \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{% - \normalfont\normalsize\bfseries\SS@parafont% - }% -} -\renewcommand{\subparagraph}{% - \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{% - \normalfont\normalsize\bfseries\SS@subparafont% - }% -} -\makeatother - -\makeatletter -\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@} -\makeatother - -% Headers & footers -\usepackage{fancyhdr} -\pagestyle{fancyplain} -\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}} -\fancyhead[CE]{\fancyplain{}{}} -\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}} -\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}} -\fancyhead[CO]{\fancyplain{}{}} -\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}} -\fancyfoot[LE]{\fancyplain{}{}} -\fancyfoot[CE]{\fancyplain{}{}} -\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} -\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} -\fancyfoot[CO]{\fancyplain{}{}} -\fancyfoot[RO]{\fancyplain{}{}} -\renewcommand{\footrulewidth}{0.4pt} -\renewcommand{\chaptermark}[1]{% - \markboth{#1}{}% -} -\renewcommand{\sectionmark}[1]{% - \markright{\thesection\ #1}% -} - -% Indices & bibliography -\usepackage{natbib} -\usepackage[titles]{tocloft} -\setcounter{tocdepth}{3} -\setcounter{secnumdepth}{5} -\makeindex - -\usepackage{newunicodechar} - \newunicodechar{⁻}{${}^{-}$}% Superscript minus - \newunicodechar{²}{${}^{2}$}% Superscript two - \newunicodechar{³}{${}^{3}$}% Superscript three - -% Hyperlinks (required, but should be loaded last) -\ifpdf - \usepackage[pdftex,pagebackref=true]{hyperref} -\else - \ifxetex - \usepackage[pagebackref=true]{hyperref} - \else - \usepackage[ps2pdf,pagebackref=true]{hyperref} - \fi -\fi - -\hypersetup{% - colorlinks=true,% - linkcolor=blue,% - citecolor=blue,% - unicode% -} - -% Custom commands -\newcommand{\clearemptydoublepage}{% - \newpage{\pagestyle{empty}\cleardoublepage}% -} - -\usepackage{caption} -\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top} - -\usepackage{etoc} -\etocsettocstyle{\doxytocparskip}{\doxynormalparskip} -\renewcommand{\numberline}[1]{#1~} -%===== C O N T E N T S ===== - -\begin{document} - -% Titlepage & ToC -\hypersetup{pageanchor=false, - bookmarksnumbered=true, - pdfencoding=unicode - } -\pagenumbering{alph} -\begin{titlepage} -\vspace*{7cm} -\begin{center}% -{\Large Project 2022 }\\ -\vspace*{1cm} -{\large Generated by Doxygen 1.8.17}\\ -\end{center} -\end{titlepage} -\clearemptydoublepage -\pagenumbering{roman} -\tableofcontents -\clearemptydoublepage -\pagenumbering{arabic} -\hypersetup{pageanchor=true} - -%--- Begin generated contents --- -\chapter{Main Page} -\label{index}\hypertarget{index}{}\input{index} -\chapter{Data Structure Index} -\input{annotated} -\chapter{File Index} -\input{files} -\chapter{Data Structure Documentation} -\input{structcorres__genus} -\input{structedge} -\input{structedge2} -\input{structlist__t} -\input{structnode} -\input{structopt} -\input{structposition} -\input{structtab__genus} -\input{structtree} -\input{structvertex} -\chapter{File Documentation} -\input{algo_8h} -\input{array-list_8h} -\input{display_8h} -\input{fonctions_8h} -\input{manageSIGINT_8h} -\input{options_8h} -\input{parse_8h} -\input{pile_8h} -\input{restrictiveOptions_8h} -\input{stat_8h} -\input{struct_8h} -\input{algo_8c} -\input{arbres_8c} -\input{array-list_8c} -\input{display_8c} -\input{fonctions_8c} -\input{manageSIGINT_8c} -\input{options_8c} -\input{parse_8c} -\input{pile_8c} -\input{restrictiveOptions_8c} -\input{stat_8c} -%--- End generated contents --- - -% Index -\backmatter -\newpage -\phantomsection -\clearemptydoublepage -\addcontentsline{toc}{chapter}{\indexname} -\printindex - -\end{document} diff --git a/docs/latex/restrictiveOptions_8c.tex b/docs/latex/restrictiveOptions_8c.tex deleted file mode 100644 index cab47a7..0000000 --- a/docs/latex/restrictiveOptions_8c.tex +++ /dev/null @@ -1,224 +0,0 @@ -\hypertarget{restrictiveOptions_8c}{}\doxysection{src/restrictive\+Options.c File Reference} -\label{restrictiveOptions_8c}\index{src/restrictiveOptions.c@{src/restrictiveOptions.c}} -{\ttfamily \#include \char`\"{}../include/parse.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/restrictive\+Options.\+h\char`\"{}}\newline -{\ttfamily \#include $<$math.\+h$>$}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include $<$stdlib.\+h$>$}\newline -{\ttfamily \#include $<$string.\+h$>$}\newline -Include dependency graph for restrictive\+Options.\+c\+: -% FIG 0 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -int \mbox{\hyperlink{restrictiveOptions_8c_aa470cce4ddbf7858d0058c3e7b7296a2}{gender\+In\+Save\+File}} (\mbox{\hyperlink{structopt}{opt}} \mbox{\hyperlink{options_8h_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}, char $\ast$id) -\item -int \mbox{\hyperlink{restrictiveOptions_8c_ac9cde0dced41f1243007a33fadac488f}{test\+Gender}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} \mbox{\hyperlink{structtree}{tree}}) -\item -int \mbox{\hyperlink{restrictiveOptions_8c_aac8a6d6ce7b251e17aa43ef5c970fef7}{test\+Height}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} \mbox{\hyperlink{structtree}{tree}}) -\item -void \mbox{\hyperlink{restrictiveOptions_8c_a743c7bc20ae1c86834dbf0a416e7d4e5}{separation\+Limit}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, double $\ast$xmin, double $\ast$xmax, double $\ast$ymin, double $\ast$ymax) -\item -int \mbox{\hyperlink{restrictiveOptions_8c_a242fad839b917348a5263beb3949864e}{test\+Limit}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} \mbox{\hyperlink{structtree}{tree}}) -\item -void \mbox{\hyperlink{restrictiveOptions_8c_af922efbacb29fb8a175816b5f164b9e3}{handling\+Restricting\+Options}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} $\ast$trees, \mbox{\hyperlink{structtree}{tree}} $\ast$trees\+Selection, int size, int $\ast$size\+Selection) -\begin{DoxyCompactList}\small\item\em Cette fonction met les arbres concernés par les options dans trees\+Selection. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{restrictiveOptions_8c_aa470cce4ddbf7858d0058c3e7b7296a2}\label{restrictiveOptions_8c_aa470cce4ddbf7858d0058c3e7b7296a2}} -\index{restrictiveOptions.c@{restrictiveOptions.c}!genderInSaveFile@{genderInSaveFile}} -\index{genderInSaveFile@{genderInSaveFile}!restrictiveOptions.c@{restrictiveOptions.c}} -\doxysubsubsection{\texorpdfstring{genderInSaveFile()}{genderInSaveFile()}} -{\footnotesize\ttfamily int gender\+In\+Save\+File (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{options, }\item[{char $\ast$}]{id }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{10 \{} -\DoxyCodeLine{11 } -\DoxyCodeLine{12 \textcolor{keywordtype}{char} genus[100];} -\DoxyCodeLine{13 strcpy(genus,\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}.genus);} -\DoxyCodeLine{14 } -\DoxyCodeLine{15 FILE * saveStruct;} -\DoxyCodeLine{16 \textcolor{keywordflow}{if}(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}.conserve != NULL) \{ saveStruct = fopen(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}.conserve,\textcolor{stringliteral}{"r"});\}} -\DoxyCodeLine{17 \textcolor{keywordflow}{if}(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}.recharge != NULL) \{ saveStruct = fopen(\mbox{\hyperlink{options_8c_a61a7b26ea2d2c2bae572cfe57a0ce3d5}{options}}.recharge,\textcolor{stringliteral}{"r"});\}} -\DoxyCodeLine{18 } -\DoxyCodeLine{19 \textcolor{keywordtype}{char} line[100];} -\DoxyCodeLine{20 \textcolor{keywordtype}{char} lineGenus[100];} -\DoxyCodeLine{21 } -\DoxyCodeLine{22 } -\DoxyCodeLine{23 \textcolor{keywordflow}{while}(fgets(line,100,saveStruct) != NULL)\{ } -\DoxyCodeLine{24 } -\DoxyCodeLine{25 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} k=0;k<97;k++)\{ lineGenus[k] = line[k+2]; \textcolor{keywordflow}{if}(line[k+2] == \textcolor{charliteral}{'\(\backslash\)n'}) lineGenus[k]=0; \}} -\DoxyCodeLine{26 } -\DoxyCodeLine{27 \textcolor{keywordflow}{if}(strcmp(lineGenus,genus) == 0)\{ *\textcolor{keywordtype}{id} = line[0]-\/48; \textcolor{keywordflow}{return} 1; \} } -\DoxyCodeLine{28 \}} -\DoxyCodeLine{29 } -\DoxyCodeLine{30 fclose(saveStruct);} -\DoxyCodeLine{31 } -\DoxyCodeLine{32 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{33 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{restrictiveOptions_8c_af922efbacb29fb8a175816b5f164b9e3}\label{restrictiveOptions_8c_af922efbacb29fb8a175816b5f164b9e3}} -\index{restrictiveOptions.c@{restrictiveOptions.c}!handlingRestrictingOptions@{handlingRestrictingOptions}} -\index{handlingRestrictingOptions@{handlingRestrictingOptions}!restrictiveOptions.c@{restrictiveOptions.c}} -\doxysubsubsection{\texorpdfstring{handlingRestrictingOptions()}{handlingRestrictingOptions()}} -{\footnotesize\ttfamily void handling\+Restricting\+Options (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{trees, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{trees\+Selection, }\item[{int}]{size, }\item[{int $\ast$}]{size\+Selection }\end{DoxyParamCaption})} - - - -Cette fonction met les arbres concernés par les options dans trees\+Selection. - - -\begin{DoxyParams}{Parameters} -{\em handling\+Options} & options entrées en ligne de commande \\ -\hline -{\em trees} & tableau où sont stockées les informations sur les arbres \\ -\hline -{\em trees\+Selection} & tableau où sont stockées les informations sur les arbres après le tri selon les options \\ -\hline -{\em size} & taille du tableau trees \\ -\hline -{\em size\+Selection} & taille du tableau trees\+Selection \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{112 \{} -\DoxyCodeLine{113 } -\DoxyCodeLine{114 \textcolor{keywordtype}{int} j=0;} -\DoxyCodeLine{115 \textcolor{keywordtype}{int} g;} -\DoxyCodeLine{116 \textcolor{keywordtype}{int} h;} -\DoxyCodeLine{117 \textcolor{keywordtype}{int} l;} -\DoxyCodeLine{118 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i= xmin \&\& \mbox{\hyperlink{structtree}{tree}}.\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} <= xmax \&\& \mbox{\hyperlink{structtree}{tree}}.\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} >= ymin \&\& \mbox{\hyperlink{structtree}{tree}}.\mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}}.\mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} <= ymax )\{\textcolor{keywordflow}{return} 1;\}} -\DoxyCodeLine{107 } -\DoxyCodeLine{108 \textcolor{keywordflow}{return} 0;} -\DoxyCodeLine{109 } -\DoxyCodeLine{110 \}} - -\end{DoxyCode} diff --git a/docs/latex/restrictiveOptions_8c__incl.dot b/docs/latex/restrictiveOptions_8c__incl.dot deleted file mode 100644 index 7880d9d..0000000 --- a/docs/latex/restrictiveOptions_8c__incl.dot +++ /dev/null @@ -1,29 +0,0 @@ -digraph "src/restrictiveOptions.c" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="../include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="math.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="string.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; -} diff --git a/docs/latex/restrictiveOptions_8h.tex b/docs/latex/restrictiveOptions_8h.tex deleted file mode 100644 index 1ab90b6..0000000 --- a/docs/latex/restrictiveOptions_8h.tex +++ /dev/null @@ -1,64 +0,0 @@ -\hypertarget{restrictiveOptions_8h}{}\doxysection{include/restrictive\+Options.h File Reference} -\label{restrictiveOptions_8h}\index{include/restrictiveOptions.h@{include/restrictiveOptions.h}} -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -Include dependency graph for restrictive\+Options.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{restrictiveOptions_8h_af922efbacb29fb8a175816b5f164b9e3}{handling\+Restricting\+Options}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structtree}{tree}} $\ast$trees, \mbox{\hyperlink{structtree}{tree}} $\ast$trees\+Selection, int size, int $\ast$size\+Selection) -\begin{DoxyCompactList}\small\item\em Cette fonction met les arbres concernés par les options dans trees\+Selection. \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{restrictiveOptions_8h_af922efbacb29fb8a175816b5f164b9e3}\label{restrictiveOptions_8h_af922efbacb29fb8a175816b5f164b9e3}} -\index{restrictiveOptions.h@{restrictiveOptions.h}!handlingRestrictingOptions@{handlingRestrictingOptions}} -\index{handlingRestrictingOptions@{handlingRestrictingOptions}!restrictiveOptions.h@{restrictiveOptions.h}} -\doxysubsubsection{\texorpdfstring{handlingRestrictingOptions()}{handlingRestrictingOptions()}} -{\footnotesize\ttfamily void handling\+Restricting\+Options (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{trees, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{trees\+Selection, }\item[{int}]{size, }\item[{int $\ast$}]{size\+Selection }\end{DoxyParamCaption})} - - - -Cette fonction met les arbres concernés par les options dans trees\+Selection. - - -\begin{DoxyParams}{Parameters} -{\em handling\+Options} & options entrées en ligne de commande \\ -\hline -{\em trees} & tableau où sont stockées les informations sur les arbres \\ -\hline -{\em trees\+Selection} & tableau où sont stockées les informations sur les arbres après le tri selon les options \\ -\hline -{\em size} & taille du tableau trees \\ -\hline -{\em size\+Selection} & taille du tableau trees\+Selection \\ -\hline -\end{DoxyParams} - -\begin{DoxyCode}{0} -\DoxyCodeLine{112 \{} -\DoxyCodeLine{113 } -\DoxyCodeLine{114 \textcolor{keywordtype}{int} j=0;} -\DoxyCodeLine{115 \textcolor{keywordtype}{int} g;} -\DoxyCodeLine{116 \textcolor{keywordtype}{int} h;} -\DoxyCodeLine{117 \textcolor{keywordtype}{int} l;} -\DoxyCodeLine{118 \textcolor{keywordflow}{for}(\textcolor{keywordtype}{int} i=0;i Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; -} diff --git a/docs/latex/restrictiveOptions_8h__incl.dot b/docs/latex/restrictiveOptions_8h__incl.dot deleted file mode 100644 index 3fb526c..0000000 --- a/docs/latex/restrictiveOptions_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/restrictiveOptions.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node2 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/stat_8c.tex b/docs/latex/stat_8c.tex deleted file mode 100644 index 5abd21c..0000000 --- a/docs/latex/stat_8c.tex +++ /dev/null @@ -1,244 +0,0 @@ -\hypertarget{stat_8c}{}\doxysection{src/stat.c File Reference} -\label{stat_8c}\index{src/stat.c@{src/stat.c}} -{\ttfamily \#include \char`\"{}../include/options.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/struct.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/stat.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/algo.\+h\char`\"{}}\newline -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}../include/fonctions.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/pile.\+h\char`\"{}}\newline -{\ttfamily \#include \char`\"{}../include/array-\/list.\+h\char`\"{}}\newline -Include dependency graph for stat.\+c\+: -% FIG 0 -\doxysubsection*{Macros} -\begin{DoxyCompactItemize} -\item -\#define \mbox{\hyperlink{stat_8c_a16e936a5369064315b9b8ec4d7a5ba3a}{I\+N\+F\+I\+NI}}~4000000 -\end{DoxyCompactItemize} -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -double \mbox{\hyperlink{stat_8c_a4e0e5478beb77cde62d2536d5fbfe69d}{weight\+Minimum\+Spanning\+Tree}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em renvoie le poids de l\textquotesingle{}arbre recouvrant minimal passé en paramètre \end{DoxyCompactList}\item -void \mbox{\hyperlink{stat_8c_ad0504264256ba096bb799d387f11682d}{stat}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size, \mbox{\hyperlink{structtree}{tree}} $\ast$forest) -\item -\mbox{\hyperlink{structedge2}{edge2}} $\ast$ \mbox{\hyperlink{stat_8c_af091f8afb1cc48aec126c734b826ccf8}{other\+M\+ST}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size, \mbox{\hyperlink{structtree}{tree}} $\ast$forest) -\item -\mbox{\hyperlink{structnode}{node}} $\ast$ \mbox{\hyperlink{stat_8c_a80e751c1c69905d0782bb96e72c14fd0}{new\+M\+ST}} (\mbox{\hyperlink{structedge2}{edge2}} $\ast$M\+ST, size\+\_\+t size) -\item -double \mbox{\hyperlink{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}{exentricity\+Vertex}} (\mbox{\hyperlink{structnode}{node}} $\ast$M\+ST, size\+\_\+t size, size\+\_\+t current\+\_\+tree, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t $\ast$excentric\+Vertex) -\item -void \mbox{\hyperlink{stat_8c_a78e5c527c5555279fd636505eded53bd}{free\+Node}} (\mbox{\hyperlink{structnode}{node}} $\ast$listofnodes, size\+\_\+t size) -\item -double \mbox{\hyperlink{stat_8c_a3a4088f413e9af42108f6ae69216f437}{diameter\+M\+ST}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\end{DoxyCompactItemize} - - -\doxysubsection{Macro Definition Documentation} -\mbox{\Hypertarget{stat_8c_a16e936a5369064315b9b8ec4d7a5ba3a}\label{stat_8c_a16e936a5369064315b9b8ec4d7a5ba3a}} -\index{stat.c@{stat.c}!INFINI@{INFINI}} -\index{INFINI@{INFINI}!stat.c@{stat.c}} -\doxysubsubsection{\texorpdfstring{INFINI}{INFINI}} -{\footnotesize\ttfamily \#define I\+N\+F\+I\+NI~4000000} - - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{stat_8c_a3a4088f413e9af42108f6ae69216f437}\label{stat_8c_a3a4088f413e9af42108f6ae69216f437}} -\index{stat.c@{stat.c}!diameterMST@{diameterMST}} -\index{diameterMST@{diameterMST}!stat.c@{stat.c}} -\doxysubsubsection{\texorpdfstring{diameterMST()}{diameterMST()}} -{\footnotesize\ttfamily double diameter\+M\+ST (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{M\+ST, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{129 \{ \textcolor{comment}{//size correspond à la taille de forest}} -\DoxyCodeLine{130 \mbox{\hyperlink{structedge2}{edge2}}* othermst = \mbox{\hyperlink{stat_8c_af091f8afb1cc48aec126c734b826ccf8}{otherMST}}(MST, size, forest);} -\DoxyCodeLine{131 \mbox{\hyperlink{structnode}{node}}* newmst = \mbox{\hyperlink{stat_8c_a80e751c1c69905d0782bb96e72c14fd0}{newMST}}(othermst, size);} -\DoxyCodeLine{132 } -\DoxyCodeLine{133 free(othermst);} -\DoxyCodeLine{134 \textcolor{keywordtype}{size\_t} v = 0, w = 0;} -\DoxyCodeLine{135 \mbox{\hyperlink{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}{exentricityVertex}}(newmst, size, 0, forest, \&v);} -\DoxyCodeLine{136 \textcolor{keywordtype}{double} excentricity = \mbox{\hyperlink{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}{exentricityVertex}}(newmst, size, v, forest, \&w);} -\DoxyCodeLine{137 } -\DoxyCodeLine{138 \mbox{\hyperlink{stat_8c_a78e5c527c5555279fd636505eded53bd}{freeNode}}(newmst, size);} -\DoxyCodeLine{139 \textcolor{keywordflow}{return} \mbox{\hyperlink{fonctions_8h_a3304c99f43f534878204486fc7b9673d}{RAYON}}*sqrt(excentricity);} -\DoxyCodeLine{140 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}\label{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}} -\index{stat.c@{stat.c}!exentricityVertex@{exentricityVertex}} -\index{exentricityVertex@{exentricityVertex}!stat.c@{stat.c}} -\doxysubsubsection{\texorpdfstring{exentricityVertex()}{exentricityVertex()}} -{\footnotesize\ttfamily double exentricity\+Vertex (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structnode}{node}} $\ast$}]{M\+ST, }\item[{size\+\_\+t}]{size, }\item[{size\+\_\+t}]{current\+\_\+tree, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t $\ast$}]{excentric\+Vertex }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{83 \{} -\DoxyCodeLine{84 \textcolor{keywordtype}{double} excentricity = 0;} -\DoxyCodeLine{85 \textcolor{keywordtype}{double} distance[size];} -\DoxyCodeLine{86 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i excentricity)\{} -\DoxyCodeLine{107 excentricity = distance[*y];} -\DoxyCodeLine{108 *excentricVertex = *y;} -\DoxyCodeLine{109 \}} -\DoxyCodeLine{110 } -\DoxyCodeLine{111 \}} -\DoxyCodeLine{112 \textcolor{keywordflow}{else}\{} -\DoxyCodeLine{113 free(y);} -\DoxyCodeLine{114 \}} -\DoxyCodeLine{115 \}} -\DoxyCodeLine{116 \}} -\DoxyCodeLine{117 \mbox{\hyperlink{pile_8c_a5f0083da3cda0f8b2d3556aab57f242a}{pile\_free}}(pile);} -\DoxyCodeLine{118 \textcolor{keywordflow}{return} excentricity;} -\DoxyCodeLine{119 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{stat_8c_a78e5c527c5555279fd636505eded53bd}\label{stat_8c_a78e5c527c5555279fd636505eded53bd}} -\index{stat.c@{stat.c}!freeNode@{freeNode}} -\index{freeNode@{freeNode}!stat.c@{stat.c}} -\doxysubsubsection{\texorpdfstring{freeNode()}{freeNode()}} -{\footnotesize\ttfamily void free\+Node (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structnode}{node}} $\ast$}]{listofnodes, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{121 \{} -\DoxyCodeLine{122 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="../include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node2 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node3 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node5 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node6 [color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="../include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node6 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node7 [color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="../include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node7 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node7 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node8 [color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="../include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node8 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node8 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node8 -> Node9 [color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="stdlib.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node8 -> Node10 [color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="tps.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node11 [color="midnightblue",fontsize="10",style="solid"]; - Node11 [label="../include/pile.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pile_8h.html",tooltip=" "]; - Node11 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node5 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/stat_8h.tex b/docs/latex/stat_8h.tex deleted file mode 100644 index b1f41b4..0000000 --- a/docs/latex/stat_8h.tex +++ /dev/null @@ -1,98 +0,0 @@ -\hypertarget{stat_8h}{}\doxysection{include/stat.h File Reference} -\label{stat_8h}\index{include/stat.h@{include/stat.h}} -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}struct.\+h\char`\"{}}\newline -Include dependency graph for stat.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Functions} -\begin{DoxyCompactItemize} -\item -void \mbox{\hyperlink{stat_8h_ad0504264256ba096bb799d387f11682d}{stat}} (\mbox{\hyperlink{structopt}{opt}} handling\+Options, \mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size, \mbox{\hyperlink{structtree}{tree}} $\ast$forest) -\item -double \mbox{\hyperlink{stat_8h_a4e0e5478beb77cde62d2536d5fbfe69d}{weight\+Minimum\+Spanning\+Tree}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, size\+\_\+t size) -\begin{DoxyCompactList}\small\item\em renvoie le poids de l\textquotesingle{}arbre recouvrant minimal passé en paramètre \end{DoxyCompactList}\item -double \mbox{\hyperlink{stat_8h_a3a4088f413e9af42108f6ae69216f437}{diameter\+M\+ST}} (\mbox{\hyperlink{structedge}{edge}} $\ast$M\+ST, \mbox{\hyperlink{structtree}{tree}} $\ast$forest, size\+\_\+t size) -\end{DoxyCompactItemize} - - -\doxysubsection{Function Documentation} -\mbox{\Hypertarget{stat_8h_a3a4088f413e9af42108f6ae69216f437}\label{stat_8h_a3a4088f413e9af42108f6ae69216f437}} -\index{stat.h@{stat.h}!diameterMST@{diameterMST}} -\index{diameterMST@{diameterMST}!stat.h@{stat.h}} -\doxysubsubsection{\texorpdfstring{diameterMST()}{diameterMST()}} -{\footnotesize\ttfamily double diameter\+M\+ST (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{M\+ST, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{129 \{ \textcolor{comment}{//size correspond à la taille de forest}} -\DoxyCodeLine{130 \mbox{\hyperlink{structedge2}{edge2}}* othermst = \mbox{\hyperlink{stat_8c_af091f8afb1cc48aec126c734b826ccf8}{otherMST}}(MST, size, forest);} -\DoxyCodeLine{131 \mbox{\hyperlink{structnode}{node}}* newmst = \mbox{\hyperlink{stat_8c_a80e751c1c69905d0782bb96e72c14fd0}{newMST}}(othermst, size);} -\DoxyCodeLine{132 } -\DoxyCodeLine{133 free(othermst);} -\DoxyCodeLine{134 \textcolor{keywordtype}{size\_t} v = 0, w = 0;} -\DoxyCodeLine{135 \mbox{\hyperlink{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}{exentricityVertex}}(newmst, size, 0, forest, \&v);} -\DoxyCodeLine{136 \textcolor{keywordtype}{double} excentricity = \mbox{\hyperlink{stat_8c_a44114f31b939b70a07a9e7f31f0d5543}{exentricityVertex}}(newmst, size, v, forest, \&w);} -\DoxyCodeLine{137 } -\DoxyCodeLine{138 \mbox{\hyperlink{stat_8c_a78e5c527c5555279fd636505eded53bd}{freeNode}}(newmst, size);} -\DoxyCodeLine{139 \textcolor{keywordflow}{return} \mbox{\hyperlink{fonctions_8h_a3304c99f43f534878204486fc7b9673d}{RAYON}}*sqrt(excentricity);} -\DoxyCodeLine{140 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{stat_8h_ad0504264256ba096bb799d387f11682d}\label{stat_8h_ad0504264256ba096bb799d387f11682d}} -\index{stat.h@{stat.h}!stat@{stat}} -\index{stat@{stat}!stat.h@{stat.h}} -\doxysubsubsection{\texorpdfstring{stat()}{stat()}} -{\footnotesize\ttfamily void stat (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structopt}{opt}}}]{handling\+Options, }\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{M\+ST, }\item[{size\+\_\+t}]{size, }\item[{\mbox{\hyperlink{structtree}{tree}} $\ast$}]{forest }\end{DoxyParamCaption})} - - -\begin{DoxyCode}{0} -\DoxyCodeLine{27 \{} -\DoxyCodeLine{28 } -\DoxyCodeLine{29 \textcolor{keywordflow}{if}(handlingOptions.\mbox{\hyperlink{structopt_a470e589ac658e33386e40fe4449f4889}{stat}} == 1) \{} -\DoxyCodeLine{30 } -\DoxyCodeLine{31 printf(\textcolor{stringliteral}{"number of trees : \%ld\(\backslash\)n"},size);} -\DoxyCodeLine{32 printf(\textcolor{stringliteral}{"degré moyen : \%ld/\%ld soit \%lf\(\backslash\)n"},2*(size-\/1),size, 2*(size-\/1)/(\textcolor{keywordtype}{double})size);} -\DoxyCodeLine{33 } -\DoxyCodeLine{34 \textcolor{keywordtype}{double} weight = \mbox{\hyperlink{stat_8c_a4e0e5478beb77cde62d2536d5fbfe69d}{weightMinimumSpanningTree}}(MST, size -\/ 1);} -\DoxyCodeLine{35 printf(\textcolor{stringliteral}{" weight : \%lf\(\backslash\)n"},weight);} -\DoxyCodeLine{36 } -\DoxyCodeLine{37 printf(\textcolor{stringliteral}{"Le diamètre du graphe vaut \%f\(\backslash\)n"}, \mbox{\hyperlink{stat_8c_a3a4088f413e9af42108f6ae69216f437}{diameterMST}}(MST, forest, size));} -\DoxyCodeLine{38 } -\DoxyCodeLine{39 \}} -\DoxyCodeLine{40 } -\DoxyCodeLine{41 \}} - -\end{DoxyCode} -\mbox{\Hypertarget{stat_8h_a4e0e5478beb77cde62d2536d5fbfe69d}\label{stat_8h_a4e0e5478beb77cde62d2536d5fbfe69d}} -\index{stat.h@{stat.h}!weightMinimumSpanningTree@{weightMinimumSpanningTree}} -\index{weightMinimumSpanningTree@{weightMinimumSpanningTree}!stat.h@{stat.h}} -\doxysubsubsection{\texorpdfstring{weightMinimumSpanningTree()}{weightMinimumSpanningTree()}} -{\footnotesize\ttfamily double weight\+Minimum\+Spanning\+Tree (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structedge}{edge}} $\ast$}]{M\+ST, }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})} - - - -renvoie le poids de l\textquotesingle{}arbre recouvrant minimal passé en paramètre - - -\begin{DoxyParams}{Parameters} -{\em M\+ST} & les aretes constituant l\textquotesingle{}arbre recouvrant minimal \\ -\hline -{\em size} & sa taille \\ -\hline -\end{DoxyParams} -\begin{DoxyReturn}{Returns} -double le poids de l\textquotesingle{}arbre recouvrant minimal -\end{DoxyReturn} - -\begin{DoxyCode}{0} -\DoxyCodeLine{19 \{} -\DoxyCodeLine{20 \textcolor{keywordtype}{double} weight = 0;} -\DoxyCodeLine{21 \textcolor{keywordflow}{for} (\textcolor{keywordtype}{size\_t} i = 0; i Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; -} diff --git a/docs/latex/stat_8h__incl.dot b/docs/latex/stat_8h__incl.dot deleted file mode 100644 index 9809d2f..0000000 --- a/docs/latex/stat_8h__incl.dot +++ /dev/null @@ -1,15 +0,0 @@ -digraph "include/stat.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="struct.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node3 -> Node4 [color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node4 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/struct_8h.tex b/docs/latex/struct_8h.tex deleted file mode 100644 index 3d223d0..0000000 --- a/docs/latex/struct_8h.tex +++ /dev/null @@ -1,143 +0,0 @@ -\hypertarget{struct_8h}{}\doxysection{include/struct.h File Reference} -\label{struct_8h}\index{include/struct.h@{include/struct.h}} -{\ttfamily \#include $<$stdio.\+h$>$}\newline -{\ttfamily \#include \char`\"{}array-\/list.\+h\char`\"{}}\newline -Include dependency graph for struct.\+h\+: -% FIG 0 -This graph shows which files directly or indirectly include this file\+: -% FIG 1 -\doxysubsection*{Data Structures} -\begin{DoxyCompactItemize} -\item -struct \mbox{\hyperlink{structposition}{position}} -\begin{DoxyCompactList}\small\item\em structure donnant la localisation d\textquotesingle{}un arbre \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structtree}{tree}} -\begin{DoxyCompactList}\small\item\em structure informations importantes concernant un arbre \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structopt}{opt}} -\begin{DoxyCompactList}\small\item\em gestion des options en argument \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} -\begin{DoxyCompactList}\small\item\em structure associant une genre à une identifiant \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} -\begin{DoxyCompactList}\small\item\em structure de tableau et taille associée \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structedge}{edge}} -\begin{DoxyCompactList}\small\item\em structure définissant une arête \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structedge2}{edge2}} -\begin{DoxyCompactList}\small\item\em 2ième structure définissant une arête (pour options) \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structvertex}{vertex}} -\begin{DoxyCompactList}\small\item\em structure représentant un sommet pour la fonction minimum\+Spanning\+Tree \end{DoxyCompactList}\item -struct \mbox{\hyperlink{structnode}{node}} -\begin{DoxyCompactList}\small\item\em structure définissant un noeud \end{DoxyCompactList}\end{DoxyCompactItemize} -\doxysubsection*{Typedefs} -\begin{DoxyCompactItemize} -\item -typedef struct \mbox{\hyperlink{structposition}{position}} \mbox{\hyperlink{struct_8h_ae95ed9c09d4ff44297273224ccfbe1dd}{position}} -\begin{DoxyCompactList}\small\item\em structure donnant la localisation d\textquotesingle{}un arbre \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structtree}{tree}} \mbox{\hyperlink{struct_8h_a434e35ec9d53f159cc82d020517a98bb}{tree}} -\begin{DoxyCompactList}\small\item\em structure informations importantes concernant un arbre \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structopt}{opt}} \mbox{\hyperlink{struct_8h_ab2e02685ec24164f632d61af06ccddc1}{opt}} -\begin{DoxyCompactList}\small\item\em gestion des options en argument \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} \mbox{\hyperlink{struct_8h_ad545d83bb2720eaacdc619c17ed9f735}{corres\+\_\+genus}} -\begin{DoxyCompactList}\small\item\em structure associant une genre à une identifiant \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} \mbox{\hyperlink{struct_8h_a8cd1c3b0a4957b16fb034faed3fb5fe1}{tab\+\_\+genus}} -\begin{DoxyCompactList}\small\item\em structure de tableau et taille associée \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structedge}{edge}} \mbox{\hyperlink{struct_8h_a62e8ac20ad6459019691857781e5a4da}{edge}} -\begin{DoxyCompactList}\small\item\em structure définissant une arête \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structedge2}{edge2}} \mbox{\hyperlink{struct_8h_a5dd23cff3c78c4d93323551348659bbe}{edge2}} -\begin{DoxyCompactList}\small\item\em 2ième structure définissant une arête (pour options) \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structvertex}{vertex}} \mbox{\hyperlink{struct_8h_ad0f5923379e298b172ea5ab8ae5b0eeb}{vertex}} -\begin{DoxyCompactList}\small\item\em structure représentant un sommet pour la fonction minimum\+Spanning\+Tree \end{DoxyCompactList}\item -typedef struct \mbox{\hyperlink{structnode}{node}} \mbox{\hyperlink{struct_8h_af4aeda155dbe167f1c1cf38cb65bf324}{node}} -\begin{DoxyCompactList}\small\item\em structure définissant un noeud \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Typedef Documentation} -\mbox{\Hypertarget{struct_8h_ad545d83bb2720eaacdc619c17ed9f735}\label{struct_8h_ad545d83bb2720eaacdc619c17ed9f735}} -\index{struct.h@{struct.h}!corres\_genus@{corres\_genus}} -\index{corres\_genus@{corres\_genus}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{corres\_genus}{corres\_genus}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} \mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}}} - - - -structure associant une genre à une identifiant - -\mbox{\Hypertarget{struct_8h_a62e8ac20ad6459019691857781e5a4da}\label{struct_8h_a62e8ac20ad6459019691857781e5a4da}} -\index{struct.h@{struct.h}!edge@{edge}} -\index{edge@{edge}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{edge}{edge}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structedge}{edge}} \mbox{\hyperlink{structedge}{edge}}} - - - -structure définissant une arête - -\mbox{\Hypertarget{struct_8h_a5dd23cff3c78c4d93323551348659bbe}\label{struct_8h_a5dd23cff3c78c4d93323551348659bbe}} -\index{struct.h@{struct.h}!edge2@{edge2}} -\index{edge2@{edge2}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{edge2}{edge2}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structedge2}{edge2}} \mbox{\hyperlink{structedge2}{edge2}}} - - - -2ième structure définissant une arête (pour options) - -\mbox{\Hypertarget{struct_8h_af4aeda155dbe167f1c1cf38cb65bf324}\label{struct_8h_af4aeda155dbe167f1c1cf38cb65bf324}} -\index{struct.h@{struct.h}!node@{node}} -\index{node@{node}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{node}{node}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structnode}{node}} \mbox{\hyperlink{structnode}{node}}} - - - -structure définissant un noeud - -\mbox{\Hypertarget{struct_8h_ab2e02685ec24164f632d61af06ccddc1}\label{struct_8h_ab2e02685ec24164f632d61af06ccddc1}} -\index{struct.h@{struct.h}!opt@{opt}} -\index{opt@{opt}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{opt}{opt}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structopt}{opt}} \mbox{\hyperlink{structopt}{opt}}} - - - -gestion des options en argument - -\mbox{\Hypertarget{struct_8h_ae95ed9c09d4ff44297273224ccfbe1dd}\label{struct_8h_ae95ed9c09d4ff44297273224ccfbe1dd}} -\index{struct.h@{struct.h}!position@{position}} -\index{position@{position}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{position}{position}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structposition}{position}} \mbox{\hyperlink{structposition}{position}}} - - - -structure donnant la localisation d\textquotesingle{}un arbre - -\mbox{\Hypertarget{struct_8h_a8cd1c3b0a4957b16fb034faed3fb5fe1}\label{struct_8h_a8cd1c3b0a4957b16fb034faed3fb5fe1}} -\index{struct.h@{struct.h}!tab\_genus@{tab\_genus}} -\index{tab\_genus@{tab\_genus}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{tab\_genus}{tab\_genus}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}} \mbox{\hyperlink{structtab__genus}{tab\+\_\+genus}}} - - - -structure de tableau et taille associée - -\mbox{\Hypertarget{struct_8h_a434e35ec9d53f159cc82d020517a98bb}\label{struct_8h_a434e35ec9d53f159cc82d020517a98bb}} -\index{struct.h@{struct.h}!tree@{tree}} -\index{tree@{tree}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{tree}{tree}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structtree}{tree}} \mbox{\hyperlink{structtree}{tree}}} - - - -structure informations importantes concernant un arbre - -\mbox{\Hypertarget{struct_8h_ad0f5923379e298b172ea5ab8ae5b0eeb}\label{struct_8h_ad0f5923379e298b172ea5ab8ae5b0eeb}} -\index{struct.h@{struct.h}!vertex@{vertex}} -\index{vertex@{vertex}!struct.h@{struct.h}} -\doxysubsubsection{\texorpdfstring{vertex}{vertex}} -{\footnotesize\ttfamily typedef struct \mbox{\hyperlink{structvertex}{vertex}} \mbox{\hyperlink{structvertex}{vertex}}} - - - -structure représentant un sommet pour la fonction minimum\+Spanning\+Tree - diff --git a/docs/latex/struct_8h__dep__incl.dot b/docs/latex/struct_8h__dep__incl.dot deleted file mode 100644 index 25a86f2..0000000 --- a/docs/latex/struct_8h__dep__incl.dot +++ /dev/null @@ -1,56 +0,0 @@ -digraph "include/struct.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="include/algo.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8h.html",tooltip=" "]; - Node2 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="src/algo.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$algo_8c.html",tooltip=" "]; - Node2 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node4 [label="src/arbres.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$arbres_8c.html",tooltip=" "]; - Node2 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node5 [label="src/stat.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8c.html",tooltip=" "]; - Node1 -> Node6 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node6 [label="include/fonctions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8h.html",tooltip=" "]; - Node6 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node6 -> Node7 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node7 [label="src/fonctions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$fonctions_8c.html",tooltip=" "]; - Node6 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node8 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node8 [label="include/display.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8h.html",tooltip=" "]; - Node8 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node8 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node8 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node9 [label="src/display.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$display_8c.html",tooltip=" "]; - Node8 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node10 [label="src/parse.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8c.html",tooltip=" "]; - Node1 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node11 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node11 [label="include/options.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8h.html",tooltip=" "]; - Node11 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node11 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node12 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node12 [label="include/parse.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$parse_8h.html",tooltip=" "]; - Node12 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node12 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node12 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node13 [label="src/restrictiveOptions.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8c.html",tooltip=" "]; - Node1 -> Node14 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node14 [label="include/stat.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$stat_8h.html",tooltip=" "]; - Node14 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node14 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node15 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node15 [label="include/restrictiveOptions.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$restrictiveOptions_8h.html",tooltip=" "]; - Node15 -> Node4 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node15 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node9 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node16 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node16 [label="src/options.c",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$options_8c.html",tooltip=" "]; - Node1 -> Node10 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node13 [dir="back",color="midnightblue",fontsize="10",style="solid"]; - Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/struct_8h__incl.dot b/docs/latex/struct_8h__incl.dot deleted file mode 100644 index 8b209db..0000000 --- a/docs/latex/struct_8h__incl.dot +++ /dev/null @@ -1,12 +0,0 @@ -digraph "include/struct.h" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="include/struct.h",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; - Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; - Node2 [label="stdio.h",height=0.2,width=0.4,color="grey75", fillcolor="white", style="filled",tooltip=" "]; - Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid"]; - Node3 [label="array-list.h",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$array-list_8h.html",tooltip=" "]; - Node3 -> Node2 [color="midnightblue",fontsize="10",style="solid"]; -} diff --git a/docs/latex/structarbre.tex b/docs/latex/structarbre.tex deleted file mode 100644 index 1551e4c..0000000 --- a/docs/latex/structarbre.tex +++ /dev/null @@ -1,65 +0,0 @@ -\hypertarget{structarbre}{}\doxysection{arbre Struct Reference} -\label{structarbre}\index{arbre@{arbre}} - - -structure informations importantes concernant un arbre - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for arbre\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -char \mbox{\hyperlink{structarbre_a2571c6df0670411bce71b8b0b12513f3}{genre}} -\begin{DoxyCompactList}\small\item\em genre de l\textquotesingle{}arbre \end{DoxyCompactList}\item -short \mbox{\hyperlink{structarbre_afa0ece9f62565507f61e00a2f5804024}{hauteur}} -\begin{DoxyCompactList}\small\item\em hauteur de l\textquotesingle{}arbre \end{DoxyCompactList}\item -\mbox{\hyperlink{structposition}{position}} \mbox{\hyperlink{structarbre_aecd89264dfef578a64131e691c892059}{geoloc}} -\begin{DoxyCompactList}\small\item\em struture correspondant à la position de l\textquotesingle{}arbre \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure informations importantes concernant un arbre - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structarbre_a2571c6df0670411bce71b8b0b12513f3}\label{structarbre_a2571c6df0670411bce71b8b0b12513f3}} -\index{arbre@{arbre}!genre@{genre}} -\index{genre@{genre}!arbre@{arbre}} -\doxysubsubsection{\texorpdfstring{genre}{genre}} -{\footnotesize\ttfamily char arbre\+::genre} - - - -genre de l\textquotesingle{}arbre - -\mbox{\Hypertarget{structarbre_aecd89264dfef578a64131e691c892059}\label{structarbre_aecd89264dfef578a64131e691c892059}} -\index{arbre@{arbre}!geoloc@{geoloc}} -\index{geoloc@{geoloc}!arbre@{arbre}} -\doxysubsubsection{\texorpdfstring{geoloc}{geoloc}} -{\footnotesize\ttfamily \mbox{\hyperlink{structposition}{position}} arbre\+::geoloc} - - - -struture correspondant à la position de l\textquotesingle{}arbre - -\mbox{\Hypertarget{structarbre_afa0ece9f62565507f61e00a2f5804024}\label{structarbre_afa0ece9f62565507f61e00a2f5804024}} -\index{arbre@{arbre}!hauteur@{hauteur}} -\index{hauteur@{hauteur}!arbre@{arbre}} -\doxysubsubsection{\texorpdfstring{hauteur}{hauteur}} -{\footnotesize\ttfamily short arbre\+::hauteur} - - - -hauteur de l\textquotesingle{}arbre - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structarbre__coll__graph.dot b/docs/latex/structarbre__coll__graph.dot deleted file mode 100644 index 97e918f..0000000 --- a/docs/latex/structarbre__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "arbre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{arbre\n|+ genre\l+ hauteur\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure informations importantes concernant un arbre"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond"]; - Node2 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/latex/structarete.tex b/docs/latex/structarete.tex deleted file mode 100644 index 6c3e8b9..0000000 --- a/docs/latex/structarete.tex +++ /dev/null @@ -1,55 +0,0 @@ -\hypertarget{structarete}{}\doxysection{arete Struct Reference} -\label{structarete}\index{arete@{arete}} - - -structure définissant une arête - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for arete\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structarbre}{arbre}} $\ast$ \mbox{\hyperlink{structarete_a1287880e754828d042c5e2b51341b32e}{tree1}} -\begin{DoxyCompactList}\small\item\em premier arbre connecté \end{DoxyCompactList}\item -\mbox{\hyperlink{structarbre}{arbre}} $\ast$ \mbox{\hyperlink{structarete_ab526bf5183ab83045f51330ed0090a3c}{tree2}} -\begin{DoxyCompactList}\small\item\em deuxième arbre connecté \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure définissant une arête - - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structarete_a1287880e754828d042c5e2b51341b32e}\label{structarete_a1287880e754828d042c5e2b51341b32e}} -\index{arete@{arete}!tree1@{tree1}} -\index{tree1@{tree1}!arete@{arete}} -\doxysubsubsection{\texorpdfstring{tree1}{tree1}} -{\footnotesize\ttfamily \mbox{\hyperlink{structarbre}{arbre}}$\ast$ arete\+::tree1} - - - -premier arbre connecté - -\mbox{\Hypertarget{structarete_ab526bf5183ab83045f51330ed0090a3c}\label{structarete_ab526bf5183ab83045f51330ed0090a3c}} -\index{arete@{arete}!tree2@{tree2}} -\index{tree2@{tree2}!arete@{arete}} -\doxysubsubsection{\texorpdfstring{tree2}{tree2}} -{\footnotesize\ttfamily \mbox{\hyperlink{structarbre}{arbre}}$\ast$ arete\+::tree2} - - - -deuxième arbre connecté - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structarete__coll__graph.dot b/docs/latex/structarete__coll__graph.dot deleted file mode 100644 index fc4e2e0..0000000 --- a/docs/latex/structarete__coll__graph.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "arete" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{arete\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant une arête"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +tree1\n+tree2" ,arrowhead="odiamond"]; - Node2 [label="{arbre\n|+ genre\l+ hauteur\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structarbre.html",tooltip="structure informations importantes concernant un arbre"]; - Node3 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond"]; - Node3 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/latex/structcorres__genre.tex b/docs/latex/structcorres__genre.tex deleted file mode 100644 index 5577cf2..0000000 --- a/docs/latex/structcorres__genre.tex +++ /dev/null @@ -1,53 +0,0 @@ -\hypertarget{structcorres__genre}{}\doxysection{corres\+\_\+genre Struct Reference} -\label{structcorres__genre}\index{corres\_genre@{corres\_genre}} - - -structure associant une genre à une identifiant - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for corres\+\_\+genre\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -char \mbox{\hyperlink{structcorres__genre_a490c0c72cb3484f2e9f5e24e6bdff04a}{genre}} \mbox{[}30\mbox{]} -\begin{DoxyCompactList}\small\item\em genre de l\textquotesingle{}arbre (string) \end{DoxyCompactList}\item -char \mbox{\hyperlink{structcorres__genre_a9e7c2900ac56c41b18943c0bf8b174df}{id}} -\begin{DoxyCompactList}\small\item\em identifiant associé \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure associant une genre à une identifiant - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structcorres__genre_a490c0c72cb3484f2e9f5e24e6bdff04a}\label{structcorres__genre_a490c0c72cb3484f2e9f5e24e6bdff04a}} -\index{corres\_genre@{corres\_genre}!genre@{genre}} -\index{genre@{genre}!corres\_genre@{corres\_genre}} -\doxysubsubsection{\texorpdfstring{genre}{genre}} -{\footnotesize\ttfamily char corres\+\_\+genre\+::genre\mbox{[}30\mbox{]}} - - - -genre de l\textquotesingle{}arbre (string) - -\mbox{\Hypertarget{structcorres__genre_a9e7c2900ac56c41b18943c0bf8b174df}\label{structcorres__genre_a9e7c2900ac56c41b18943c0bf8b174df}} -\index{corres\_genre@{corres\_genre}!id@{id}} -\index{id@{id}!corres\_genre@{corres\_genre}} -\doxysubsubsection{\texorpdfstring{id}{id}} -{\footnotesize\ttfamily char corres\+\_\+genre\+::id} - - - -identifiant associé - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structcorres__genre__coll__graph.dot b/docs/latex/structcorres__genre__coll__graph.dot deleted file mode 100644 index e910e46..0000000 --- a/docs/latex/structcorres__genre__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "corres_genre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{corres_genre\n|+ genre\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/latex/structcorres__genus.tex b/docs/latex/structcorres__genus.tex deleted file mode 100644 index b723ebe..0000000 --- a/docs/latex/structcorres__genus.tex +++ /dev/null @@ -1,53 +0,0 @@ -\hypertarget{structcorres__genus}{}\doxysection{corres\+\_\+genus Struct Reference} -\label{structcorres__genus}\index{corres\_genus@{corres\_genus}} - - -structure associant une genre à une identifiant - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for corres\+\_\+genus\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -char \mbox{\hyperlink{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}{genus}} \mbox{[}30\mbox{]} -\begin{DoxyCompactList}\small\item\em genre de l\textquotesingle{}arbre (string) \end{DoxyCompactList}\item -char \mbox{\hyperlink{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}{id}} -\begin{DoxyCompactList}\small\item\em identifiant associé \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure associant une genre à une identifiant - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}\label{structcorres__genus_a55991b88972006dcf7c66a4fe81b2589}} -\index{corres\_genus@{corres\_genus}!genus@{genus}} -\index{genus@{genus}!corres\_genus@{corres\_genus}} -\doxysubsubsection{\texorpdfstring{genus}{genus}} -{\footnotesize\ttfamily char corres\+\_\+genus\+::genus\mbox{[}30\mbox{]}} - - - -genre de l\textquotesingle{}arbre (string) - -\mbox{\Hypertarget{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}\label{structcorres__genus_a094318cd3b28c4f276272b3b2ba17f27}} -\index{corres\_genus@{corres\_genus}!id@{id}} -\index{id@{id}!corres\_genus@{corres\_genus}} -\doxysubsubsection{\texorpdfstring{id}{id}} -{\footnotesize\ttfamily char corres\+\_\+genus\+::id} - - - -identifiant associé - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structcorres__genus__coll__graph.dot b/docs/latex/structcorres__genus__coll__graph.dot deleted file mode 100644 index 8ee0d7b..0000000 --- a/docs/latex/structcorres__genus__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "corres_genus" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{corres_genus\n|+ genus\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/latex/structedge.tex b/docs/latex/structedge.tex deleted file mode 100644 index a882b29..0000000 --- a/docs/latex/structedge.tex +++ /dev/null @@ -1,55 +0,0 @@ -\hypertarget{structedge}{}\doxysection{edge Struct Reference} -\label{structedge}\index{edge@{edge}} - - -structure définissant une arête - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for edge\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structtree}{tree}} $\ast$ \mbox{\hyperlink{structedge_a691a39efbffc566e6d86d01c4858f54a}{tree1}} -\begin{DoxyCompactList}\small\item\em premier arbre connecté \end{DoxyCompactList}\item -\mbox{\hyperlink{structtree}{tree}} $\ast$ \mbox{\hyperlink{structedge_ab7d029eeb2b522e8f81373450c476741}{tree2}} -\begin{DoxyCompactList}\small\item\em deuxième arbre connecté \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure définissant une arête - - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structedge_a691a39efbffc566e6d86d01c4858f54a}\label{structedge_a691a39efbffc566e6d86d01c4858f54a}} -\index{edge@{edge}!tree1@{tree1}} -\index{tree1@{tree1}!edge@{edge}} -\doxysubsubsection{\texorpdfstring{tree1}{tree1}} -{\footnotesize\ttfamily \mbox{\hyperlink{structtree}{tree}}$\ast$ edge\+::tree1} - - - -premier arbre connecté - -\mbox{\Hypertarget{structedge_ab7d029eeb2b522e8f81373450c476741}\label{structedge_ab7d029eeb2b522e8f81373450c476741}} -\index{edge@{edge}!tree2@{tree2}} -\index{tree2@{tree2}!edge@{edge}} -\doxysubsubsection{\texorpdfstring{tree2}{tree2}} -{\footnotesize\ttfamily \mbox{\hyperlink{structtree}{tree}}$\ast$ edge\+::tree2} - - - -deuxième arbre connecté - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structedge2.tex b/docs/latex/structedge2.tex deleted file mode 100644 index d192b68..0000000 --- a/docs/latex/structedge2.tex +++ /dev/null @@ -1,47 +0,0 @@ -\hypertarget{structedge2}{}\doxysection{edge2 Struct Reference} -\label{structedge2}\index{edge2@{edge2}} - - -2ième structure définissant une arête (pour options) - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for edge2\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -size\+\_\+t \mbox{\hyperlink{structedge2_ad708c186ae678c61094235cf16c5800a}{tree1}} -\item -size\+\_\+t \mbox{\hyperlink{structedge2_a3155914d13a029d020cdbc431e345f2b}{tree2}} -\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -2ième structure définissant une arête (pour options) - - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structedge2_ad708c186ae678c61094235cf16c5800a}\label{structedge2_ad708c186ae678c61094235cf16c5800a}} -\index{edge2@{edge2}!tree1@{tree1}} -\index{tree1@{tree1}!edge2@{edge2}} -\doxysubsubsection{\texorpdfstring{tree1}{tree1}} -{\footnotesize\ttfamily size\+\_\+t edge2\+::tree1} - -\mbox{\Hypertarget{structedge2_a3155914d13a029d020cdbc431e345f2b}\label{structedge2_a3155914d13a029d020cdbc431e345f2b}} -\index{edge2@{edge2}!tree2@{tree2}} -\index{tree2@{tree2}!edge2@{edge2}} -\doxysubsubsection{\texorpdfstring{tree2}{tree2}} -{\footnotesize\ttfamily size\+\_\+t edge2\+::tree2} - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structedge2__coll__graph.dot b/docs/latex/structedge2__coll__graph.dot deleted file mode 100644 index 161a7f2..0000000 --- a/docs/latex/structedge2__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "edge2" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{edge2\n|+ tree1\l+ tree2\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="2ième structure définissant une arête (pour options)"]; -} diff --git a/docs/latex/structedge__coll__graph.dot b/docs/latex/structedge__coll__graph.dot deleted file mode 100644 index 72fc75c..0000000 --- a/docs/latex/structedge__coll__graph.dot +++ /dev/null @@ -1,11 +0,0 @@ -digraph "edge" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{edge\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant une arête"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +tree1\n+tree2" ,arrowhead="odiamond"]; - Node2 [label="{tree\n|+ genus\l+ height\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtree.html",tooltip="structure informations importantes concernant un arbre"]; - Node3 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond"]; - Node3 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/latex/structlist__t.tex b/docs/latex/structlist__t.tex deleted file mode 100644 index 5c52826..0000000 --- a/docs/latex/structlist__t.tex +++ /dev/null @@ -1,41 +0,0 @@ -\hypertarget{structlist__t}{}\doxysection{list\+\_\+t Struct Reference} -\label{structlist__t}\index{list\_t@{list\_t}} - - -Collaboration diagram for list\+\_\+t\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -void $\ast$$\ast$ \mbox{\hyperlink{structlist__t_a50b00b979c754b66e735689d37b1fa4d}{element}} -\item -size\+\_\+t \mbox{\hyperlink{structlist__t_a545866c10437e674417eed908a43846a}{allocated}} -\item -size\+\_\+t \mbox{\hyperlink{structlist__t_a5c985284293b9906f913542e36e40b41}{size}} -\end{DoxyCompactItemize} - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structlist__t_a545866c10437e674417eed908a43846a}\label{structlist__t_a545866c10437e674417eed908a43846a}} -\index{list\_t@{list\_t}!allocated@{allocated}} -\index{allocated@{allocated}!list\_t@{list\_t}} -\doxysubsubsection{\texorpdfstring{allocated}{allocated}} -{\footnotesize\ttfamily size\+\_\+t list\+\_\+t\+::allocated} - -\mbox{\Hypertarget{structlist__t_a50b00b979c754b66e735689d37b1fa4d}\label{structlist__t_a50b00b979c754b66e735689d37b1fa4d}} -\index{list\_t@{list\_t}!element@{element}} -\index{element@{element}!list\_t@{list\_t}} -\doxysubsubsection{\texorpdfstring{element}{element}} -{\footnotesize\ttfamily void$\ast$$\ast$ list\+\_\+t\+::element} - -\mbox{\Hypertarget{structlist__t_a5c985284293b9906f913542e36e40b41}\label{structlist__t_a5c985284293b9906f913542e36e40b41}} -\index{list\_t@{list\_t}!size@{size}} -\index{size@{size}!list\_t@{list\_t}} -\doxysubsubsection{\texorpdfstring{size}{size}} -{\footnotesize\ttfamily size\+\_\+t list\+\_\+t\+::size} - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -src/\mbox{\hyperlink{array-list_8c}{array-\/list.\+c}}\end{DoxyCompactItemize} diff --git a/docs/latex/structlist__t__coll__graph.dot b/docs/latex/structlist__t__coll__graph.dot deleted file mode 100644 index 50e5403..0000000 --- a/docs/latex/structlist__t__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "list_t" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{list_t\n|+ element\l+ allocated\l+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "]; -} diff --git a/docs/latex/structnode.tex b/docs/latex/structnode.tex deleted file mode 100644 index 5a83c96..0000000 --- a/docs/latex/structnode.tex +++ /dev/null @@ -1,39 +0,0 @@ -\hypertarget{structnode}{}\doxysection{node Struct Reference} -\label{structnode}\index{node@{node}} - - -structure définissant un noeud - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for node\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structlist__t}{list\+\_\+t}} $\ast$ \mbox{\hyperlink{structnode_aa2af56ab31cad8ae60cb6482c6386d67}{neighbors}} -\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure définissant un noeud - - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structnode_aa2af56ab31cad8ae60cb6482c6386d67}\label{structnode_aa2af56ab31cad8ae60cb6482c6386d67}} -\index{node@{node}!neighbors@{neighbors}} -\index{neighbors@{neighbors}!node@{node}} -\doxysubsubsection{\texorpdfstring{neighbors}{neighbors}} -{\footnotesize\ttfamily \mbox{\hyperlink{structlist__t}{list\+\_\+t}}$\ast$ node\+::neighbors} - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structnode__coll__graph.dot b/docs/latex/structnode__coll__graph.dot deleted file mode 100644 index 7fbbca7..0000000 --- a/docs/latex/structnode__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "node" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{node\n||}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure définissant un noeud"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +neighbors" ,arrowhead="odiamond"]; - Node2 [label="{list_t\n|+ element\l+ allocated\l+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structlist__t.html",tooltip=" "]; -} diff --git a/docs/latex/structopt.tex b/docs/latex/structopt.tex deleted file mode 100644 index a49ff91..0000000 --- a/docs/latex/structopt.tex +++ /dev/null @@ -1,117 +0,0 @@ -\hypertarget{structopt}{}\doxysection{opt Struct Reference} -\label{structopt}\index{opt@{opt}} - - -gestion des options en argument - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for opt\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -int \mbox{\hyperlink{structopt_a470e589ac658e33386e40fe4449f4889}{stat}} -\item -int \mbox{\hyperlink{structopt_af41d727a82e845ad5fd61173c9cc8831}{help}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a2809598faded69f650028625e2600379}{in\+\_\+path}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a47181603b53379d816eacaf7ed06854c}{out\+\_\+path}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a74783b8f970c1467dd813848c0c93fc9}{span\+\_\+tree\+\_\+path}} -\item -char $\ast$ \mbox{\hyperlink{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}{location}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a5c2fc0cd11085fc8bf313b56cc791a75}{limit\+\_\+value}} -\item -char $\ast$ \mbox{\hyperlink{structopt_ab5b54f29a8bc5c4e1a2c84527aad8c00}{genus}} -\item -char $\ast$ \mbox{\hyperlink{structopt_ab74aec43a44b95b42fffc3319adb019f}{height}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a57d1c1dc92ba99df66d0fd603189bae3}{conserve}} -\item -char $\ast$ \mbox{\hyperlink{structopt_a2be9a32bb8a2a689af9265b4b0c03728}{recharge}} -\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -gestion des options en argument - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structopt_a57d1c1dc92ba99df66d0fd603189bae3}\label{structopt_a57d1c1dc92ba99df66d0fd603189bae3}} -\index{opt@{opt}!conserve@{conserve}} -\index{conserve@{conserve}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{conserve}{conserve}} -{\footnotesize\ttfamily char$\ast$ opt\+::conserve} - -\mbox{\Hypertarget{structopt_ab5b54f29a8bc5c4e1a2c84527aad8c00}\label{structopt_ab5b54f29a8bc5c4e1a2c84527aad8c00}} -\index{opt@{opt}!genus@{genus}} -\index{genus@{genus}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{genus}{genus}} -{\footnotesize\ttfamily char$\ast$ opt\+::genus} - -\mbox{\Hypertarget{structopt_ab74aec43a44b95b42fffc3319adb019f}\label{structopt_ab74aec43a44b95b42fffc3319adb019f}} -\index{opt@{opt}!height@{height}} -\index{height@{height}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{height}{height}} -{\footnotesize\ttfamily char$\ast$ opt\+::height} - -\mbox{\Hypertarget{structopt_af41d727a82e845ad5fd61173c9cc8831}\label{structopt_af41d727a82e845ad5fd61173c9cc8831}} -\index{opt@{opt}!help@{help}} -\index{help@{help}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{help}{help}} -{\footnotesize\ttfamily int opt\+::help} - -\mbox{\Hypertarget{structopt_a2809598faded69f650028625e2600379}\label{structopt_a2809598faded69f650028625e2600379}} -\index{opt@{opt}!in\_path@{in\_path}} -\index{in\_path@{in\_path}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{in\_path}{in\_path}} -{\footnotesize\ttfamily char$\ast$ opt\+::in\+\_\+path} - -\mbox{\Hypertarget{structopt_a5c2fc0cd11085fc8bf313b56cc791a75}\label{structopt_a5c2fc0cd11085fc8bf313b56cc791a75}} -\index{opt@{opt}!limit\_value@{limit\_value}} -\index{limit\_value@{limit\_value}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{limit\_value}{limit\_value}} -{\footnotesize\ttfamily char$\ast$ opt\+::limit\+\_\+value} - -\mbox{\Hypertarget{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}\label{structopt_aaf6d5cc2fc5b59c841a9dab86bb025a1}} -\index{opt@{opt}!location@{location}} -\index{location@{location}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{location}{location}} -{\footnotesize\ttfamily char$\ast$ opt\+::location} - -\mbox{\Hypertarget{structopt_a47181603b53379d816eacaf7ed06854c}\label{structopt_a47181603b53379d816eacaf7ed06854c}} -\index{opt@{opt}!out\_path@{out\_path}} -\index{out\_path@{out\_path}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{out\_path}{out\_path}} -{\footnotesize\ttfamily char$\ast$ opt\+::out\+\_\+path} - -\mbox{\Hypertarget{structopt_a2be9a32bb8a2a689af9265b4b0c03728}\label{structopt_a2be9a32bb8a2a689af9265b4b0c03728}} -\index{opt@{opt}!recharge@{recharge}} -\index{recharge@{recharge}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{recharge}{recharge}} -{\footnotesize\ttfamily char$\ast$ opt\+::recharge} - -\mbox{\Hypertarget{structopt_a74783b8f970c1467dd813848c0c93fc9}\label{structopt_a74783b8f970c1467dd813848c0c93fc9}} -\index{opt@{opt}!span\_tree\_path@{span\_tree\_path}} -\index{span\_tree\_path@{span\_tree\_path}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{span\_tree\_path}{span\_tree\_path}} -{\footnotesize\ttfamily char$\ast$ opt\+::span\+\_\+tree\+\_\+path} - -\mbox{\Hypertarget{structopt_a470e589ac658e33386e40fe4449f4889}\label{structopt_a470e589ac658e33386e40fe4449f4889}} -\index{opt@{opt}!stat@{stat}} -\index{stat@{stat}!opt@{opt}} -\doxysubsubsection{\texorpdfstring{stat}{stat}} -{\footnotesize\ttfamily int opt\+::stat} - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structopt__coll__graph.dot b/docs/latex/structopt__coll__graph.dot deleted file mode 100644 index 3a848b1..0000000 --- a/docs/latex/structopt__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "opt" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{opt\n|+ stat\l+ help\l+ in_path\l+ out_path\l+ span_tree_path\l+ location\l+ limit_value\l+ genus\l+ height\l+ conserve\l+ recharge\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="gestion des options en argument"]; -} diff --git a/docs/latex/structposition.tex b/docs/latex/structposition.tex deleted file mode 100644 index 61034a8..0000000 --- a/docs/latex/structposition.tex +++ /dev/null @@ -1,53 +0,0 @@ -\hypertarget{structposition}{}\doxysection{position Struct Reference} -\label{structposition}\index{position@{position}} - - -structure donnant la localisation d\textquotesingle{}un arbre - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for position\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -double \mbox{\hyperlink{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}{x}} -\begin{DoxyCompactList}\small\item\em latitude position arbre (en degré) \end{DoxyCompactList}\item -double \mbox{\hyperlink{structposition_a4c8f3776329f75007608235aae679e8a}{y}} -\begin{DoxyCompactList}\small\item\em longitude position arbre (en degré) \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure donnant la localisation d\textquotesingle{}un arbre - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}\label{structposition_a0ab4d1279ca59c4e71d543144a4ea98f}} -\index{position@{position}!x@{x}} -\index{x@{x}!position@{position}} -\doxysubsubsection{\texorpdfstring{x}{x}} -{\footnotesize\ttfamily double position\+::x} - - - -latitude position arbre (en degré) - -\mbox{\Hypertarget{structposition_a4c8f3776329f75007608235aae679e8a}\label{structposition_a4c8f3776329f75007608235aae679e8a}} -\index{position@{position}!y@{y}} -\index{y@{y}!position@{position}} -\doxysubsubsection{\texorpdfstring{y}{y}} -{\footnotesize\ttfamily double position\+::y} - - - -longitude position arbre (en degré) - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structposition__coll__graph.dot b/docs/latex/structposition__coll__graph.dot deleted file mode 100644 index c2517bf..0000000 --- a/docs/latex/structposition__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "position" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/latex/structtab__genre.tex b/docs/latex/structtab__genre.tex deleted file mode 100644 index e38aa16..0000000 --- a/docs/latex/structtab__genre.tex +++ /dev/null @@ -1,53 +0,0 @@ -\hypertarget{structtab__genre}{}\doxysection{tab\+\_\+genre Struct Reference} -\label{structtab__genre}\index{tab\_genre@{tab\_genre}} - - -structure de tableau et taille associée - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for tab\+\_\+genre\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structcorres__genre}{corres\+\_\+genre}} \mbox{\hyperlink{structtab__genre_aa0f5907d6dd0b1d9679c3ba9471598c1}{genres}} \mbox{[}255\mbox{]} -\begin{DoxyCompactList}\small\item\em tableau de paires genre/id correspondant \end{DoxyCompactList}\item -int \mbox{\hyperlink{structtab__genre_a31c2e43b705450b17e65746f6730a917}{size}} -\begin{DoxyCompactList}\small\item\em nombre d\textquotesingle{}éléments dans le tableau \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure de tableau et taille associée - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structtab__genre_aa0f5907d6dd0b1d9679c3ba9471598c1}\label{structtab__genre_aa0f5907d6dd0b1d9679c3ba9471598c1}} -\index{tab\_genre@{tab\_genre}!genres@{genres}} -\index{genres@{genres}!tab\_genre@{tab\_genre}} -\doxysubsubsection{\texorpdfstring{genres}{genres}} -{\footnotesize\ttfamily \mbox{\hyperlink{structcorres__genre}{corres\+\_\+genre}} tab\+\_\+genre\+::genres\mbox{[}255\mbox{]}} - - - -tableau de paires genre/id correspondant - -\mbox{\Hypertarget{structtab__genre_a31c2e43b705450b17e65746f6730a917}\label{structtab__genre_a31c2e43b705450b17e65746f6730a917}} -\index{tab\_genre@{tab\_genre}!size@{size}} -\index{size@{size}!tab\_genre@{tab\_genre}} -\doxysubsubsection{\texorpdfstring{size}{size}} -{\footnotesize\ttfamily int tab\+\_\+genre\+::size} - - - -nombre d\textquotesingle{}éléments dans le tableau - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structtab__genre__coll__graph.dot b/docs/latex/structtab__genre__coll__graph.dot deleted file mode 100644 index f111ba4..0000000 --- a/docs/latex/structtab__genre__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tab_genre" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tab_genre\n|+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure de tableau et taille associée"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +genres" ,arrowhead="odiamond"]; - Node2 [label="{corres_genre\n|+ genre\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structcorres__genre.html",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/latex/structtab__genus.tex b/docs/latex/structtab__genus.tex deleted file mode 100644 index d846900..0000000 --- a/docs/latex/structtab__genus.tex +++ /dev/null @@ -1,53 +0,0 @@ -\hypertarget{structtab__genus}{}\doxysection{tab\+\_\+genus Struct Reference} -\label{structtab__genus}\index{tab\_genus@{tab\_genus}} - - -structure de tableau et taille associée - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for tab\+\_\+genus\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} \mbox{\hyperlink{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}{genuses}} \mbox{[}255\mbox{]} -\begin{DoxyCompactList}\small\item\em tableau de paires genre/id correspondant \end{DoxyCompactList}\item -int \mbox{\hyperlink{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}{size}} -\begin{DoxyCompactList}\small\item\em nombre d\textquotesingle{}éléments dans le tableau \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure de tableau et taille associée - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}\label{structtab__genus_a3cd0ec1e14551ec94550d26be22a6b21}} -\index{tab\_genus@{tab\_genus}!genuses@{genuses}} -\index{genuses@{genuses}!tab\_genus@{tab\_genus}} -\doxysubsubsection{\texorpdfstring{genuses}{genuses}} -{\footnotesize\ttfamily \mbox{\hyperlink{structcorres__genus}{corres\+\_\+genus}} tab\+\_\+genus\+::genuses\mbox{[}255\mbox{]}} - - - -tableau de paires genre/id correspondant - -\mbox{\Hypertarget{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}\label{structtab__genus_a33c8c1e67948ffd7d1eda170452ee589}} -\index{tab\_genus@{tab\_genus}!size@{size}} -\index{size@{size}!tab\_genus@{tab\_genus}} -\doxysubsubsection{\texorpdfstring{size}{size}} -{\footnotesize\ttfamily int tab\+\_\+genus\+::size} - - - -nombre d\textquotesingle{}éléments dans le tableau - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structtab__genus__coll__graph.dot b/docs/latex/structtab__genus__coll__graph.dot deleted file mode 100644 index fef4558..0000000 --- a/docs/latex/structtab__genus__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tab_genus" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tab_genus\n|+ size\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure de tableau et taille associée"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +genuses" ,arrowhead="odiamond"]; - Node2 [label="{corres_genus\n|+ genus\l+ id\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structcorres__genus.html",tooltip="structure associant une genre à une identifiant"]; -} diff --git a/docs/latex/structtree.tex b/docs/latex/structtree.tex deleted file mode 100644 index 575378e..0000000 --- a/docs/latex/structtree.tex +++ /dev/null @@ -1,65 +0,0 @@ -\hypertarget{structtree}{}\doxysection{tree Struct Reference} -\label{structtree}\index{tree@{tree}} - - -structure informations importantes concernant un arbre - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for tree\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -\mbox{\hyperlink{structposition}{position}} \mbox{\hyperlink{structtree_a298f78a3e0e132f7b8635cadc96727c7}{geoloc}} -\begin{DoxyCompactList}\small\item\em struture correspondant à la position de l\textquotesingle{}arbre \end{DoxyCompactList}\item -short \mbox{\hyperlink{structtree_a656022a4f0afcd69428a5b413333c906}{genus}} -\begin{DoxyCompactList}\small\item\em genre de l\textquotesingle{}arbre \end{DoxyCompactList}\item -short \mbox{\hyperlink{structtree_aa7924d19ff993d28766f18e9c583c1f8}{height}} -\begin{DoxyCompactList}\small\item\em hauteur de l\textquotesingle{}arbre \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure informations importantes concernant un arbre - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structtree_a656022a4f0afcd69428a5b413333c906}\label{structtree_a656022a4f0afcd69428a5b413333c906}} -\index{tree@{tree}!genus@{genus}} -\index{genus@{genus}!tree@{tree}} -\doxysubsubsection{\texorpdfstring{genus}{genus}} -{\footnotesize\ttfamily short tree\+::genus} - - - -genre de l\textquotesingle{}arbre - -\mbox{\Hypertarget{structtree_a298f78a3e0e132f7b8635cadc96727c7}\label{structtree_a298f78a3e0e132f7b8635cadc96727c7}} -\index{tree@{tree}!geoloc@{geoloc}} -\index{geoloc@{geoloc}!tree@{tree}} -\doxysubsubsection{\texorpdfstring{geoloc}{geoloc}} -{\footnotesize\ttfamily \mbox{\hyperlink{structposition}{position}} tree\+::geoloc} - - - -struture correspondant à la position de l\textquotesingle{}arbre - -\mbox{\Hypertarget{structtree_aa7924d19ff993d28766f18e9c583c1f8}\label{structtree_aa7924d19ff993d28766f18e9c583c1f8}} -\index{tree@{tree}!height@{height}} -\index{height@{height}!tree@{tree}} -\doxysubsubsection{\texorpdfstring{height}{height}} -{\footnotesize\ttfamily short tree\+::height} - - - -hauteur de l\textquotesingle{}arbre - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structtree__coll__graph.dot b/docs/latex/structtree__coll__graph.dot deleted file mode 100644 index 687cef4..0000000 --- a/docs/latex/structtree__coll__graph.dot +++ /dev/null @@ -1,9 +0,0 @@ -digraph "tree" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{tree\n|+ genus\l+ height\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure informations importantes concernant un arbre"]; - Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +geoloc" ,arrowhead="odiamond"]; - Node2 [label="{position\n|+ x\l+ y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structposition.html",tooltip="structure donnant la localisation d'un arbre"]; -} diff --git a/docs/latex/structvertex.tex b/docs/latex/structvertex.tex deleted file mode 100644 index 7e55816..0000000 --- a/docs/latex/structvertex.tex +++ /dev/null @@ -1,67 +0,0 @@ -\hypertarget{structvertex}{}\doxysection{vertex Struct Reference} -\label{structvertex}\index{vertex@{vertex}} - - -structure représentant un sommet pour la fonction minimum\+Spanning\+Tree - - - - -{\ttfamily \#include $<$struct.\+h$>$} - - - -Collaboration diagram for vertex\+: -% FIG 0 -\doxysubsection*{Data Fields} -\begin{DoxyCompactItemize} -\item -short \mbox{\hyperlink{structvertex_abb304730a96e200d85efecb1dc3334ea}{is\+In\+Component}} -\begin{DoxyCompactList}\small\item\em 1 si le sommet est déjà dans la composante \end{DoxyCompactList}\item -double \mbox{\hyperlink{structvertex_a514cfdd1b334916366fb7c03241b6702}{dist\+Min}} -\begin{DoxyCompactList}\small\item\em la distance minimale aux autres sommets enregistrée \end{DoxyCompactList}\item -size\+\_\+t \mbox{\hyperlink{structvertex_a02e22a2c9888862e832740689849d197}{vertex\+Min}} -\begin{DoxyCompactList}\small\item\em le sommet réalisant cette distance \end{DoxyCompactList}\end{DoxyCompactItemize} - - -\doxysubsection{Detailed Description} -structure représentant un sommet pour la fonction minimum\+Spanning\+Tree - - - -\doxysubsection{Field Documentation} -\mbox{\Hypertarget{structvertex_a514cfdd1b334916366fb7c03241b6702}\label{structvertex_a514cfdd1b334916366fb7c03241b6702}} -\index{vertex@{vertex}!distMin@{distMin}} -\index{distMin@{distMin}!vertex@{vertex}} -\doxysubsubsection{\texorpdfstring{distMin}{distMin}} -{\footnotesize\ttfamily double vertex\+::dist\+Min} - - - -la distance minimale aux autres sommets enregistrée - -\mbox{\Hypertarget{structvertex_abb304730a96e200d85efecb1dc3334ea}\label{structvertex_abb304730a96e200d85efecb1dc3334ea}} -\index{vertex@{vertex}!isInComponent@{isInComponent}} -\index{isInComponent@{isInComponent}!vertex@{vertex}} -\doxysubsubsection{\texorpdfstring{isInComponent}{isInComponent}} -{\footnotesize\ttfamily short vertex\+::is\+In\+Component} - - - -1 si le sommet est déjà dans la composante - -\mbox{\Hypertarget{structvertex_a02e22a2c9888862e832740689849d197}\label{structvertex_a02e22a2c9888862e832740689849d197}} -\index{vertex@{vertex}!vertexMin@{vertexMin}} -\index{vertexMin@{vertexMin}!vertex@{vertex}} -\doxysubsubsection{\texorpdfstring{vertexMin}{vertexMin}} -{\footnotesize\ttfamily size\+\_\+t vertex\+::vertex\+Min} - - - -le sommet réalisant cette distance - - - -The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize} -\item -include/\mbox{\hyperlink{struct_8h}{struct.\+h}}\end{DoxyCompactItemize} diff --git a/docs/latex/structvertex__coll__graph.dot b/docs/latex/structvertex__coll__graph.dot deleted file mode 100644 index f96ee1a..0000000 --- a/docs/latex/structvertex__coll__graph.dot +++ /dev/null @@ -1,7 +0,0 @@ -digraph "vertex" -{ - // LATEX_PDF_SIZE - edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"]; - node [fontname="Helvetica",fontsize="10",shape=record]; - Node1 [label="{vertex\n|+ isInComponent\l+ distMin\l+ vertexMin\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip="structure représentant un sommet pour la fonction minimumSpanningTree"]; -} diff --git a/docs/latex/tabu_doxygen.sty b/docs/latex/tabu_doxygen.sty deleted file mode 100644 index 60fd7e8..0000000 --- a/docs/latex/tabu_doxygen.sty +++ /dev/null @@ -1,2557 +0,0 @@ -%% -%% This is file `tabu.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% tabu.dtx (with options: `package') -%% -%% This is a generated file. -%% Copyright (FC) 2010-2011 - lppl -%% -%% tabu : 2011/02/26 v2.8 - tabu : Flexible LaTeX tabulars -%% -%% ********************************************************************************************** -%% \begin{tabu} { preamble } => default target: \linewidth or \linegoal -%% \begin{tabu} to { preamble } => target specified -%% \begin{tabu} spread { preamble } => target relative to the ``natural width'' -%% -%% tabu works in text and in math modes. -%% -%% X columns: automatic width adjustment + horizontal and vertical alignment -%% \begin{tabu} { X[4c] X[1c] X[-2ml] } -%% -%% Horizontal lines and / or leaders: -%% \hline\hline => double horizontal line -%% \firsthline\hline => for nested tabulars -%% \lasthline\hline => for nested tabulars -%% \tabucline[line spec]{column-column} => ``funny'' lines (dash/leader) -%% Automatic lines / leaders : -%% \everyrow{\hline\hline} -%% -%% Vertical lines and / or leaders: -%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt blue] } -%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt on 2pt off 4pt blue] } -%% -%% Fixed vertical spacing adjustment: -%% \extrarowheight= \extrarowdepth= -%% or: \extrarowsep= => may be prefixed by \global -%% -%% Dynamic vertical spacing adjustment: -%% \abovetabulinesep= \belowtabulinesep= -%% or: \tabulinesep= => may be prefixed by \global -%% -%% delarray.sty shortcuts: in math and text modes -%% \begin{tabu} .... \({ preamble }\) -%% -%% Algorithms reports: -%% \tracingtabu=1 \tracingtabu=2 -%% -%% ********************************************************************************************** -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either -%% version 1.3 of this license or (at your option) any later -%% version. The latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% -%% This work consists of the main source file tabu.dtx -%% and the derived files -%% tabu.sty, tabu.pdf, tabu.ins -%% -%% tabu : Flexible LaTeX tabulars -%% lppl copyright 2010-2011 by FC -%% - -\NeedsTeXFormat{LaTeX2e}[2005/12/01] -\ProvidesPackage{tabu_doxygen}[2011/02/26 v2.8 - flexible LaTeX tabulars (FC), frozen version for doxygen] -\RequirePackage{array}[2008/09/09] -\RequirePackage{varwidth}[2009/03/30] -\AtEndOfPackage{\tabu@AtEnd \let\tabu@AtEnd \@undefined} -\let\tabu@AtEnd\@empty -\def\TMP@EnsureCode#1={% - \edef\tabu@AtEnd{\tabu@AtEnd - \catcode#1 \the\catcode#1}% - \catcode#1=% -}% \TMP@EnsureCode -\TMP@EnsureCode 33 = 12 % ! -\TMP@EnsureCode 58 = 12 % : (for siunitx) -\TMP@EnsureCode124 = 12 % | -\TMP@EnsureCode 36 = 3 % $ = math shift -\TMP@EnsureCode 38 = 4 % & = tab alignment character -\TMP@EnsureCode 32 = 10 % space -\TMP@EnsureCode 94 = 7 % ^ -\TMP@EnsureCode 95 = 8 % _ -%% Constants -------------------------------------------------------- -\newcount \c@taburow \def\thetaburow {\number\c@taburow} -\newcount \tabu@nbcols -\newcount \tabu@cnt -\newcount \tabu@Xcol -\let\tabu@start \@tempcnta -\let\tabu@stop \@tempcntb -\newcount \tabu@alloc \tabu@alloc=\m@ne -\newcount \tabu@nested -\def\tabu@alloc@{\global\advance\tabu@alloc \@ne \tabu@nested\tabu@alloc} -\newdimen \tabu@target -\newdimen \tabu@spreadtarget -\newdimen \tabu@naturalX -\newdimen \tabucolX -\let\tabu@DELTA \@tempdimc -\let\tabu@thick \@tempdima -\let\tabu@on \@tempdimb -\let\tabu@off \@tempdimc -\newdimen \tabu@Xsum -\newdimen \extrarowdepth -\newdimen \abovetabulinesep -\newdimen \belowtabulinesep -\newdimen \tabustrutrule \tabustrutrule \z@ -\newtoks \tabu@thebody -\newtoks \tabu@footnotes -\newsavebox \tabu@box -\newsavebox \tabu@arstrutbox -\newsavebox \tabu@hleads -\newsavebox \tabu@vleads -\newif \iftabu@colortbl -\newif \iftabu@siunitx -\newif \iftabu@measuring -\newif \iftabu@spread -\newif \iftabu@negcoef -\newif \iftabu@everyrow -\def\tabu@everyrowtrue {\global\let\iftabu@everyrow \iftrue} -\def\tabu@everyrowfalse{\global\let\iftabu@everyrow \iffalse} -\newif \iftabu@long -\newif \iftabuscantokens -\def\tabu@rescan {\tabu@verbatim \scantokens } -%% Utilities (for internal usage) ----------------------------------- -\def\tabu@gobblespace #1 {#1} -\def\tabu@gobbletoken #1#2{#1} -\def\tabu@gobbleX{\futurelet\@let@token \tabu@gobblex} -\def\tabu@gobblex{\if ^^J\noexpand\@let@token \expandafter\@gobble - \else\ifx \@sptoken\@let@token - \expandafter\tabu@gobblespace\expandafter\tabu@gobbleX - \fi\fi -}% \tabu@gobblex -\def\tabu@X{^^J} -{\obeyspaces -\global\let\tabu@spxiii= % saves an active space (for \ifx) -\gdef\tabu@@spxiii{ }} -\def\tabu@ifenvir {% only for \multicolumn - \expandafter\tabu@if@nvir\csname\@currenvir\endcsname -}% \tabu@ifenvir -\def\tabu@if@nvir #1{\csname @\ifx\tabu#1first\else - \ifx\longtabu#1first\else - second\fi\fi oftwo\endcsname -}% \tabu@ifenvir -\def\tabu@modulo #1#2{\numexpr\ifnum\numexpr#1=\z@ 0\else #1-(#1-(#2-1)/2)/(#2)*(#2)\fi} -{\catcode`\&=3 -\gdef\tabu@strtrim #1{% #1 = control sequence to trim - \ifodd 1\ifx #1\@empty \else \ifx #1\space \else 0\fi \fi - \let\tabu@c@l@r \@empty \let#1\@empty - \else \expandafter \tabu@trimspaces #1\@nnil - \fi -}% \tabu@strtrim -\gdef\tabu@trimspaces #1\@nnil{\let\tabu@c@l@r=#2\tabu@firstspace .#1& }% -\gdef\tabu@firstspace #1#2#3 &{\tabu@lastspace #2#3&} -\gdef\tabu@lastspace #1{\def #3{#1}% - \ifx #3\tabu@c@l@r \def\tabu@c@l@r{\protect\color{#1}}\expandafter\remove@to@nnil \fi - \tabu@trimspaces #1\@nnil} -}% \catcode -\def\tabu@sanitizearg #1#2{{% - \csname \ifcsname if@safe@actives\endcsname % - @safe@activestrue\else - relax\fi \endcsname - \edef#2{#1}\tabu@strtrim#2\@onelevel@sanitize#2% - \expandafter}\expandafter\def\expandafter#2\expandafter{#2}% -}% \tabu@sanitizearg -\def\tabu@textbar #1{\begingroup \endlinechar\m@ne \scantokens{\def\:{|}}% - \expandafter\endgroup \expandafter#1\:% !!! semi simple group !!! -}% \tabu@textbar -\def\tabu@everyrow@bgroup{\iftabu@everyrow \begingroup \else \noalign{\ifnum0=`}\fi \fi} -\def\tabu@everyrow@egroup{% - \iftabu@everyrow \expandafter \endgroup \the\toks@ - \else \ifnum0=`{\fi}% - \fi -}% \tabu@everyrow@egroup -\def\tabu@arstrut {\global\setbox\@arstrutbox \hbox{\vrule - height \arraystretch \dimexpr\ht\strutbox+\extrarowheight - depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth - width \z@}% -}% \tabu@arstrut -\def\tabu@rearstrut {% - \@tempdima \arraystretch\dimexpr\ht\strutbox+\extrarowheight \relax - \@tempdimb \arraystretch\dimexpr\dp\strutbox+\extrarowdepth \relax - \ifodd 1\ifdim \ht\@arstrutbox=\@tempdima - \ifdim \dp\@arstrutbox=\@tempdimb 0 \fi\fi - \tabu@mkarstrut - \fi -}% \tabu@rearstrut -\def\tabu@@DBG #1{\ifdim\tabustrutrule>\z@ \color{#1}\fi} -\def\tabu@DBG@arstrut {\global\setbox\@arstrutbox - \hbox to\z@{\hbox to\z@{\hss - {\tabu@DBG{cyan}\vrule - height \arraystretch \dimexpr\ht\strutbox+\extrarowheight - depth \z@ - width \tabustrutrule}\kern-\tabustrutrule - {\tabu@DBG{pink}\vrule - height \z@ - depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth - width \tabustrutrule}}}% -}% \tabu@DBG@arstrut -\def\tabu@save@decl{\toks\count@ \expandafter{\the\toks\expandafter\count@ - \@nextchar}}% -\def\tabu@savedecl{\ifcat$\d@llarend\else - \let\save@decl \tabu@save@decl \fi % no inversion of tokens in text mode -}% \tabu@savedecl -\def\tabu@finalstrut #1{\unskip\ifhmode\nobreak\fi\vrule height\z@ depth\z@ width\z@} -\newcommand*\tabuDisableCommands {\g@addto@macro\tabu@trialh@@k } -\let\tabu@trialh@@k \@empty -\def\tabu@nowrite #1#{{\afterassignment}\toks@} -\let\tabu@write\write -\let\tabu@immediate\immediate -\def\tabu@WRITE{\begingroup - \def\immediate\write{\aftergroup\endgroup - \tabu@immediate\tabu@write}% -}% \tabu@WRITE -\expandafter\def\expandafter\tabu@GenericError\expandafter{% - \expandafter\tabu@WRITE\GenericError} -\def\tabu@warn{\tabu@WRITE\PackageWarning{tabu}} -\def\tabu@noxfootnote [#1]{\@gobble} -\def\tabu@nocolor #1#{\@gobble} -\newcommand*\tabu@norowcolor[2][]{} -\def\tabu@maybesiunitx #1{\def\tabu@temp{#1}% - \futurelet\@let@token \tabu@m@ybesiunitx} -\def\tabu@m@ybesiunitx #1{\def\tabu@m@ybesiunitx {% - \ifx #1\@let@token \let\tabu@cellleft \@empty \let\tabu@cellright \@empty \fi - \tabu@temp}% \tabu@m@ybesiunitx -}\expandafter\tabu@m@ybesiunitx \csname siunitx_table_collect_begin:Nn\endcsname -\def\tabu@celllalign@def #1{\def\tabu@celllalign{\tabu@maybesiunitx{#1}}}% -%% Fixed vertical spacing adjustment: \extrarowsep ------------------ -\newcommand*\extrarowsep{\edef\tabu@C@extra{\the\numexpr\tabu@C@extra+1}% - \iftabu@everyrow \aftergroup\tabu@Gextra - \else \aftergroup\tabu@n@Gextra - \fi - \@ifnextchar={\tabu@gobbletoken\tabu@extra} \tabu@extra -}% \extrarowsep -\def\tabu@extra {\@ifnextchar_% - {\tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}} - {\ifx ^\@let@token \def\tabu@temp{% - \tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}}% - \else \let\tabu@temp \@empty - \afterassignment \tabu@setextrasep \extrarowdepth - \fi \tabu@temp}% -}% \tabu@extra -\def\tabu@setextra #1#2{\def\tabu@temp{\tabu@extr@#1#2}\afterassignment\tabu@temp#2} -\def\tabu@extr@ #1#2{\@ifnextchar^% - {\tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}} - {\ifx _\@let@token \def\tabu@temp{% - \tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}}% - \else \let\tabu@temp \@empty - \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth - \fi \tabu@temp}% -}% \tabu@extr@ -\def\tabu@setextrasep {\extrarowheight=\extrarowdepth - \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth -}% \tabu@setextrasep -\def\tabu@Gextra{\ifx \tabu@G@extra\@empty \else {\tabu@Rextra}\fi} -\def\tabu@n@Gextra{\ifx \tabu@G@extra\@empty \else \noalign{\tabu@Rextra}\fi} -\def\tabu@Rextra{\tabu@Grestore \tabu@G@extra \tabu@C@extra} -\let\tabu@C@extra \z@ -\let\tabu@G@extra \@empty -%% Dynamic vertical spacing adjustment: \tabulinesep ---------------- -\newcommand*\tabulinesep{\edef\tabu@C@linesep{\the\numexpr\tabu@C@linesep+1}% - \iftabu@everyrow \aftergroup\tabu@Glinesep - \else \aftergroup\tabu@n@Glinesep - \fi - \@ifnextchar={\tabu@gobbletoken\tabu@linesep} \tabu@linesep -}% \tabulinesep -\def\tabu@linesep {\@ifnextchar_% - {\tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}} - {\ifx ^\@let@token \def\tabu@temp{% - \tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}}% - \else \let\tabu@temp \@empty - \afterassignment \tabu@setlinesep \abovetabulinesep - \fi \tabu@temp}% -}% \tabu@linesep -\def\tabu@setsep #1#2{\def\tabu@temp{\tabu@sets@p#1#2}\afterassignment\tabu@temp#2} -\def\tabu@sets@p #1#2{\@ifnextchar^% - {\tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}} - {\ifx _\@let@token \def\tabu@temp{% - \tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}}% - \else \let\tabu@temp \@empty - \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep - \fi \tabu@temp}% -}% \tabu@sets@p -\def\tabu@setlinesep {\belowtabulinesep=\abovetabulinesep - \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep -}% \tabu@setlinesep -\def\tabu@Glinesep{\ifx \tabu@G@linesep\@empty \else {\tabu@Rlinesep}\fi} -\def\tabu@n@Glinesep{\ifx \tabu@G@linesep\@empty \else \noalign{\tabu@Rlinesep}\fi} -\def\tabu@Rlinesep{\tabu@Grestore \tabu@G@linesep \tabu@C@linesep} -\let\tabu@C@linesep \z@ -\let\tabu@G@linesep \@empty -%% \global\extrarowsep and \global\tabulinesep ------------------- -\def\tabu@Gsave #1#2#3#4{\xdef#1{#1% - \toks#2{\toks\the\currentgrouplevel{\global#3\the#3\global#4\the#4}}}% -}% \tabu@Gsave -\def\tabu@Grestore#1#2{% - \toks#2{}#1\toks\currentgrouplevel\expandafter{\expandafter}\the\toks#2\relax - \ifcat$\the\toks\currentgrouplevel$\else - \global\let#1\@empty \global\let#2\z@ - \the\toks\currentgrouplevel - \fi -}% \tabu@Grestore -%% Setting code for every row --------------------------------------- -\newcommand*\everyrow{\tabu@everyrow@bgroup - \tabu@start \z@ \tabu@stop \z@ \tabu@evrstartstop -}% \everyrow -\def\tabu@evrstartstop {\@ifnextchar^% - {\afterassignment \tabu@evrstartstop \tabu@stop=}% - {\ifx ^\@let@token - \afterassignment\tabu@evrstartstop \tabu@start=% - \else \afterassignment\tabu@everyr@w \toks@ - \fi}% -}% \tabu@evrstartstop -\def\tabu@everyr@w {% - \xdef\tabu@everyrow{% - \noexpand\tabu@everyrowfalse - \let\noalign \relax - \noexpand\tabu@rowfontreset - \iftabu@colortbl \noexpand\tabu@rc@ \fi % \taburowcolors - \let\noexpand\tabu@docline \noexpand\tabu@docline@evr - \the\toks@ - \noexpand\tabu@evrh@@k - \noexpand\tabu@rearstrut - \global\advance\c@taburow \@ne}% - \iftabu@everyrow \toks@\expandafter - {\expandafter\def\expandafter\tabu@evr@L\expandafter{\the\toks@}\ignorespaces}% - \else \xdef\tabu@evr@G{\the\toks@}% - \fi - \tabu@everyrow@egroup -}% \tabu@everyr@w -\def\tabu@evr {\def\tabu@evrh@@k} % for internal use only -\tabu@evr{} -%% line style and leaders ------------------------------------------- -\newcommand*\newtabulinestyle [1]{% - {\@for \@tempa :=#1\do{\expandafter\tabu@newlinestyle \@tempa==\@nil}}% -}% \newtabulinestyle -\def\tabu@newlinestyle #1=#2=#3\@nil{\tabu@getline {#2}% - \tabu@sanitizearg {#1}\@tempa - \ifodd 1\ifx \@tempa\@empty \ifdefined\tabu@linestyle@ 0 \fi\fi - \global\expandafter\let - \csname tabu@linestyle@\@tempa \endcsname =\tabu@thestyle \fi -}% \tabu@newlinestyle -\newcommand*\tabulinestyle [1]{\tabu@everyrow@bgroup \tabu@getline{#1}% - \iftabu@everyrow - \toks@\expandafter{\expandafter \def \expandafter - \tabu@ls@L\expandafter{\tabu@thestyle}\ignorespaces}% - \gdef\tabu@ls@{\tabu@ls@L}% - \else - \global\let\tabu@ls@G \tabu@thestyle - \gdef\tabu@ls@{\tabu@ls@G}% - \fi - \tabu@everyrow@egroup -}% \tabulinestyle -\newcommand*\taburulecolor{\tabu@everyrow@bgroup \tabu@textbar \tabu@rulecolor} -\def\tabu@rulecolor #1{\toks@{}% - \def\tabu@temp #1##1#1{\tabu@ruledrsc{##1}}\@ifnextchar #1% - \tabu@temp - \tabu@rulearc -}% \tabu@rulecolor -\def\tabu@ruledrsc #1{\edef\tabu@temp{#1}\tabu@strtrim\tabu@temp - \ifx \tabu@temp\@empty \def\tabu@temp{\tabu@rule@drsc@ {}{}}% - \else \edef\tabu@temp{\noexpand\tabu@rule@drsc@ {}{\tabu@temp}}% - \fi - \tabu@temp -}% \tabu@ruledrsc@ -\def\tabu@ruledrsc@ #1#{\tabu@rule@drsc@ {#1}} -\def\tabu@rule@drsc@ #1#2{% - \iftabu@everyrow - \ifx \\#1#2\\\toks@{\let\CT@drsc@ \relax}% - \else \toks@{\def\CT@drsc@{\color #1{#2}}}% - \fi - \else - \ifx \\#1#2\\\global\let\CT@drsc@ \relax - \else \gdef\CT@drsc@{\color #1{#2}}% - \fi - \fi - \tabu@rulearc -}% \tabu@rule@drsc@ -\def\tabu@rulearc #1#{\tabu@rule@arc@ {#1}} -\def\tabu@rule@arc@ #1#2{% - \iftabu@everyrow - \ifx \\#1#2\\\toks@\expandafter{\the\toks@ \def\CT@arc@{}}% - \else \toks@\expandafter{\the\toks@ \def\CT@arc@{\color #1{#2}}}% - \fi - \toks@\expandafter{\the\toks@ - \let\tabu@arc@L \CT@arc@ - \let\tabu@drsc@L \CT@drsc@ - \ignorespaces}% - \else - \ifx \\#1#2\\\gdef\CT@arc@{}% - \else \gdef\CT@arc@{\color #1{#2}}% - \fi - \global\let\tabu@arc@G \CT@arc@ - \global\let\tabu@drsc@G \CT@drsc@ - \fi - \tabu@everyrow@egroup -}% \tabu@rule@arc@ -\def\taburowcolors {\tabu@everyrow@bgroup \@testopt \tabu@rowcolors 1} -\def\tabu@rowcolors [#1]#2#{\tabu@rowc@lors{#1}{#2}} -\def\tabu@rowc@lors #1#2#3{% - \toks@{}\@defaultunits \count@ =\number0#2\relax \@nnil - \@defaultunits \tabu@start =\number0#1\relax \@nnil - \ifnum \count@<\tw@ \count@=\tw@ \fi - \advance\tabu@start \m@ne - \ifnum \tabu@start<\z@ \tabu@start \z@ \fi - \tabu@rowcolorseries #3\in@..\in@ \@nnil -}% \tabu@rowcolors -\def\tabu@rowcolorseries #1..#2\in@ #3\@nnil {% - \ifx \in@#1\relax - \iftabu@everyrow \toks@{\def\tabu@rc@{}\let\tabu@rc@L \tabu@rc@}% - \else \gdef\tabu@rc@{}\global\let\tabu@rc@G \tabu@rc@ - \fi - \else - \ifx \\#2\\\tabu@rowcolorserieserror \fi - \tabu@sanitizearg{#1}\tabu@temp - \tabu@sanitizearg{#2}\@tempa - \advance\count@ \m@ne - \iftabu@everyrow - \def\tabu@rc@ ##1##2##3##4{\def\tabu@rc@{% - \ifnum ##2=\c@taburow - \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{##3}{##4}\fi - \ifnum \c@taburow<##2 \else - \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\z@ - \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi - \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% - \rowcolor{tabu@rc@\the\tabu@nested}\fi}% - }\edef\x{\noexpand\tabu@rc@ {\the\count@} - {\the\tabu@start} - {\tabu@temp} - {\@tempa}% - }\x - \toks@\expandafter{\expandafter\def\expandafter\tabu@rc@\expandafter{\tabu@rc@}}% - \toks@\expandafter{\the\toks@ \let\tabu@rc@L \tabu@rc@ \ignorespaces}% - \else % inside \noalign - \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{\tabu@temp}{\@tempa}% - \expandafter\resetcolorseries\expandafter[\the\count@]{tabu@rcseries@\the\tabu@nested}% - \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% - \let\noalign \relax \rowcolor{tabu@rc@\the\tabu@nested}% - \def\tabu@rc@ ##1##2{\gdef\tabu@rc@{% - \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\@ne - \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi - \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% - \rowcolor{tabu@rc@\the\tabu@nested}}% - }\edef\x{\noexpand\tabu@rc@{\the\count@}{\the\c@taburow}}\x - \global\let\tabu@rc@G \tabu@rc@ - \fi - \fi - \tabu@everyrow@egroup -}% \tabu@rowcolorseries -\tabuDisableCommands {\let\tabu@rc@ \@empty } -\def\tabu@rowcolorserieserror {\PackageError{tabu} - {Invalid syntax for \string\taburowcolors - \MessageBreak Please look at the documentation!}\@ehd -}% \tabu@rowcolorserieserror -\newcommand*\tabureset {% - \tabulinesep=\z@ \extrarowsep=\z@ \extratabsurround=\z@ - \tabulinestyle{}\everyrow{}\taburulecolor||{}\taburowcolors{}% -}% \tabureset -%% Parsing the line styles ------------------------------------------ -\def\tabu@getline #1{\begingroup - \csname \ifcsname if@safe@actives\endcsname % - @safe@activestrue\else - relax\fi \endcsname - \edef\tabu@temp{#1}\tabu@sanitizearg{#1}\@tempa - \let\tabu@thestyle \relax - \ifcsname tabu@linestyle@\@tempa \endcsname - \edef\tabu@thestyle{\endgroup - \def\tabu@thestyle{\expandafter\noexpand - \csname tabu@linestyle@\@tempa\endcsname}% - }\tabu@thestyle - \else \expandafter\tabu@definestyle \tabu@temp \@nil - \fi -}% \tabu@getline -\def\tabu@definestyle #1#2\@nil {\endlinechar \m@ne \makeatletter - \tabu@thick \maxdimen \tabu@on \maxdimen \tabu@off \maxdimen - \let\tabu@c@lon \@undefined \let\tabu@c@loff \@undefined - \ifodd 1\ifcat .#1\else\ifcat\relax #1\else 0\fi\fi % catcode 12 or non expandable cs - \def\tabu@temp{\tabu@getparam{thick}}% - \else \def\tabu@temp{\tabu@getparam{thick}\maxdimen}% - \fi - {% - \let\tabu@ \relax - \def\:{\obeyspaces \tabu@oXIII \tabu@commaXIII \edef\:}% (space active \: happy ;-)) - \scantokens{\:{\tabu@temp #1#2 \tabu@\tabu@}}% - \expandafter}\expandafter - \def\expandafter\:\expandafter{\:}% line spec rewritten now ;-) - \def\;{\def\:}% - \scantokens\expandafter{\expandafter\;\expandafter{\:}}% space is now inactive (catcode 10) - \let\tabu@ \tabu@getcolor \:% all arguments are ready now ;-) - \ifdefined\tabu@c@lon \else \let\tabu@c@lon\@empty \fi - \ifx \tabu@c@lon\@empty \def\tabu@c@lon{\CT@arc@}\fi - \ifdefined\tabu@c@loff \else \let\tabu@c@loff \@empty \fi - \ifdim \tabu@on=\maxdimen \ifdim \tabu@off<\maxdimen - \tabu@on \tabulineon \fi\fi - \ifdim \tabu@off=\maxdimen \ifdim \tabu@on<\maxdimen - \tabu@off \tabulineoff \fi\fi - \ifodd 1\ifdim \tabu@off=\maxdimen \ifdim \tabu@on=\maxdimen 0 \fi\fi - \in@true % - \else \in@false % - \fi - \ifdim\tabu@thick=\maxdimen \def\tabu@thick{\arrayrulewidth}% - \else \edef\tabu@thick{\the\tabu@thick}% - \fi - \edef \tabu@thestyle ##1##2{\endgroup - \def\tabu@thestyle{% - \ifin@ \noexpand\tabu@leadersstyle {\tabu@thick} - {\the\tabu@on}{##1} - {\the\tabu@off}{##2}% - \else \noexpand\tabu@rulesstyle - {##1\vrule width \tabu@thick}% - {##1\leaders \hrule height \tabu@thick \hfil}% - \fi}% - }\expandafter \expandafter - \expandafter \tabu@thestyle \expandafter - \expandafter \expandafter - {\expandafter\tabu@c@lon\expandafter}\expandafter{\tabu@c@loff}% -}% \tabu@definestyle -{\catcode`\O=\active \lccode`\O=`\o \catcode`\,=\active - \lowercase{\gdef\tabu@oXIII {\catcode`\o=\active \let O=\tabu@oxiii}} - \gdef\tabu@commaXIII {\catcode`\,=\active \let ,=\space} -}% \catcode -\def\tabu@oxiii #1{% - \ifcase \ifx n#1\z@ \else - \ifx f#1\@ne\else - \tw@ \fi\fi - \expandafter\tabu@onxiii - \or \expandafter\tabu@ofxiii - \else o% - \fi#1}% -\def\tabu@onxiii #1#2{% - \ifcase \ifx !#2\tw@ \else - \ifcat.\noexpand#2\z@ \else - \ifx \tabu@spxiii#2\@ne\else - \tw@ \fi\fi\fi - \tabu@getparam{on}#2\expandafter\@gobble - \or \expandafter\tabu@onxiii % (space is active) - \else o\expandafter\@firstofone - \fi{#1#2}}% -\def\tabu@ofxiii #1#2{% - \ifx #2f\expandafter\tabu@offxiii - \else o\expandafter\@firstofone - \fi{#1#2}} -\def\tabu@offxiii #1#2{% - \ifcase \ifx !#2\tw@ \else - \ifcat.\noexpand#2\z@ \else - \ifx\tabu@spxiii#2\@ne \else - \tw@ \fi\fi\fi - \tabu@getparam{off}#2\expandafter\@gobble - \or \expandafter\tabu@offxiii % (space is active) - \else o\expandafter\@firstofone - \fi{#1#2}} -\def\tabu@getparam #1{\tabu@ \csname tabu@#1\endcsname=} -\def\tabu@getcolor #1{% \tabu@ <- \tabu@getcolor after \edef - \ifx \tabu@#1\else % no more spec - \let\tabu@theparam=#1\afterassignment \tabu@getc@l@r #1\fi -}% \tabu@getcolor -\def\tabu@getc@l@r #1\tabu@ {% - \def\tabu@temp{#1}\tabu@strtrim \tabu@temp - \ifx \tabu@temp\@empty - \else%\ifcsname \string\color@\tabu@temp \endcsname % if the color exists - \ifx \tabu@theparam \tabu@off \let\tabu@c@loff \tabu@c@l@r - \else \let\tabu@c@lon \tabu@c@l@r - \fi - %\else \tabu@warncolour{\tabu@temp}% - \fi%\fi - \tabu@ % next spec -}% \tabu@getc@l@r -\def\tabu@warncolour #1{\PackageWarning{tabu} - {Color #1 is not defined. Default color used}% -}% \tabu@warncolour -\def\tabu@leadersstyle #1#2#3#4#5{\def\tabu@leaders{{#1}{#2}{#3}{#4}{#5}}% - \ifx \tabu@leaders\tabu@leaders@G \else - \tabu@LEADERS{#1}{#2}{#3}{#4}{#5}\fi -}% \tabu@leadersstyle -\def\tabu@rulesstyle #1#2{\let\tabu@leaders \@undefined - \gdef\tabu@thevrule{#1}\gdef\tabu@thehrule{#2}% -}% \tabu@rulesstyle -%% The leaders boxes ------------------------------------------------ -\def\tabu@LEADERS #1#2#3#4#5{%% width, dash, dash color, gap, gap color - {\let\color \tabu@color % => during trials -> \color = \tabu@nocolor - {% % but the leaders boxes should have colors ! - \def\@therule{\vrule}\def\@thick{height}\def\@length{width}% - \def\@box{\hbox}\def\@unbox{\unhbox}\def\@elt{\wd}% - \def\@skip{\hskip}\def\@ss{\hss}\def\tabu@leads{\tabu@hleads}% - \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% - \global\let\tabu@thehleaders \tabu@theleaders - }% - {% - \def\@therule{\hrule}\def\@thick{width}\def\@length{height}% - \def\@box{\vbox}\def\@unbox{\unvbox}\def\@elt{\ht}% - \def\@skip{\vskip}\def\@ss{\vss}\def\tabu@leads{\tabu@vleads}% - \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% - \global\let\tabu@thevleaders \tabu@theleaders - }% - \gdef\tabu@leaders@G{{#1}{#2}{#3}{#4}{#5}}% - }% -}% \tabu@LEADERS -\def\tabu@therule #1#2{\@therule \@thick#1\@length\dimexpr#2/2 \@depth\z@} -\def\tabu@l@@d@rs #1#2#3#4#5{%% width, dash, dash color, gap, gap color - \global\setbox \tabu@leads=\@box{% - {#3\tabu@therule{#1}{#2}}% - \ifx\\#5\\\@skip#4\else{#5\tabu@therule{#1}{#4*2}}\fi - {#3\tabu@therule{#1}{#2}}}% - \global\setbox\tabu@leads=\@box to\@elt\tabu@leads{\@ss - {#3\tabu@therule{#1}{#2}}\@unbox\tabu@leads}% - \edef\tabu@theleaders ##1{\def\noexpand\tabu@theleaders {% - {##1\tabu@therule{#1}{#2}}% - \xleaders \copy\tabu@leads \@ss - \tabu@therule{0pt}{-#2}{##1\tabu@therule{#1}{#2}}}% - }\tabu@theleaders{#3}% -}% \tabu@l@@d@rs -%% \tabu \endtabu \tabu* \longtabu \endlongtabu \longtabu* ---------- -\newcommand*\tabu {\tabu@longfalse - \ifmmode \def\tabu@ {\array}\def\endtabu {\endarray}% - \else \def\tabu@ {\tabu@tabular}\def\endtabu {\endtabular}\fi - \expandafter\let\csname tabu*\endcsname \tabu - \expandafter\def\csname endtabu*\endcsname{\endtabu}% - \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget -}% {tabu} -\let\tabu@tabular \tabular % -\expandafter\def\csname tabu*\endcsname{\tabuscantokenstrue \tabu} -\newcommand*\longtabu {\tabu@longtrue - \ifmmode\PackageError{tabu}{longtabu not allowed in math mode}\fi - \def\tabu@{\longtable}\def\endlongtabu{\endlongtable}% - \LTchunksize=\@M - \expandafter\let\csname tabu*\endcsname \tabu - \expandafter\def\csname endlongtabu*\endcsname{\endlongtabu}% - \let\LT@startpbox \tabu@LT@startpbox % \everypar{ array struts } - \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget -}% {longtabu} -\expandafter\def\csname longtabu*\endcsname{\tabuscantokenstrue \longtabu} -\def\tabu@nolongtabu{\PackageError{tabu} - {longtabu requires the longtable package}\@ehd} -%% Read the target and then : \tabular or \@array ------------------ -\def\tabu@settarget {\futurelet\@let@token \tabu@sett@rget } -\def\tabu@sett@rget {\tabu@target \z@ - \ifcase \ifx \bgroup\@let@token \z@ \else - \ifx \@sptoken\@let@token \@ne \else - \if t\@let@token \tw@ \else - \if s\@let@token \thr@@\else - \z@\fi\fi\fi\fi - \expandafter\tabu@begin - \or \expandafter\tabu@gobblespace\expandafter\tabu@settarget - \or \expandafter\tabu@to - \or \expandafter\tabu@spread - \fi -}% \tabu@sett@rget -\def\tabu@to to{\def\tabu@halignto{to}\tabu@gettarget} -\def\tabu@spread spread{\tabu@spreadtrue\def\tabu@halignto{spread}\tabu@gettarget} -\def\tabu@gettarget {\afterassignment\tabu@linegoaltarget \tabu@target } -\def\tabu@linegoaltarget {\futurelet\tabu@temp \tabu@linegoalt@rget } -\def\tabu@linegoalt@rget {% - \ifx \tabu@temp\LNGL@setlinegoal - \LNGL@setlinegoal \expandafter \@firstoftwo \fi % @gobbles \LNGL@setlinegoal - \tabu@begin -}% \tabu@linegoalt@rget -\def\tabu@begin #1#{% - \iftabu@measuring \expandafter\tabu@nestedmeasure \fi - \ifdim \tabu@target=\z@ \let\tabu@halignto \@empty - \else \edef\tabu@halignto{\tabu@halignto\the\tabu@target}% - \fi - \@testopt \tabu@tabu@ \tabu@aligndefault #1\@nil -}% \tabu@begin -\long\def\tabu@tabu@ [#1]#2\@nil #3{\tabu@setup - \def\tabu@align {#1}\def\tabu@savedpream{\NC@find #3}% - \tabu@ [\tabu@align ]#2{#3\tabu@rewritefirst }% -}% \tabu@tabu@ -\def\tabu@nestedmeasure {% - \ifodd 1\iftabu@spread \else \ifdim\tabu@target=\z@ \else 0 \fi\fi\relax - \tabu@spreadtrue - \else \begingroup \iffalse{\fi \ifnum0=`}\fi - \toks@{}\def\tabu@stack{b}% - \expandafter\tabu@collectbody\expandafter\tabu@quickrule - \expandafter\endgroup - \fi -}% \tabu@nestedmeasure -\def\tabu@quickrule {\indent\vrule height\z@ depth\z@ width\tabu@target} -%% \tabu@setup \tabu@init \tabu@indent -\def\tabu@setup{\tabu@alloc@ - \ifcase \tabu@nested - \ifmmode \else \iftabu@spread\else \ifdim\tabu@target=\z@ - \let\tabu@afterendpar \par - \fi\fi\fi - \def\tabu@aligndefault{c}\tabu@init \tabu@indent - \else % - \def\tabu@aligndefault{t}\let\tabudefaulttarget \linewidth - \fi - \let\tabu@thetarget \tabudefaulttarget \let\tabu@restored \@undefined - \edef\tabu@NC@list{\the\NC@list}\NC@list{\NC@do \tabu@rewritefirst}% - \everycr{}\let\@startpbox \tabu@startpbox % for nested tabu inside longtabu... - \let\@endpbox \tabu@endpbox % idem " " " " " " - \let\@tabarray \tabu@tabarray % idem " " " " " " - \tabu@setcleanup \tabu@setreset -}% \tabu@setup -\def\tabu@init{\tabu@starttimer \tabu@measuringfalse - \edef\tabu@hfuzz {\the\dimexpr\hfuzz+1sp}\global\tabu@footnotes{}% - \let\firsthline \tabu@firsthline \let\lasthline \tabu@lasthline - \let\firstline \tabu@firstline \let\lastline \tabu@lastline - \let\hline \tabu@hline \let\@xhline \tabu@xhline - \let\color \tabu@color \let\@arstrutbox \tabu@arstrutbox - \iftabu@colortbl\else\let\LT@@hline \tabu@LT@@hline \fi - \tabu@trivlist % - \let\@footnotetext \tabu@footnotetext \let\@xfootnotetext \tabu@xfootnotetext - \let\@xfootnote \tabu@xfootnote \let\centering \tabu@centering - \let\raggedright \tabu@raggedright \let\raggedleft \tabu@raggedleft - \let\tabudecimal \tabu@tabudecimal \let\Centering \tabu@Centering - \let\RaggedRight \tabu@RaggedRight \let\RaggedLeft \tabu@RaggedLeft - \let\justifying \tabu@justifying \let\rowfont \tabu@rowfont - \let\fbox \tabu@fbox \let\color@b@x \tabu@color@b@x - \let\tabu@@everycr \everycr \let\tabu@@everypar \everypar - \let\tabu@prepnext@tokORI \prepnext@tok\let\prepnext@tok \tabu@prepnext@tok - \let\tabu@multicolumnORI\multicolumn \let\multicolumn \tabu@multicolumn - \let\tabu@startpbox \@startpbox % for nested tabu inside longtabu pfff !!! - \let\tabu@endpbox \@endpbox % idem " " " " " " " - \let\tabu@tabarray \@tabarray % idem " " " " " " " - \tabu@adl@fix \let\endarray \tabu@endarray % colortbl & arydshln (delarray) - \iftabu@colortbl\CT@everycr\expandafter{\expandafter\iftabu@everyrow \the\CT@everycr \fi}\fi -}% \tabu@init -\def\tabu@indent{% correction for indentation - \ifdim \parindent>\z@\ifx \linewidth\tabudefaulttarget - \everypar\expandafter{% - \the\everypar\everypar\expandafter{\the\everypar}% - \setbox\z@=\lastbox - \ifdim\wd\z@>\z@ \edef\tabu@thetarget - {\the\dimexpr -\wd\z@+\tabudefaulttarget}\fi - \box\z@}% - \fi\fi -}% \tabu@indent -\def\tabu@setcleanup {% saves last global assignments - \ifodd 1\ifmmode \else \iftabu@long \else 0\fi\fi\relax - \def\tabu@aftergroupcleanup{% - \def\tabu@aftergroupcleanup{\aftergroup\tabu@cleanup}}% - \else - \def\tabu@aftergroupcleanup{% - \aftergroup\aftergroup\aftergroup\tabu@cleanup - \let\tabu@aftergroupcleanup \relax}% - \fi - \let\tabu@arc@Gsave \tabu@arc@G - \let\tabu@arc@G \tabu@arc@L % - \let\tabu@drsc@Gsave \tabu@drsc@G - \let\tabu@drsc@G \tabu@drsc@L % - \let\tabu@ls@Gsave \tabu@ls@G - \let\tabu@ls@G \tabu@ls@L % - \let\tabu@rc@Gsave \tabu@rc@G - \let\tabu@rc@G \tabu@rc@L % - \let\tabu@evr@Gsave \tabu@evr@G - \let\tabu@evr@G \tabu@evr@L % - \let\tabu@celllalign@save \tabu@celllalign - \let\tabu@cellralign@save \tabu@cellralign - \let\tabu@cellleft@save \tabu@cellleft - \let\tabu@cellright@save \tabu@cellright - \let\tabu@@celllalign@save \tabu@@celllalign - \let\tabu@@cellralign@save \tabu@@cellralign - \let\tabu@@cellleft@save \tabu@@cellleft - \let\tabu@@cellright@save \tabu@@cellright - \let\tabu@rowfontreset@save \tabu@rowfontreset - \let\tabu@@rowfontreset@save\tabu@@rowfontreset - \let\tabu@rowfontreset \@empty - \edef\tabu@alloc@save {\the\tabu@alloc}% restore at \tabu@reset - \edef\c@taburow@save {\the\c@taburow}% - \edef\tabu@naturalX@save {\the\tabu@naturalX}% - \let\tabu@naturalXmin@save \tabu@naturalXmin - \let\tabu@naturalXmax@save \tabu@naturalXmax - \let\tabu@mkarstrut@save \tabu@mkarstrut - \edef\tabu@clarstrut{% - \extrarowheight \the\dimexpr \ht\@arstrutbox-\ht\strutbox \relax - \extrarowdepth \the\dimexpr \dp\@arstrutbox-\dp\strutbox \relax - \let\noexpand\@arraystretch \@ne \noexpand\tabu@rearstrut}% -}% \tabu@setcleanup -\def\tabu@cleanup {\begingroup - \globaldefs\@ne \tabu@everyrowtrue - \let\tabu@arc@G \tabu@arc@Gsave - \let\CT@arc@ \tabu@arc@G - \let\tabu@drsc@G \tabu@drsc@Gsave - \let\CT@drsc@ \tabu@drsc@G - \let\tabu@ls@G \tabu@ls@Gsave - \let\tabu@ls@ \tabu@ls@G - \let\tabu@rc@G \tabu@rc@Gsave - \let\tabu@rc@ \tabu@rc@G - \let\CT@do@color \relax - \let\tabu@evr@G \tabu@evr@Gsave - \let\tabu@celllalign \tabu@celllalign@save - \let\tabu@cellralign \tabu@cellralign@save - \let\tabu@cellleft \tabu@cellleft@save - \let\tabu@cellright \tabu@cellright@save - \let\tabu@@celllalign \tabu@@celllalign@save - \let\tabu@@cellralign \tabu@@cellralign@save - \let\tabu@@cellleft \tabu@@cellleft@save - \let\tabu@@cellright \tabu@@cellright@save - \let\tabu@rowfontreset \tabu@rowfontreset@save - \let\tabu@@rowfontreset \tabu@@rowfontreset@save - \tabu@naturalX =\tabu@naturalX@save - \let\tabu@naturalXmax \tabu@naturalXmax@save - \let\tabu@naturalXmin \tabu@naturalXmin@save - \let\tabu@mkarstrut \tabu@mkarstrut@save - \c@taburow =\c@taburow@save - \ifcase \tabu@nested \tabu@alloc \m@ne\fi - \endgroup % - \ifcase \tabu@nested - \the\tabu@footnotes \global\tabu@footnotes{}% - \tabu@afterendpar \tabu@elapsedtime - \fi - \tabu@clarstrut - \everyrow\expandafter {\tabu@evr@G}% -}% \tabu@cleanup -\let\tabu@afterendpar \relax -\def\tabu@setreset {% - \edef\tabu@savedparams {% \relax for \tabu@message@save - \ifmmode \col@sep \the\arraycolsep - \else \col@sep \the\tabcolsep \fi \relax - \arrayrulewidth \the\arrayrulewidth \relax - \doublerulesep \the\doublerulesep \relax - \extratabsurround \the\extratabsurround \relax - \extrarowheight \the\extrarowheight \relax - \extrarowdepth \the\extrarowdepth \relax - \abovetabulinesep \the\abovetabulinesep \relax - \belowtabulinesep \the\belowtabulinesep \relax - \def\noexpand\arraystretch{\arraystretch}% - \ifdefined\minrowclearance \minrowclearance\the\minrowclearance\relax\fi}% - \begingroup - \@temptokena\expandafter{\tabu@savedparams}% => only for \savetabu / \usetabu - \ifx \tabu@arc@L\relax \else \tabu@setsave \tabu@arc@L \fi - \ifx \tabu@drsc@L\relax \else \tabu@setsave \tabu@drsc@L \fi - \tabu@setsave \tabu@ls@L \tabu@setsave \tabu@evr@L - \expandafter \endgroup \expandafter - \def\expandafter\tabu@saved@ \expandafter{\the\@temptokena - \let\tabu@arc@G \tabu@arc@L - \let\tabu@drsc@G \tabu@drsc@L - \let\tabu@ls@G \tabu@ls@L - \let\tabu@rc@G \tabu@rc@L - \let\tabu@evr@G \tabu@evr@L}% - \def\tabu@reset{\tabu@savedparams - \tabu@everyrowtrue \c@taburow \z@ - \let\CT@arc@ \tabu@arc@L - \let\CT@drsc@ \tabu@drsc@L - \let\tabu@ls@ \tabu@ls@L - \let\tabu@rc@ \tabu@rc@L - \global\tabu@alloc \tabu@alloc@save - \everyrow\expandafter{\tabu@evr@L}}% -}% \tabu@reset -\def\tabu@setsave #1{\expandafter\tabu@sets@ve #1\@nil{#1}} -\long\def\tabu@sets@ve #1\@nil #2{\@temptokena\expandafter{\the\@temptokena \def#2{#1}}} -%% The Rewriting Process ------------------------------------------- -\def\tabu@newcolumntype #1{% - \expandafter\tabu@new@columntype - \csname NC@find@\string#1\expandafter\endcsname - \csname NC@rewrite@\string#1\endcsname - {#1}% -}% \tabu@newcolumntype -\def\tabu@new@columntype #1#2#3{% - \def#1##1#3{\NC@{##1}}% - \let#2\relax \newcommand*#2% -}% \tabu@new@columntype -\def\tabu@privatecolumntype #1{% - \expandafter\tabu@private@columntype - \csname NC@find@\string#1\expandafter\endcsname - \csname NC@rewrite@\string#1\expandafter\endcsname - \csname tabu@NC@find@\string#1\expandafter\endcsname - \csname tabu@NC@rewrite@\string#1\endcsname - {#1}% -}% \tabu@privatecolumntype -\def\tabu@private@columntype#1#2#3#4{% - \g@addto@macro\tabu@privatecolumns{\let#1#3\let#2#4}% - \tabu@new@columntype#3#4% -}% \tabu@private@columntype -\let\tabu@privatecolumns \@empty -\newcommand*\tabucolumn [1]{\expandafter \def \expandafter - \tabu@highprioritycolumns\expandafter{\tabu@highprioritycolumns - \NC@do #1}}% -\let\tabu@highprioritycolumns \@empty -%% The | ``column'' : rewriting process -------------------------- -\tabu@privatecolumntype |{\tabu@rewritevline} -\newcommand*\tabu@rewritevline[1][]{\tabu@vlinearg{#1}% - \expandafter \NC@find \tabu@rewritten} -\def\tabu@lines #1{% - \ifx|#1\else \tabu@privatecolumntype #1{\tabu@rewritevline}\fi - \NC@list\expandafter{\the\NC@list \NC@do #1}% -}% \tabu@lines@ -\def\tabu@vlinearg #1{% - \ifx\\#1\\\def\tabu@thestyle {\tabu@ls@}% - \else\tabu@getline {#1}% - \fi - \def\tabu@rewritten ##1{\def\tabu@rewritten{!{##1\tabu@thevline}}% - }\expandafter\tabu@rewritten\expandafter{\tabu@thestyle}% - \expandafter \tabu@keepls \tabu@thestyle \@nil -}% \tabu@vlinearg -\def\tabu@keepls #1\@nil{% - \ifcat $\@cdr #1\@nil $% - \ifx \relax#1\else - \ifx \tabu@ls@#1\else - \let#1\relax - \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer - \tabu@savels\noexpand#1}\fi\fi\fi -}% \tabu@keepls -\def\tabu@thevline {\begingroup - \ifdefined\tabu@leaders - \setbox\@tempboxa=\vtop to\dimexpr - \ht\@arstrutbox+\dp\@arstrutbox{{\tabu@thevleaders}}% - \ht\@tempboxa=\ht\@arstrutbox \dp\@tempboxa=\dp\@arstrutbox - \box\@tempboxa - \else - \tabu@thevrule - \fi \endgroup -}% \tabu@thevline -\def\tabu@savels #1{% - \expandafter\let\csname\string#1\endcsname #1% - \expandafter\def\expandafter\tabu@reset\expandafter{\tabu@reset - \tabu@resetls#1}}% -\def\tabu@resetls #1{\expandafter\let\expandafter#1\csname\string#1\endcsname}% -%% \multicolumn inside tabu environment ----------------------------- -\tabu@newcolumntype \tabu@rewritemulticolumn{% - \aftergroup \tabu@endrewritemulticolumn % after \@mkpream group - \NC@list{\NC@do *}\tabu@textbar \tabu@lines - \tabu@savedecl - \tabu@privatecolumns - \NC@list\expandafter{\the\expandafter\NC@list \tabu@NC@list}% - \let\tabu@savels \relax - \NC@find -}% \tabu@rewritemulticolumn -\def\tabu@endrewritemulticolumn{\gdef\tabu@mkpreambuffer{}\endgroup} -\def\tabu@multicolumn{\tabu@ifenvir \tabu@multic@lumn \tabu@multicolumnORI} -\long\def\tabu@multic@lumn #1#2#3{\multispan{#1}\begingroup - \tabu@everyrowtrue - \NC@list{\NC@do \tabu@rewritemulticolumn}% - \expandafter\@gobbletwo % gobbles \multispan{#1} - \tabu@multicolumnORI{#1}{\tabu@rewritemulticolumn #2}% - {\iftabuscantokens \tabu@rescan \else \expandafter\@firstofone \fi - {#3}}% -}% \tabu@multic@lumn -%% The X column(s): rewriting process ----------------------------- -\tabu@privatecolumntype X[1][]{\begingroup \tabu@siunitx{\endgroup \tabu@rewriteX {#1}}} -\def\tabu@nosiunitx #1{#1{}{}\expandafter \NC@find \tabu@rewritten } -\def\tabu@siunitx #1{\@ifnextchar \bgroup - {\tabu@rewriteX@Ss{#1}} - {\tabu@nosiunitx{#1}}} -\def\tabu@rewriteX@Ss #1#2{\@temptokena{}% - \@defaultunits \let\tabu@temp =#2\relax\@nnil - \ifodd 1\ifx S\tabu@temp \else \ifx s\tabu@temp \else 0 \fi\fi - \def\NC@find{\def\NC@find >####1####2<####3\relax{#1 {####1}{####3}% - }\expandafter\NC@find \the\@temptokena \relax - }\expandafter\NC@rewrite@S \@gobble #2\relax - \else \tabu@siunitxerror - \fi - \expandafter \NC@find \tabu@rewritten -}% \tabu@rewriteX@Ss -\def\tabu@siunitxerror {\PackageError{tabu}{Not a S nor s column ! - \MessageBreak X column can only embed siunitx S or s columns}\@ehd -}% \tabu@siunitxerror -\def\tabu@rewriteX #1#2#3{\tabu@Xarg {#1}{#2}{#3}% - \iftabu@measuring - \else \tabu@measuringtrue % first X column found in the preamble - \let\@halignto \relax \let\tabu@halignto \relax - \iftabu@spread \tabu@spreadtarget \tabu@target \tabu@target \z@ - \else \tabu@spreadtarget \z@ \fi - \ifdim \tabu@target=\z@ - \setlength\tabu@target \tabu@thetarget - \tabu@message{\tabu@message@defaulttarget}% - \else \tabu@message{\tabu@message@target}\fi - \fi -}% \tabu@rewriteX -\def\tabu@rewriteXrestore #1#2#3{\let\@halignto \relax - \def\tabu@rewritten{l}} -\def\tabu@Xarg #1#2#3{% - \advance\tabu@Xcol \@ne \let\tabu@Xlcr \@empty - \let\tabu@Xdisp \@empty \let\tabu@Xmath \@empty - \ifx\\#1\\% - \def\tabu@rewritten{p}\tabucolX \p@ % - \else - \let\tabu@rewritten \@empty \let\tabu@temp \@empty \tabucolX \z@ - \tabu@Xparse {}#1\relax - \fi - \tabu@Xrewritten{#2}{#3}% -}% \tabu@Xarg -\def\tabu@Xparse #1{\futurelet\@let@token \tabu@Xtest} -\expandafter\def\expandafter\tabu@Xparsespace\space{\tabu@Xparse{}} -\def\tabu@Xtest{% - \ifcase \ifx \relax\@let@token \z@ \else - \if ,\@let@token \m@ne\else - \if p\@let@token 1\else - \if m\@let@token 2\else - \if b\@let@token 3\else - \if l\@let@token 4\else - \if c\@let@token 5\else - \if r\@let@token 6\else - \if j\@let@token 7\else - \if L\@let@token 8\else - \if C\@let@token 9\else - \if R\@let@token 10\else - \if J\@let@token 11\else - \ifx \@sptoken\@let@token 12\else - \if .\@let@token 13\else - \if -\@let@token 13\else - \ifcat $\@let@token 14\else - 15\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax - \or \tabu@Xtype {p}% - \or \tabu@Xtype {m}% - \or \tabu@Xtype {b}% - \or \tabu@Xalign \raggedright\relax - \or \tabu@Xalign \centering\relax - \or \tabu@Xalign \raggedleft\relax - \or \tabu@Xalign \tabu@justify\relax - \or \tabu@Xalign \RaggedRight\raggedright - \or \tabu@Xalign \Centering\centering - \or \tabu@Xalign \RaggedLeft\raggedleft - \or \tabu@Xalign \justifying\tabu@justify - \or \expandafter \tabu@Xparsespace - \or \expandafter \tabu@Xcoef - \or \expandafter \tabu@Xm@th - \or \tabu@Xcoef{}% - \else\expandafter \tabu@Xparse - \fi -}% \tabu@Xtest -\def\tabu@Xalign #1#2{% - \ifx \tabu@Xlcr\@empty \else \PackageWarning{tabu} - {Duplicate horizontal alignment specification}\fi - \ifdefined#1\def\tabu@Xlcr{#1}\let#1\relax - \else \def\tabu@Xlcr{#2}\let#2\relax\fi - \expandafter\tabu@Xparse -}% \tabu@Xalign -\def\tabu@Xtype #1{% - \ifx \tabu@rewritten\@empty \else \PackageWarning{tabu} - {Duplicate vertical alignment specification}\fi - \def\tabu@rewritten{#1}\expandafter\tabu@Xparse -}% \tabu@Xtype -\def\tabu@Xcoef#1{\edef\tabu@temp{\tabu@temp#1}% - \afterassignment\tabu@Xc@ef \tabu@cnt\number\if-#10\fi -}% \tabu@Xcoef -\def\tabu@Xc@ef{\advance\tabucolX \tabu@temp\the\tabu@cnt\p@ - \tabu@Xparse{}% -}% \tabu@Xc@ef -\def\tabu@Xm@th #1{\futurelet \@let@token \tabu@Xd@sp} -\def\tabu@Xd@sp{\let\tabu@Xmath=$% - \ifx $\@let@token \def\tabu@Xdisp{\displaystyle}% - \expandafter\tabu@Xparse - \else \expandafter\tabu@Xparse\expandafter{\expandafter}% - \fi -}% \tabu@Xd@sp -\def\tabu@Xrewritten {% - \ifx \tabu@rewritten\@empty \def\tabu@rewritten{p}\fi - \ifdim \tabucolX<\z@ \tabu@negcoeftrue - \else\ifdim \tabucolX=\z@ \tabucolX \p@ - \fi\fi - \edef\tabu@temp{{\the\tabu@Xcol}{\tabu@strippt\tabucolX}}% - \edef\tabu@Xcoefs{\tabu@Xcoefs \tabu@ \tabu@temp}% - \edef\tabu@rewritten ##1##2{\def\noexpand\tabu@rewritten{% - >{\tabu@Xlcr \ifx$\tabu@Xmath$\tabu@Xdisp\fi ##1}% - \tabu@rewritten {\tabu@hsize \tabu@temp}% - <{##2\ifx$\tabu@Xmath$\fi}}% - }\tabu@rewritten -}% \tabu@Xrewritten -\def\tabu@hsize #1#2{% - \ifdim #2\p@<\z@ - \ifdim \tabucolX=\maxdimen \tabu@wd{#1}\else - \ifdim \tabu@wd{#1}<-#2\tabucolX \tabu@wd{#1}\else -#2\tabucolX\fi - \fi - \else #2\tabucolX - \fi -}% \tabu@hsize -%% \usetabu and \preamble: rewriting process --------------------- -\tabu@privatecolumntype \usetabu [1]{% - \ifx\\#1\\\tabu@saveerr{}\else - \@ifundefined{tabu@saved@\string#1} - {\tabu@saveerr{#1}} - {\let\tabu@rewriteX \tabu@rewriteXrestore - \csname tabu@saved@\string#1\expandafter\endcsname\expandafter\@ne}% - \fi -}% \NC@rewrite@\usetabu -\tabu@privatecolumntype \preamble [1]{% - \ifx\\#1\\\tabu@saveerr{}\else - \@ifundefined{tabu@saved@\string#1} - {\tabu@saveerr{#1}} - {\csname tabu@saved@\string#1\expandafter\endcsname\expandafter\z@}% - \fi -}% \NC@rewrite@\preamble -%% Controlling the rewriting process ------------------------------- -\tabu@newcolumntype \tabu@rewritefirst{% - \iftabu@long \aftergroup \tabu@longpream % - \else \aftergroup \tabu@pream - \fi - \let\tabu@ \relax \let\tabu@hsize \relax - \let\tabu@Xcoefs \@empty \let\tabu@savels \relax - \tabu@Xcol \z@ \tabu@cnt \tw@ - \gdef\tabu@mkpreambuffer{\tabu@{}}\tabu@measuringfalse - \global\setbox\@arstrutbox \box\@arstrutbox - \NC@list{\NC@do *}\tabu@textbar \tabu@lines - \NC@list\expandafter{\the\NC@list \NC@do X}% - \iftabu@siunitx % - \NC@list\expandafter{\the\NC@list \NC@do S\NC@do s}\fi - \NC@list\expandafter{\the\expandafter\NC@list \tabu@highprioritycolumns}% - \expandafter\def\expandafter\tabu@NC@list\expandafter{% - \the\expandafter\NC@list \tabu@NC@list}% % * | X S - \NC@list\expandafter{\expandafter \NC@do \expandafter\usetabu - \expandafter \NC@do \expandafter\preamble - \the\NC@list \NC@do \tabu@rewritemiddle - \NC@do \tabu@rewritelast}% - \tabu@savedecl - \tabu@privatecolumns - \edef\tabu@prev{\the\@temptokena}\NC@find \tabu@rewritemiddle -}% NC@rewrite@\tabu@rewritefirst -\tabu@newcolumntype \tabu@rewritemiddle{% - \edef\tabu@temp{\the\@temptokena}\NC@find \tabu@rewritelast -}% \NC@rewrite@\tabu@rewritemiddle -\tabu@newcolumntype \tabu@rewritelast{% - \ifx \tabu@temp\tabu@prev \advance\tabu@cnt \m@ne - \NC@list\expandafter{\tabu@NC@list \NC@do \tabu@rewritemiddle - \NC@do \tabu@rewritelast}% - \else \let\tabu@prev\tabu@temp - \fi - \ifcase \tabu@cnt \expandafter\tabu@endrewrite - \else \expandafter\NC@find \expandafter\tabu@rewritemiddle - \fi -}% \NC@rewrite@\tabu@rewritelast -%% Choosing the strategy -------------------------------------------- -\def\tabu@endrewrite {% - \let\tabu@temp \NC@find - \ifx \@arrayright\relax \let\@arrayright \@empty \fi - \count@=% - \ifx \@finalstrut\tabu@finalstrut \z@ % outer in mode 0 print - \iftabu@measuring - \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer - \tabu@target \csname tabu@\the\tabu@nested.T\endcsname - \tabucolX \csname tabu@\the\tabu@nested.X\endcsname - \edef\@halignto {\ifx\@arrayright\@empty to\tabu@target\fi}}% - \fi - \else\iftabu@measuring 4 % X columns - \xdef\tabu@mkpreambuffer{\tabu@{\tabu@mkpreambuffer - \tabu@target \the\tabu@target - \tabu@spreadtarget \the\tabu@spreadtarget}% - \def\noexpand\tabu@Xcoefs{\tabu@Xcoefs}% - \edef\tabu@halignto{\ifx \@arrayright\@empty to\tabu@target\fi}}% - \let\tabu@Xcoefs \relax - \else\ifcase\tabu@nested \thr@@ % outer, no X - \global\let\tabu@afterendpar \relax - \else \@ne % inner, no X, outer in mode 1 or 2 - \fi - \ifdefined\tabu@usetabu - \else \ifdim\tabu@target=\z@ - \else \let\tabu@temp \tabu@extracolsep - \fi\fi - \fi - \fi - \xdef\tabu@mkpreambuffer{\count@ \the\count@ \tabu@mkpreambuffer}% - \tabu@temp -}% \tabu@endrewrite -\def\tabu@extracolsep{\@defaultunits \expandafter\let - \expandafter\tabu@temp \expandafter=\the\@temptokena \relax\@nnil - \ifx \tabu@temp\@sptoken - \expandafter\tabu@gobblespace \expandafter\tabu@extracolsep - \else - \edef\tabu@temp{\noexpand\NC@find - \if |\noexpand\tabu@temp @% - \else\if !\noexpand\tabu@temp @% - \else !% - \fi\fi - {\noexpand\extracolsep\noexpand\@flushglue}}% - \fi - \tabu@temp -}% \tabu@extrac@lsep -%% Implementing the strategy ---------------------------------------- -\long\def\tabu@pream #1\@preamble {% - \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup - \NC@list\expandafter {\tabu@NC@list}% in case of nesting... - \ifdefined\tabu@usetabu \tabu@usetabu \tabu@target \z@ \fi - \let\tabu@savedpreamble \@preamble - \global\let\tabu@elapsedtime \relax - \tabu@thebody ={#1\tabu@aftergroupcleanup}% - \tabu@thebody =\expandafter{\the\expandafter\tabu@thebody - \@preamble}% - \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) - \tabu@select -}% \tabu@pream -\long\def\tabu@longpream #1\LT@bchunk #2\LT@bchunk{% - \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup - \NC@list\expandafter {\tabu@NC@list}% in case of nesting... - \let\tabu@savedpreamble \@preamble - \global\let\tabu@elapsedtime \relax - \tabu@thebody ={#1\LT@bchunk #2\tabu@aftergroupcleanup \LT@bchunk}% - \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) - \tabu@select -}% \tabu@longpream -\def\tabu@select {% - \ifnum\tabu@nested>\z@ \tabuscantokensfalse \fi - \ifnum \count@=\@ne \iftabu@measuring \count@=\tw@ \fi\fi - \ifcase \count@ - \global\let\tabu@elapsedtime \relax - \tabu@seteverycr - \expandafter \tabuthepreamble % vertical adjustment (inherited from outer) - \or % exit in vertical measure + struts per cell because no X and outer in mode 3 - \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% - \def\tabu@cellralign{\tabu@verticalspacing}% - \tabu@seteverycr - \expandafter \tabuthepreamble - \or % exit without measure because no X and outer in mode 4 - \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty - \tabu@seteverycr - \expandafter \tabuthepreamble - \else % needs trials - \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty - \tabu@savecounters - \expandafter \tabu@setstrategy - \fi -}% \tabu@select -\def\tabu@@ {\gdef\tabu@mkpreambuffer} -%% Protections to set up before trials ------------------------------ -\def\tabu@setstrategy {\begingroup % - \tabu@trialh@@k \tabu@cnt \z@ % number of trials - \hbadness \@M \let\hbadness \@tempcnta - \hfuzz \maxdimen \let\hfuzz \@tempdima - \let\write \tabu@nowrite\let\GenericError \tabu@GenericError - \let\savetabu \@gobble \let\tabudefaulttarget \linewidth - \let\@footnotetext \@gobble \let\@xfootnote \tabu@xfootnote - \let\color \tabu@nocolor\let\rowcolor \tabu@norowcolor - \let\tabu@aftergroupcleanup \relax % only after the last trial - \tabu@mkpreambuffer - \ifnum \count@>\thr@@ \let\@halignto \@empty \tabucolX@init - \def\tabu@lasttry{\m@ne\p@}\fi - \begingroup \iffalse{\fi \ifnum0=`}\fi - \toks@{}\def\tabu@stack{b}\iftabuscantokens \endlinechar=10 \obeyspaces \fi % - \tabu@collectbody \tabu@strategy % -}% \tabu@setstrategy -\def\tabu@savecounters{% - \def\@elt ##1{\csname c@##1\endcsname\the\csname c@##1\endcsname}% - \edef\tabu@clckpt {\begingroup \globaldefs=\@ne \cl@@ckpt \endgroup}\let\@elt \relax -}% \tabu@savecounters -\def\tabucolX@init {% \tabucolX <= \tabu@target / (sum coefs > 0) - \dimen@ \z@ \tabu@Xsum \z@ \tabucolX \z@ \let\tabu@ \tabu@Xinit \tabu@Xcoefs - \ifdim \dimen@>\z@ - \@tempdima \dimexpr \tabu@target *\p@/\dimen@ + \tabu@hfuzz\relax - \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi - \fi -}% \tabucolX@init -\def\tabu@Xinit #1#2{\tabu@Xcol #1 \advance \tabu@Xsum - \ifdim #2\p@>\z@ #2\p@ \advance\dimen@ #2\p@ - \else -#2\p@ \tabu@negcoeftrue - \@tempdima \dimexpr \tabu@target*\p@/\dimexpr-#2\p@\relax \relax - \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi - \tabu@wddef{#1}{0pt}% - \fi -}% \tabu@Xinit -%% Collecting the environment body ---------------------------------- -\long\def\tabu@collectbody #1#2\end #3{% - \edef\tabu@stack{\tabu@pushbegins #2\begin\end\expandafter\@gobble\tabu@stack}% - \ifx \tabu@stack\@empty - \toks@\expandafter{\expandafter\tabu@thebody\expandafter{\the\toks@ #2}% - \def\tabu@end@envir{\end{#3}}% - \iftabuscantokens - \iftabu@long \def\tabu@endenvir {\end{#3}\tabu@gobbleX}% - \else \def\tabu@endenvir {\let\endarray \@empty - \end{#3}\tabu@gobbleX}% - \fi - \else \def\tabu@endenvir {\end{#3}}\fi}% - \let\tabu@collectbody \tabu@endofcollect - \else\def\tabu@temp{#3}% - \ifx \tabu@temp\@empty \toks@\expandafter{\the\toks@ #2\end }% - \else \ifx\tabu@temp\tabu@@spxiii \toks@\expandafter{\the\toks@ #2\end #3}% - \else \ifx\tabu@temp\tabu@X \toks@\expandafter{\the\toks@ #2\end #3}% - \else \toks@\expandafter{\the\toks@ #2\end{#3}}% - \fi\fi\fi - \fi - \tabu@collectbody{#1}% -}% \tabu@collectbody -\long\def\tabu@pushbegins#1\begin#2{\ifx\end#2\else b\expandafter\tabu@pushbegins\fi}% -\def\tabu@endofcollect #1{\ifnum0=`{}\fi - \expandafter\endgroup \the\toks@ #1% -}% \tabu@endofcollect -%% The trials: switching between strategies ------------------------- -\def\tabu@strategy {\relax % stops \count@ assignment ! - \ifcase\count@ % case 0 = print with vertical adjustment (outer is finished) - \expandafter \tabu@endoftrials - \or % case 1 = exit in vertical measure (outer in mode 3) - \expandafter\xdef\csname tabu@\the\tabu@nested.T\endcsname{\the\tabu@target}% - \expandafter\xdef\csname tabu@\the\tabu@nested.X\endcsname{\the\tabucolX}% - \expandafter \tabu@endoftrials - \or % case 2 = exit with a rule replacing the table (outer in mode 4) - \expandafter \tabu@quickend - \or % case 3 = outer is in mode 3 because of no X - \begingroup - \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% - \def\tabu@cellralign{\tabu@verticalspacing}% - \expandafter \tabu@measuring - \else % case 4 = horizontal measure - \begingroup - \global\let\tabu@elapsedtime \tabu@message@etime - \long\def\multicolumn##1##2##3{\multispan{##1}}% - \let\tabu@startpboxORI \@startpbox - \iftabu@spread - \def\tabu@naturalXmax {\z@}% - \let\tabu@naturalXmin \tabu@naturalXmax - \tabu@evr{\global\tabu@naturalX \z@}% - \let\@startpbox \tabu@startpboxmeasure - \else\iftabu@negcoef - \let\@startpbox \tabu@startpboxmeasure - \else \let\@startpbox \tabu@startpboxquick - \fi\fi - \expandafter \tabu@measuring - \fi -}% \tabu@strategy -\def\tabu@measuring{\expandafter \tabu@trial \expandafter - \count@ \the\count@ \tabu@endtrial -}% \tabu@measuring -\def\tabu@trial{\iftabu@long \tabu@longtrial \else \tabu@shorttrial \fi} -\def\tabu@shorttrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr - \ifx \tabu@savecounters\relax \else - \let\tabu@savecounters \relax \tabu@clckpt \fi - $\iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi - \expandafter{\expandafter \tabuthepreamble - \the\tabu@thebody - \csname tabu@adl@endtrial\endcsname - \endarray}$\egroup % got \tabu@box -}% \tabu@shorttrial -\def\tabu@longtrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr - \ifx \tabu@savecounters\relax \else - \let\tabu@savecounters \relax \tabu@clckpt \fi - \iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi - \expandafter{\expandafter \tabuthepreamble - \the\tabu@thebody - \tabuendlongtrial}\egroup % got \tabu@box -}% \tabu@longtrial -\def\tabuendlongtrial{% no @ allowed for \scantokens - \LT@echunk \global\setbox\@ne \hbox{\unhbox\@ne}\kern\wd\@ne - \LT@get@widths -}% \tabuendlongtrial -\def\tabu@adl@endtrial{% - \crcr \noalign{\global\adl@ncol \tabu@nbcols}}% anything global is crap, junky and fails ! -\def\tabu@seteverycr {\tabu@reset - \everycr \expandafter{\the\everycr \tabu@everycr}% - \let\everycr \tabu@noeverycr % -}% \tabu@seteverycr -\def\tabu@noeverycr{{\aftergroup\tabu@restoreeverycr \afterassignment}\toks@} -\def\tabu@restoreeverycr {\let\everycr \tabu@@everycr} -\def\tabu@everycr {\iftabu@everyrow \noalign{\tabu@everyrow}\fi} -\def\tabu@endoftrials {% - \iftabuscantokens \expandafter\@firstoftwo - \else \expandafter\@secondoftwo - \fi - {\expandafter \tabu@closetrialsgroup \expandafter - \tabu@rescan \expandafter{% - \expandafter\tabuthepreamble - \the\expandafter\tabu@thebody - \iftabu@long \else \endarray \fi}} - {\expandafter\tabu@closetrialsgroup \expandafter - \tabuthepreamble - \the\tabu@thebody}% - \tabu@endenvir % Finish ! -}% \tabu@endoftrials -\def\tabu@closetrialsgroup {% - \toks@\expandafter{\tabu@endenvir}% - \edef\tabu@bufferX{\endgroup - \tabucolX \the\tabucolX - \tabu@target \the\tabu@target - \tabu@cnt \the\tabu@cnt - \def\noexpand\tabu@endenvir{\the\toks@}% - %Quid de \@halignto = \tabu@halignto ?? - }% \tabu@bufferX - \tabu@bufferX - \ifcase\tabu@nested % print out (outer in mode 0) - \global\tabu@cnt \tabu@cnt - \tabu@evr{\tabu@verticaldynamicadjustment}% - \tabu@celllalign@def{\everypar{}}\let\tabu@cellralign \@empty - \let\@finalstrut \tabu@finalstrut - \else % vertical measure of nested tabu - \tabu@evr{\tabu@verticalinit}% - \tabu@celllalign@def{\tabu@verticalmeasure}% - \def\tabu@cellralign{\tabu@verticalspacing}% - \fi - \tabu@clckpt \let\@halignto \tabu@halignto - \let\@halignto \@empty - \tabu@seteverycr - \ifdim \tabustrutrule>\z@ \ifnum\tabu@nested=\z@ - \setbox\@arstrutbox \box\voidb@x % force \@arstrutbox to be rebuilt (visible struts) - \fi\fi -}% \tabu@closetrialsgroup -\def\tabu@quickend {\expandafter \endgroup \expandafter - \tabu@target \the\tabu@target \tabu@quickrule - \let\endarray \relax \tabu@endenvir -}% \tabu@quickend -\def\tabu@endtrial {\relax % stops \count@ assignment ! - \ifcase \count@ \tabu@err % case 0 = impossible here - \or \tabu@err % case 1 = impossible here - \or \tabu@err % case 2 = impossible here - \or % case 3 = outer goes into mode 0 - \def\tabu@bufferX{\endgroup}\count@ \z@ - \else % case 4 = outer goes into mode 3 - \iftabu@spread \tabu@spreadarith % inner into mode 1 (outer in mode 3) - \else \tabu@arith % or 2 (outer in mode 4) - \fi - \count@=% - \ifcase\tabu@nested \thr@@ % outer goes into mode 3 - \else\iftabu@measuring \tw@ % outer is in mode 4 - \else \@ne % outer is in mode 3 - \fi\fi - \edef\tabu@bufferX{\endgroup - \tabucolX \the\tabucolX - \tabu@target \the\tabu@target}% - \fi - \expandafter \tabu@bufferX \expandafter - \count@ \the\count@ \tabu@strategy -}% \tabu@endtrial -\def\tabu@err{\errmessage{(tabu) Internal impossible error! (\count@=\the\count@)}} -%% The algorithms: compute the widths / stop or go on --------------- -\def\tabu@arithnegcoef {% - \@tempdima \z@ \dimen@ \z@ \let\tabu@ \tabu@arith@negcoef \tabu@Xcoefs -}% \tabu@arithnegcoef -\def\tabu@arith@negcoef #1#2{% - \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ % saturated by definition - \advance\@tempdima #2\tabucolX - \else - \ifdim -#2\tabucolX <\tabu@wd{#1}% c_i X < natural width <= \tabu@target-> saturated - \advance\dimen@ -#2\p@ - \advance\@tempdima -#2\tabucolX - \else - \advance\@tempdima \tabu@wd{#1}% natural width <= c_i X => neutralised - \ifdim \tabu@wd{#1}<\tabu@target \else % neutralised - \advance\dimen@ -#2\p@ % saturated (natural width = tabu@target) - \fi - \fi - \fi -}% \tabu@arith@negcoef -\def\tabu@givespace #1#2{% here \tabu@DELTA < \z@ - \ifdim \@tempdima=\z@ - \tabu@wddef{#1}{\the\dimexpr -\tabu@DELTA*\p@/\tabu@Xsum}% - \else - \tabu@wddef{#1}{\the\dimexpr \tabu@hsize{#1}{#2} - *(\p@ -\tabu@DELTA*\p@/\@tempdima)/\p@\relax}% - \fi -}% \tabu@givespace -\def\tabu@arith {\advance\tabu@cnt \@ne - \ifnum \tabu@cnt=\@ne \tabu@message{\tabu@titles}\fi - \tabu@arithnegcoef - \@tempdimb \dimexpr \wd\tabu@box -\@tempdima \relax % - \tabu@DELTA = \dimexpr \wd\tabu@box - \tabu@target \relax - \tabu@message{\tabu@message@arith}% - \ifdim \tabu@DELTA <\tabu@hfuzz - \ifdim \tabu@DELTA<\z@ % wd (tabu)<\tabu@target ? - \let\tabu@ \tabu@givespace \tabu@Xcoefs - \advance\@tempdima \@tempdimb \advance\@tempdima -\tabu@DELTA % for message - \else % already converged: nothing to do but nearly impossible... - \fi - \tabucolX \maxdimen - \tabu@measuringfalse - \else % need for narrower X columns - \tabucolX =\dimexpr (\@tempdima -\tabu@DELTA) *\p@/\tabu@Xsum \relax - \tabu@measuringtrue - \@whilesw \iftabu@measuring\fi {% - \advance\tabu@cnt \@ne - \tabu@arithnegcoef - \tabu@DELTA =\dimexpr \@tempdima+\@tempdimb -\tabu@target \relax % always < 0 here - \tabu@message{\tabu@header - \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ - \tabu@msgalign \@tempdima+\@tempdimb { }{ }{ }{ }{ }\@@ - \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ - \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ - \ifdim -\tabu@DELTA<\tabu@hfuzz \tabu@spaces target ok\else - \tabu@msgalign \dimexpr -\tabu@DELTA *\p@/\dimen@ {}{}{}{}{}\@@ - \fi}% - \ifdim -\tabu@DELTA<\tabu@hfuzz - \advance\@tempdima \@tempdimb % for message - \tabu@measuringfalse - \else - \advance\tabucolX \dimexpr -\tabu@DELTA *\p@/\dimen@ \relax - \fi - }% - \fi - \tabu@message{\tabu@message@reached}% - \edef\tabu@bufferX{\endgroup \tabu@cnt \the\tabu@cnt - \tabucolX \the\tabucolX - \tabu@target \the\tabu@target}% -}% \tabu@arith -\def\tabu@spreadarith {% - \dimen@ \z@ \@tempdima \tabu@naturalXmax \let\tabu@ \tabu@spread@arith \tabu@Xcoefs - \edef\tabu@naturalXmin {\the\dimexpr\tabu@naturalXmin*\dimen@/\p@}% - \@tempdimc =\dimexpr \wd\tabu@box -\tabu@naturalXmax+\tabu@naturalXmin \relax - \iftabu@measuring - \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax - \edef\tabu@bufferX{\endgroup \tabucolX \the\tabucolX \tabu@target\the\tabu@target}% - \else - \tabu@message{\tabu@message@spreadarith}% - \ifdim \dimexpr \@tempdimc+\tabu@spreadtarget >\tabu@target - \tabu@message{(tabu) spread - \ifdim \@tempdimc>\tabu@target useless here: default target used% - \else too large: reduced to fit default target\fi.}% - \else - \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax - \tabu@message{(tabu) spread: New target set to \the\tabu@target^^J}% - \fi - \begingroup \let\tabu@wddef \@gobbletwo - \@tempdimb \@tempdima - \tabucolX@init - \tabu@arithnegcoef - \wd\tabu@box =\dimexpr \wd\tabu@box +\@tempdima-\@tempdimb \relax - \expandafter\endgroup \expandafter\tabucolX \the\tabucolX - \tabu@arith - \fi -}% \tabu@spreadarith -\def\tabu@spread@arith #1#2{% - \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ - \else \advance\@tempdima \tabu@wd{#1}\relax - \fi -}% \tabu@spread@arith -%% Reporting in the .log file --------------------------------------- -\def\tabu@message@defaulttarget{% - \ifnum\tabu@nested=\z@^^J(tabu) Default target: - \ifx\tabudefaulttarget\linewidth \string\linewidth - \ifdim \tabu@thetarget=\linewidth \else - -\the\dimexpr\linewidth-\tabu@thetarget\fi = - \else\ifx\tabudefaulttarget\linegoal\string\linegoal= - \fi\fi - \else (tabu) Default target (nested): \fi - \the\tabu@target \on@line - \ifnum\tabu@nested=\z@ , page \the\c@page\fi} -\def\tabu@message@target {^^J(tabu) Target specified: - \the\tabu@target \on@line, page \the\c@page} -\def\tabu@message@arith {\tabu@header - \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ - \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{ }\@@ - \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ - \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ - \ifdim \tabu@DELTA<\tabu@hfuzz giving space\else - \tabu@msgalign \dimexpr (\@tempdima-\tabu@DELTA) *\p@/\tabu@Xsum -\tabucolX {}{}{}{}{}\@@ - \fi -}% \tabu@message@arith -\def\tabu@message@spreadarith {\tabu@spreadheader - \tabu@msgalign \tabu@spreadtarget { }{ }{ }{ }{}\@@ - \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{}\@@ - \tabu@msgalign -\tabu@naturalXmax { }{}{}{}{}\@@ - \tabu@msgalign \tabu@naturalXmin { }{ }{ }{ }{}\@@ - \tabu@msgalign \ifdim \dimexpr\@tempdimc>\tabu@target \tabu@target - \else \@tempdimc+\tabu@spreadtarget \fi - {}{}{}{}{}\@@} -\def\tabu@message@negcoef #1#2{ - \tabu@spaces\tabu@spaces\space * #1. X[\rem@pt#2]: - \space width = \tabu@wd {#1} - \expandafter\string\csname tabu@\the\tabu@nested.W\number#1\endcsname - \ifdim -\tabu@pt#2\tabucolX<\tabu@target - < \number-\rem@pt#2 X - = \the\dimexpr -\tabu@pt#2\tabucolX \relax - \else - <= \the\tabu@target\space < \number-\rem@pt#2 X\fi} -\def\tabu@message@reached{\tabu@header - ******* Reached Target: - hfuzz = \tabu@hfuzz\on@line\space *******} -\def\tabu@message@etime{\edef\tabu@stoptime{\the\pdfelapsedtime}% - \tabu@message{(tabu)\tabu@spaces Time elapsed during measure: - \the\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax sec - \the\numexpr\numexpr(\tabu@stoptime-\tabu@starttime) - -\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax*65536\relax - *1000/65536\relax ms \tabu@spaces(\the\tabu@cnt\space - cycle\ifnum\tabu@cnt>\@ne s\fi)^^J^^J}} -\def\tabu@message@verticalsp {% - \ifdim \@tempdima>\tabu@ht - \ifdim \@tempdimb>\tabu@dp - \expandafter\expandafter\expandafter\string\tabu@ht = - \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@ - \expandafter\expandafter\expandafter\string\tabu@dp = - \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J% - \else - \expandafter\expandafter\expandafter\string\tabu@ht = - \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@^^J% - \fi - \else\ifdim \@tempdimb>\tabu@dp - \tabu@spaces\tabu@spaces\tabu@spaces - \expandafter\expandafter\expandafter\string\tabu@dp = - \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J\fi - \fi -}% \tabu@message@verticalsp -\edef\tabu@spaces{\@spaces} -\def\tabu@strippt{\expandafter\tabu@pt\the} -{\@makeother\P \@makeother\T\lowercase{\gdef\tabu@pt #1PT{#1}}} -\def\tabu@msgalign{\expandafter\tabu@msg@align\the\dimexpr} -\def\tabu@msgalign@PT{\expandafter\tabu@msg@align\romannumeral-`\0\tabu@strippt} -\def\do #1{% - \def\tabu@msg@align##1.##2##3##4##5##6##7##8##9\@@{% - \ifnum##1<10 #1 #1\else - \ifnum##1<100 #1 \else - \ifnum##1<\@m #1\fi\fi\fi - ##1.##2##3##4##5##6##7##8#1}% - \def\tabu@header{(tabu) \ifnum\tabu@cnt<10 #1\fi\the\tabu@cnt) }% - \def\tabu@titles{\ifnum \tabu@nested=\z@ - (tabu) Try#1 #1 tabu X #1 #1 #1tabu Width #1 #1 Target - #1 #1 #1 Coefs #1 #1 #1 Update^^J\fi}% - \def\tabu@spreadheader{% - (tabu) Try#1 #1 Spread #1 #1 tabu Width #1 #1 #1 Nat. X #1 #1 #1 #1Nat. Min. - #1 New Target^^J% - (tabu) sprd} - \def\tabu@message@save {\begingroup - \def\x ####1{\tabu@msg@align ####1{ }{ }{ }{ }{}\@@} - \def\z ####1{\expandafter\x\expandafter{\romannumeral-`\0\tabu@strippt - \dimexpr####1\p@{ }{ }}}% - \let\color \relax \def\tabu@rulesstyle ####1####2{\detokenize{####1}}% - \let\CT@arc@ \relax \let\@preamble \@gobble - \let\tabu@savedpream \@firstofone - \let\tabu@savedparams \@firstofone - \def\tabu@target ####1\relax {(tabu) target #1 #1 #1 #1 #1 = \x{####1}^^J}% - \def\tabucolX ####1\relax {(tabu) X columns width#1 = \x{####1}^^J}% - \def\tabu@nbcols ####1\relax {(tabu) Number of columns: \z{####1}^^J}% - \def\tabu@aligndefault ####1{(tabu) Default alignment: #1 #1 ####1^^J}% - \def\col@sep ####1\relax {(tabu) column sep #1 #1 #1 = \x{####1}^^J}% - \def\arrayrulewidth ####1\relax{(tabu) arrayrulewidth #1 = \x{####1}}% - \def\doublerulesep ####1\relax { doublerulesep = \x{####1}^^J}% - \def\extratabsurround####1\relax{(tabu) extratabsurround = \x{####1}^^J}% - \def\extrarowheight ####1\relax{(tabu) extrarowheight #1 = \x{####1}}% - \def\extrarowdepth ####1\relax {extrarowdepth = \x{####1}^^J}% - \def\abovetabulinesep####1\relax{(tabu) abovetabulinesep=\x{####1} }% - \def\belowtabulinesep####1\relax{ belowtabulinesep=\x{####1}^^J}% - \def\arraystretch ####1{(tabu) arraystretch #1 #1 = \z{####1}^^J}% - \def\minrowclearance####1\relax{(tabu) minrowclearance #1 = \x{####1}^^J}% - \def\tabu@arc@L ####1{(tabu) taburulecolor #1 #1 = ####1^^J}% - \def\tabu@drsc@L ####1{(tabu) tabudoublerulecolor= ####1^^J}% - \def\tabu@evr@L ####1{(tabu) everyrow #1 #1 #1 #1 = \detokenize{####1}^^J}% - \def\tabu@ls@L ####1{(tabu) line style = \detokenize{####1}^^J}% - \def\NC@find ####1\@nil{(tabu) tabu preamble#1 #1 = \detokenize{####1}^^J}% - \def\tabu@wddef####1####2{(tabu) Natural width ####1 = \x{####2}^^J}% - \let\edef \@gobbletwo \let\def \@empty \let\let \@gobbletwo - \tabu@message{% - (tabu) \string\savetabu{\tabu@temp}: \on@line^^J% - \tabu@usetabu \@nil^^J}% - \endgroup} -}\do{ } -%% Measuring the natural width (varwidth) - store the results ------- -\def\tabu@startpboxmeasure #1{\bgroup % entering \vtop - \edef\tabu@temp{\expandafter\@secondoftwo \ifx\tabu@hsize #1\else\relax\fi}% - \ifodd 1\ifx \tabu@temp\@empty 0 \else % starts with \tabu@hsize ? - \iftabu@spread \else % if spread -> measure - \ifdim \tabu@temp\p@>\z@ 0 \fi\fi\fi% if coef>0 -> do not measure - \let\@startpbox \tabu@startpboxORI % restore immediately (nesting) - \tabu@measuringtrue % for the quick option... - \tabu@Xcol =\expandafter\@firstoftwo\ifx\tabu@hsize #1\fi - \ifdim \tabu@temp\p@>\z@ \ifdim \tabu@temp\tabucolX<\tabu@target - \tabu@target=\tabu@temp\tabucolX \fi\fi - \setbox\tabu@box \hbox \bgroup - \begin{varwidth}\tabu@target - \let\FV@ListProcessLine \tabu@FV@ListProcessLine % \hbox to natural width... - \narrowragged \arraybackslash \parfillskip \@flushglue - \ifdefined\pdfadjustspacing \pdfadjustspacing\z@ \fi - \bgroup \aftergroup\tabu@endpboxmeasure - \ifdefined \cellspacetoplimit \tabu@cellspacepatch \fi - \else \expandafter\@gobble - \tabu@startpboxquick{#1}% \@gobble \bgroup - \fi -}% \tabu@startpboxmeasure -\def\tabu@cellspacepatch{\def\bcolumn##1\@nil{}\let\ecolumn\@empty - \bgroup\color@begingroup} -\def\tabu@endpboxmeasure {% - \@finalstrut \@arstrutbox - \end{varwidth}\egroup % - \ifdim \tabu@temp\p@ <\z@ % neg coef - \ifdim \tabu@wd\tabu@Xcol <\wd\tabu@box - \tabu@wddef\tabu@Xcol {\the\wd\tabu@box}% - \tabu@debug{\tabu@message@endpboxmeasure}% - \fi - \else % spread coef>0 - \global\advance \tabu@naturalX \wd\tabu@box - \@tempdima =\dimexpr \wd\tabu@box *\p@/\dimexpr \tabu@temp\p@\relax \relax - \ifdim \tabu@naturalXmax <\tabu@naturalX - \xdef\tabu@naturalXmax {\the\tabu@naturalX}\fi - \ifdim \tabu@naturalXmin <\@tempdima - \xdef\tabu@naturalXmin {\the\@tempdima}\fi - \fi - \box\tabu@box \egroup % end of \vtop (measure) restore \tabu@target -}% \tabu@endpboxmeasure -\def\tabu@wddef #1{\expandafter\xdef - \csname tabu@\the\tabu@nested.W\number#1\endcsname} -\def\tabu@wd #1{\csname tabu@\the\tabu@nested.W\number#1\endcsname} -\def\tabu@message@endpboxmeasure{\tabu@spaces\tabu@spaces<-> % <-> save natural wd - \the\tabu@Xcol. X[\tabu@temp]: - target = \the\tabucolX \space - \expandafter\expandafter\expandafter\string\tabu@wd\tabu@Xcol - =\tabu@wd\tabu@Xcol -}% \tabu@message@endpboxmeasure -\def\tabu@startpboxquick {\bgroup - \let\@startpbox \tabu@startpboxORI % restore immediately - \let\tabu \tabu@quick % \begin is expanded before... - \expandafter\@gobble \@startpbox % gobbles \bgroup -}% \tabu@startpboxquick -\def\tabu@quick {\begingroup \iffalse{\fi \ifnum0=`}\fi - \toks@{}\def\tabu@stack{b}\tabu@collectbody \tabu@endquick -}% \tabu@quick -\def\tabu@endquick {% - \ifodd 1\ifx\tabu@end@envir\tabu@endtabu \else - \ifx\tabu@end@envir\tabu@endtabus \else 0\fi\fi\relax - \endgroup - \else \let\endtabu \relax - \tabu@end@envir - \fi -}% \tabu@quick -\def\tabu@endtabu {\end{tabu}} -\def\tabu@endtabus {\end{tabu*}} -%% Measuring the heights and depths - store the results ------------- -\def\tabu@verticalmeasure{\everypar{}% - \ifnum \currentgrouptype>12 % 14=semi-simple, 15=math shift group - \setbox\tabu@box =\hbox\bgroup - \let\tabu@verticalspacing \tabu@verticalsp@lcr - \d@llarbegin % after \hbox ... - \else - \edef\tabu@temp{\ifnum\currentgrouptype=5\vtop - \else\ifnum\currentgrouptype=12\vcenter - \else\vbox\fi\fi}% - \setbox\tabu@box \hbox\bgroup$\tabu@temp \bgroup - \let\tabu@verticalspacing \tabu@verticalsp@pmb - \fi -}% \tabu@verticalmeasure -\def\tabu@verticalsp@lcr{% - \d@llarend \egroup % - \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep - \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax - \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi - \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi - \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi - \noindent\vrule height\@tempdima depth\@tempdimb -}% \tabu@verticalsp@lcr -\def\tabu@verticalsp@pmb{% inserts struts as needed - \par \expandafter\egroup - \expandafter$\expandafter - \egroup \expandafter - \@tempdimc \the\prevdepth - \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep - \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax - \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi - \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi - \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi - \let\@finalstrut \@gobble - \hrule height\@tempdima depth\@tempdimb width\hsize -%% \box\tabu@box -}% \tabu@verticalsp@pmb - -\def\tabu@verticalinit{% - \ifnum \c@taburow=\z@ \tabu@rearstrut \fi % after \tabu@reset ! - \advance\c@taburow \@ne - \tabu@htdef{\the\ht\@arstrutbox}\tabu@dpdef{\the\dp\@arstrutbox}% - \advance\c@taburow \m@ne -}% \tabu@verticalinit -\def\tabu@htdef {\expandafter\xdef \csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} -\def\tabu@ht {\csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} -\def\tabu@dpdef {\expandafter\xdef \csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} -\def\tabu@dp {\csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} -\def\tabu@verticaldynamicadjustment {% - \advance\c@taburow \@ne - \extrarowheight \dimexpr\tabu@ht - \ht\strutbox - \extrarowdepth \dimexpr\tabu@dp - \dp\strutbox - \let\arraystretch \@empty - \advance\c@taburow \m@ne -}% \tabu@verticaldynamicadjustment -\def\tabuphantomline{\crcr \noalign{% - {\globaldefs \@ne - \setbox\@arstrutbox \box\voidb@x - \let\tabu@@celllalign \tabu@celllalign - \let\tabu@@cellralign \tabu@cellralign - \let\tabu@@cellleft \tabu@cellleft - \let\tabu@@cellright \tabu@cellright - \let\tabu@@thevline \tabu@thevline - \let\tabu@celllalign \@empty - \let\tabu@cellralign \@empty - \let\tabu@cellright \@empty - \let\tabu@cellleft \@empty - \let\tabu@thevline \relax}% - \edef\tabu@temp{\tabu@multispan \tabu@nbcols{\noindent &}}% - \toks@\expandafter{\tabu@temp \noindent\tabu@everyrowfalse \cr - \noalign{\tabu@rearstrut - {\globaldefs\@ne - \let\tabu@celllalign \tabu@@celllalign - \let\tabu@cellralign \tabu@@cellralign - \let\tabu@cellleft \tabu@@cellleft - \let\tabu@cellright \tabu@@cellright - \let\tabu@thevline \tabu@@thevline}}}% - \expandafter}\the\toks@ -}% \tabuphantomline -%% \firsthline and \lasthline corrections --------------------------- -\def\tabu@firstline {\tabu@hlineAZ \tabu@firsthlinecorrection {}} -\def\tabu@firsthline{\tabu@hlineAZ \tabu@firsthlinecorrection \hline} -\def\tabu@lastline {\tabu@hlineAZ \tabu@lasthlinecorrection {}} -\def\tabu@lasthline {\tabu@hlineAZ \tabu@lasthlinecorrection \hline} -\def\tabu@hline {% replaces \hline if no colortbl (see \AtBeginDocument) - \noalign{\ifnum0=`}\fi - {\CT@arc@\hrule height\arrayrulewidth}% - \futurelet \tabu@temp \tabu@xhline -}% \tabu@hline -\def\tabu@xhline{% - \ifx \tabu@temp \hline - {\ifx \CT@drsc@\relax \vskip - \else\ifx \CT@drsc@\@empty \vskip - \else \CT@drsc@\hrule height - \fi\fi - \doublerulesep}% - \fi - \ifnum0=`{\fi}% -}% \tabu@xhline -\def\tabu@hlineAZ #1#2{\noalign{\ifnum0=`}\fi \dimen@ \z@ \count@ \z@ - \toks@{}\def\tabu@hlinecorrection{#1}\def\tabu@temp{#2}% - \tabu@hlineAZsurround -}% \tabu@hlineAZ -\newcommand*\tabu@hlineAZsurround[1][\extratabsurround]{% - \extratabsurround #1\let\tabucline \tabucline@scan - \let\hline \tabu@hlinescan \let\firsthline \hline - \let\cline \tabu@clinescan \let\lasthline \hline - \expandafter \futurelet \expandafter \tabu@temp - \expandafter \tabu@nexthlineAZ \tabu@temp -}% \tabu@hlineAZsurround -\def\tabu@hlinescan {\tabu@thick \arrayrulewidth \tabu@xhlineAZ \hline} -\def\tabu@clinescan #1{\tabu@thick \arrayrulewidth \tabu@xhlineAZ {\cline{#1}}} -\def\tabucline@scan{\@testopt \tabucline@sc@n {}} -\def\tabucline@sc@n #1[#2]{\tabu@xhlineAZ {\tabucline[{#1}]{#2}}} -\def\tabu@nexthlineAZ{% - \ifx \tabu@temp\hline \else - \ifx \tabu@temp\cline \else - \ifx \tabu@temp\tabucline \else - \tabu@hlinecorrection - \fi\fi\fi -}% \tabu@nexthlineAZ -\def\tabu@xhlineAZ #1{% - \toks@\expandafter{\the\toks@ #1}% - \@tempdimc \tabu@thick % The last line width - \ifcase\count@ \@tempdimb \tabu@thick % The first line width - \else \advance\dimen@ \dimexpr \tabu@thick+\doublerulesep \relax - \fi - \advance\count@ \@ne \futurelet \tabu@temp \tabu@nexthlineAZ -}% \tabu@xhlineAZ -\def\tabu@firsthlinecorrection{% \count@ = number of \hline -1 - \@tempdima \dimexpr \ht\@arstrutbox+\dimen@ - \edef\firsthline{% - \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule - height \the\dimexpr\@tempdima+\extratabsurround - depth \dp\@arstrutbox - width \tabustrutrule}\hss}\cr - \noalign{\vskip -\the\dimexpr \@tempdima+\@tempdimb - +\dp\@arstrutbox \relax}% - \the\toks@ - }\ifnum0=`{\fi - \expandafter}\firsthline % we are then ! -}% \tabu@firsthlinecorrection -\def\tabu@lasthlinecorrection{% - \@tempdima \dimexpr \dp\@arstrutbox+\dimen@+\@tempdimb+\@tempdimc - \edef\lasthline{% - \the\toks@ - \noalign{\vskip -\the\dimexpr\dimen@+\@tempdimb+\dp\@arstrutbox}% - \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule - depth \the\dimexpr \dp\@arstrutbox+\@tempdimb+\dimen@ - +\extratabsurround-\@tempdimc - height \z@ - width \tabustrutrule}\hss}\cr - }\ifnum0=`{\fi - \expandafter}\lasthline % we are then ! -}% \tabu@lasthlinecorrection -\def\tabu@LT@@hline{% - \ifx\LT@next\hline - \global\let\LT@next \@gobble - \ifx \CT@drsc@\relax - \gdef\CT@LT@sep{% - \noalign{\penalty-\@medpenalty\vskip\doublerulesep}}% - \else - \gdef\CT@LT@sep{% - \multispan\LT@cols{% - \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill}\cr}% - \fi - \else - \global\let\LT@next\empty - \gdef\CT@LT@sep{% - \noalign{\penalty-\@lowpenalty\vskip-\arrayrulewidth}}% - \fi - \ifnum0=`{\fi}% - \multispan\LT@cols - {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr - \CT@LT@sep - \multispan\LT@cols - {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr - \noalign{\penalty\@M}% - \LT@next -}% \tabu@LT@@hline -%% Horizontal lines : \tabucline ------------------------------------ -\let\tabu@start \@tempcnta -\let\tabu@stop \@tempcntb -\newcommand*\tabucline{\noalign{\ifnum0=`}\fi \tabu@cline} -\newcommand*\tabu@cline[2][]{\tabu@startstop{#2}% - \ifnum \tabu@stop<\z@ \toks@{}% - \else \tabu@clinearg{#1}\tabu@thestyle - \edef\tabucline{\toks@{% - \ifnum \tabu@start>\z@ \omit - \tabu@multispan\tabu@start {\span\omit}&\fi - \omit \tabu@multispan\tabu@stop {\span\omit}% - \tabu@thehline\cr - }}\tabucline - \tabu@tracinglines{(tabu:tabucline) Style: #1^^J\the\toks@^^J^^J}% - \fi - \futurelet \tabu@temp \tabu@xcline -}% \tabu@cline -\def\tabu@clinearg #1{% - \ifx\\#1\\\let\tabu@thestyle \tabu@ls@ - \else \@defaultunits \expandafter\let\expandafter\@tempa - \romannumeral-`\0#1\relax \@nnil - \ifx \hbox\@tempa \tabu@clinebox{#1}% - \else\ifx \box\@tempa \tabu@clinebox{#1}% - \else\ifx \vbox\@tempa \tabu@clinebox{#1}% - \else\ifx \vtop\@tempa \tabu@clinebox{#1}% - \else\ifx \copy\@tempa \tabu@clinebox{#1}% - \else\ifx \leaders\@tempa \tabu@clineleads{#1}% - \else\ifx \cleaders\@tempa \tabu@clineleads{#1}% - \else\ifx \xleaders\@tempa \tabu@clineleads{#1}% - \else\tabu@getline {#1}% - \fi\fi\fi\fi\fi\fi\fi\fi - \fi -}% \tabu@clinearg -\def\tabu@clinebox #1{\tabu@clineleads{\xleaders#1\hss}} -\def\tabu@clineleads #1{% - \let\tabu@thestyle \relax \let\tabu@leaders \@undefined - \gdef\tabu@thehrule{#1}} -\def\tabu@thehline{\begingroup - \ifdefined\tabu@leaders - \noexpand\tabu@thehleaders - \else \noexpand\tabu@thehrule - \fi \endgroup -}% \tabu@thehline -\def\tabu@xcline{% - \ifx \tabu@temp\tabucline - \toks@\expandafter{\the\toks@ \noalign - {\ifx\CT@drsc@\relax \vskip - \else \CT@drsc@\hrule height - \fi - \doublerulesep}}% - \fi - \tabu@docline -}% \tabu@xcline -\def\tabu@docline {\ifnum0=`{\fi \expandafter}\the\toks@} -\def\tabu@docline@evr {\xdef\tabu@doclineafter{\the\toks@}% - \ifnum0=`{\fi}\aftergroup\tabu@doclineafter} -\def\tabu@multispan #1#2{% - \ifnum\numexpr#1>\@ne #2\expandafter\tabu@multispan - \else \expandafter\@gobbletwo - \fi {#1-1}{#2}% -}% \tabu@multispan -\def\tabu@startstop #1{\tabu@start@stop #1\relax 1-\tabu@nbcols \@nnil} -\def\tabu@start@stop #1-#2\@nnil{% - \@defaultunits \tabu@start\number 0#1\relax \@nnil - \@defaultunits \tabu@stop \number 0#2\relax \@nnil - \tabu@stop \ifnum \tabu@start>\tabu@nbcols \m@ne - \else\ifnum \tabu@stop=\z@ \tabu@nbcols - \else\ifnum \tabu@stop>\tabu@nbcols \tabu@nbcols - \else \tabu@stop - \fi\fi\fi - \advance\tabu@start \m@ne - \ifnum \tabu@start>\z@ \advance\tabu@stop -\tabu@start \fi -}% \tabu@start@stop -%% Numbers: siunitx S columns (and \tabudecimal) ------------------- -\def\tabu@tabudecimal #1{% - \def\tabu@decimal{#1}\@temptokena{}% - \let\tabu@getdecimal@ \tabu@getdecimal@ignorespaces - \tabu@scandecimal -}% \tabu@tabudecimal -\def\tabu@scandecimal{\futurelet \tabu@temp \tabu@getdecimal@} -\def\tabu@skipdecimal#1{#1\tabu@scandecimal} -\def\tabu@getdecimal@ignorespaces{% - \ifcase 0\ifx\tabu@temp\ignorespaces\else - \ifx\tabu@temp\@sptoken1\else - 2\fi\fi\relax - \let\tabu@getdecimal@ \tabu@getdecimal - \expandafter\tabu@skipdecimal - \or \expandafter\tabu@gobblespace\expandafter\tabu@scandecimal - \else \expandafter\tabu@skipdecimal - \fi -}% \tabu@getdecimal@ignorespaces -\def\tabu@get@decimal#1{\@temptokena\expandafter{\the\@temptokena #1}% - \tabu@scandecimal} -\def\do#1{% - \def\tabu@get@decimalspace#1{% - \@temptokena\expandafter{\the\@temptokena #1}\tabu@scandecimal}% -}\do{ } -\let\tabu@@tabudecimal \tabu@tabudecimal -\def\tabu@getdecimal{% - \ifcase 0\ifx 0\tabu@temp\else - \ifx 1\tabu@temp\else - \ifx 2\tabu@temp\else - \ifx 3\tabu@temp\else - \ifx 4\tabu@temp\else - \ifx 5\tabu@temp\else - \ifx 6\tabu@temp\else - \ifx 7\tabu@temp\else - \ifx 8\tabu@temp\else - \ifx 9\tabu@temp\else - \ifx .\tabu@temp\else - \ifx ,\tabu@temp\else - \ifx -\tabu@temp\else - \ifx +\tabu@temp\else - \ifx e\tabu@temp\else - \ifx E\tabu@temp\else - \ifx\tabu@cellleft\tabu@temp1\else - \ifx\ignorespaces\tabu@temp1\else - \ifx\@sptoken\tabu@temp2\else - 3\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax - \expandafter\tabu@get@decimal - \or \expandafter\tabu@skipdecimal - \or \expandafter\tabu@get@decimalspace - \else\expandafter\tabu@printdecimal - \fi -}% \tabu@getdecimal -\def\tabu@printdecimal{% - \edef\tabu@temp{\the\@temptokena}% - \ifx\tabu@temp\@empty\else - \ifx\tabu@temp\space\else - \expandafter\tabu@decimal\expandafter{\the\@temptokena}% - \fi\fi -}% \tabu@printdecimal -%% Verbatim inside X columns ---------------------------------------- -\def\tabu@verbatim{% - \let\verb \tabu@verb - \let\FV@DefineCheckEnd \tabu@FV@DefineCheckEnd -}% \tabu@verbatim -\let\tabu@ltx@verb \verb -\def\tabu@verb{\@ifstar {\tabu@ltx@verb*} \tabu@ltx@verb} -\def\tabu@fancyvrb {% - \def\tabu@FV@DefineCheckEnd ##1{% - \def\tabu@FV@DefineCheckEnd{% - ##1% - \let\FV@CheckEnd \tabu@FV@CheckEnd - \let\FV@@CheckEnd \tabu@FV@@CheckEnd - \let\FV@@@CheckEnd \tabu@FV@@@CheckEnd - \edef\FV@EndScanning{% - \def\noexpand\next{\noexpand\end{\FV@EnvironName}}% - \global\let\noexpand\FV@EnvironName\relax - \noexpand\next}% - \xdef\FV@EnvironName{\detokenize\expandafter{\FV@EnvironName}}}% - }\expandafter\tabu@FV@DefineCheckEnd\expandafter{\FV@DefineCheckEnd} -}% \tabu@fancyvrb -\def\tabu@FV@CheckEnd #1{\expandafter\FV@@CheckEnd \detokenize{#1\end{}}\@nil} -\edef\tabu@FV@@@CheckEnd {\detokenize{\end{}}} -\begingroup -\catcode`\[1 \catcode`\]2 -\@makeother\{ \@makeother\} - \edef\x[\endgroup - \def\noexpand\tabu@FV@@CheckEnd ##1\detokenize[\end{]##2\detokenize[}]##3% - ]\x \@nil{\def\@tempa{#2}\def\@tempb{#3}} -\def\tabu@FV@ListProcessLine #1{% - \hbox {%to \hsize{% - \kern\leftmargin - \hbox {%to \linewidth{% - \FV@LeftListNumber - \FV@LeftListFrame - \FancyVerbFormatLine{#1}\hss -%% DG/SR modification begin - Jan. 28, 1998 (for numbers=right add-on) -%% \FV@RightListFrame}% - \FV@RightListFrame - \FV@RightListNumber}% -%% DG/SR modification end - \hss}} -%% \savetabu -------------------------------------------------------- -\newcommand*\savetabu[1]{\noalign{% - \tabu@sanitizearg{#1}\tabu@temp - \ifx \tabu@temp\@empty \tabu@savewarn{}{The tabu will not be saved}\else - \@ifundefined{tabu@saved@\tabu@temp}{}{\tabu@savewarn{#1}{Overwriting}}% - \ifdefined\tabu@restored \expandafter\let - \csname tabu@saved@\tabu@temp \endcsname \tabu@restored - \else {\tabu@save}% - \fi - \fi}% -}% \savetabu -\def\tabu@save {% - \toks0\expandafter{\tabu@saved@}% - \iftabu@negcoef - \let\tabu@wddef \relax \let\tabu@ \tabu@savewd \edef\tabu@savewd{\tabu@Xcoefs}% - \toks0\expandafter{\the\toks\expandafter0\tabu@savewd}\fi - \toks1\expandafter{\tabu@savedpream}% - \toks2\expandafter{\tabu@savedpreamble}% - \let\@preamble \relax - \let\tabu@savedpream \relax \let\tabu@savedparams \relax - \edef\tabu@preamble{% - \def\noexpand\tabu@aligndefault{\tabu@align}% - \def\tabu@savedparams {\noexpand\the\toks0}% - \def\tabu@savedpream {\noexpand\the\toks1}}% - \edef\tabu@usetabu{% - \def\@preamble {\noexpand\the\toks2}% - \tabu@target \the\tabu@target \relax - \tabucolX \the\tabucolX \relax - \tabu@nbcols \the\tabu@nbcols \relax - \def\noexpand\tabu@aligndefault{\tabu@align}% - \def\tabu@savedparams {\noexpand\the\toks0}% - \def\tabu@savedpream {\noexpand\the\toks1}}% - \let\tabu@aligndefault \relax \let\@sharp \relax - \edef\@tempa{\noexpand\tabu@s@ved - {\tabu@usetabu} - {\tabu@preamble} - {\the\toks1}}\@tempa - \tabu@message@save -}% \tabu@save -\long\def\tabu@s@ved #1#2#3{% - \def\tabu@usetabu{#1}% - \expandafter\gdef\csname tabu@saved@\tabu@temp\endcsname ##1{% - \ifodd ##1% \usetabu - \tabu@measuringfalse \tabu@spreadfalse % Just in case... - \gdef\tabu@usetabu {% - \ifdim \tabu@target>\z@ \tabu@warn@usetabu \fi - \global\let\tabu@usetabu \@undefined - \def\@halignto {to\tabu@target}% - #1% - \ifx \tabu@align\tabu@aligndefault@text - \ifnum \tabu@nested=\z@ - \let\tabu@align \tabu@aligndefault \fi\fi}% - \else % \preamble - \gdef\tabu@preamble {% - \global\let\tabu@preamble \@undefined - #2% - \ifx \tabu@align\tabu@aligndefault@text - \ifnum \tabu@nested=\z@ - \let\tabu@align \tabu@aligndefault \fi\fi}% - \fi - #3}% -}% \tabu@s@ved -\def\tabu@aligndefault@text {\tabu@aligndefault}% -\def\tabu@warn@usetabu {\PackageWarning{tabu} - {Specifying a target with \string\usetabu\space is useless - \MessageBreak The target cannot be changed!}} -\def\tabu@savewd #1#2{\ifdim #2\p@<\z@ \tabu@wddef{#1}{\tabu@wd{#1}}\fi} -\def\tabu@savewarn#1#2{\PackageInfo{tabu} - {User-name `#1' already used for \string\savetabu - \MessageBreak #2}}% -\def\tabu@saveerr#1{\PackageError{tabu} - {User-name `#1' is unknown for \string\usetabu - \MessageBreak I cannot restore an unknown preamble!}\@ehd} -%% \rowfont --------------------------------------------------------- -\newskip \tabu@cellskip -\def\tabu@rowfont{\ifdim \baselineskip=\z@\noalign\fi - {\ifnum0=`}\fi \tabu@row@font} -\newcommand*\tabu@row@font[2][]{% - \ifnum7=\currentgrouptype - \global\let\tabu@@cellleft \tabu@cellleft - \global\let\tabu@@cellright \tabu@cellright - \global\let\tabu@@celllalign \tabu@celllalign - \global\let\tabu@@cellralign \tabu@cellralign - \global\let\tabu@@rowfontreset\tabu@rowfontreset - \fi - \global\let\tabu@rowfontreset \tabu@rowfont@reset - \expandafter\gdef\expandafter\tabu@cellleft\expandafter{\tabu@cellleft #2}% - \ifcsname tabu@cell@#1\endcsname % row alignment - \csname tabu@cell@#1\endcsname \fi - \ifnum0=`{\fi}% end of group / noalign group -}% \rowfont -\def\tabu@ifcolorleavevmode #1{\let\color \tabu@leavevmodecolor #1\let\color\tabu@color}% -\def\tabu@rowfont@reset{% - \global\let\tabu@rowfontreset \tabu@@rowfontreset - \global\let\tabu@cellleft \tabu@@cellleft - \global\let\tabu@cellright \tabu@@cellright - \global\let\tabu@cellfont \@empty - \global\let\tabu@celllalign \tabu@@celllalign - \global\let\tabu@cellralign \tabu@@cellralign -}% \tabu@@rowfontreset -\let\tabu@rowfontreset \@empty % overwritten \AtBeginDocument if colortbl -%% \tabu@prepnext@tok ----------------------------------------------- -\newif \iftabu@cellright -\def\tabu@prepnext@tok{% - \ifnum \count@<\z@ % - \@tempcnta \@M % - \tabu@nbcols\z@ - \let\tabu@fornoopORI \@fornoop - \tabu@cellrightfalse - \else - \ifcase \numexpr \count@-\@tempcnta \relax % (case 0): prev. token is left - \advance \tabu@nbcols \@ne - \iftabu@cellright % before-previous token is right and is finished - \tabu@cellrightfalse % - \tabu@righttok - \fi - \tabu@lefttok - \or % (case 1) previous token is right - \tabu@cellrighttrue \let\@fornoop \tabu@lastnoop - \else % special column: do not change the token - \iftabu@cellright % before-previous token is right - \tabu@cellrightfalse - \tabu@righttok - \fi - \fi % \ifcase - \fi - \tabu@prepnext@tokORI -}% \tabu@prepnext@tok -\long\def\tabu@lastnoop#1\@@#2#3{\tabu@lastn@@p #2\@nextchar \in@\in@@} -\def\tabu@lastn@@p #1\@nextchar #2#3\in@@{% - \ifx \in@#2\else - \let\@fornoop \tabu@fornoopORI - \xdef\tabu@mkpreambuffer{\tabu@nbcols\the\tabu@nbcols \tabu@mkpreambuffer}% - \toks0\expandafter{\expandafter\tabu@everyrowtrue \the\toks0}% - \expandafter\prepnext@tok - \fi -}% \tabu@lastnoop -\def\tabu@righttok{% - \advance \count@ \m@ne - \toks\count@\expandafter {\the\toks\count@ \tabu@cellright \tabu@cellralign}% - \advance \count@ \@ne -}% \tabu@righttok -\def\tabu@lefttok{\toks\count@\expandafter{\expandafter\tabu@celllalign - \the\toks\count@ \tabu@cellleft}% after because of $ -}% \tabu@lefttok -%% Neutralisation of glues ------------------------------------------ -\let\tabu@cellleft \@empty -\let\tabu@cellright \@empty -\tabu@celllalign@def{\tabu@cellleft}% -\let\tabu@cellralign \@empty -\def\tabu@cell@align #1#2#3{% - \let\tabu@maybesiunitx \toks@ \tabu@celllalign - \global \expandafter \tabu@celllalign@def \expandafter {\the\toks@ #1}% - \toks@\expandafter{\tabu@cellralign #2}% - \xdef\tabu@cellralign{\the\toks@}% - \toks@\expandafter{\tabu@cellleft #3}% - \xdef\tabu@cellleft{\the\toks@}% -}% \tabu@cell@align -\def\tabu@cell@l{% force alignment to left - \tabu@cell@align - {\tabu@removehfil \raggedright \tabu@cellleft}% left - {\tabu@flush1\tabu@ignorehfil}% right - \raggedright -}% \tabu@cell@l -\def\tabu@cell@c{% force alignment to center - \tabu@cell@align - {\tabu@removehfil \centering \tabu@flush{.5}\tabu@cellleft} - {\tabu@flush{.5}\tabu@ignorehfil} - \centering -}% \tabu@cell@c -\def\tabu@cell@r{% force alignment to right - \tabu@cell@align - {\tabu@removehfil \raggedleft \tabu@flush1\tabu@cellleft} - \tabu@ignorehfil - \raggedleft -}% \tabu@cell@r -\def\tabu@cell@j{% force justification (for p, m, b columns) - \tabu@cell@align - {\tabu@justify\tabu@cellleft} - {} - \tabu@justify -}% \tabu@cell@j -\def\tabu@justify{% - \leftskip\z@skip \@rightskip\leftskip \rightskip\@rightskip - \parfillskip\@flushglue -}% \tabu@justify -%% ragged2e settings -\def\tabu@cell@L{% force alignment to left (ragged2e) - \tabu@cell@align - {\tabu@removehfil \RaggedRight \tabu@cellleft} - {\tabu@flush 1\tabu@ignorehfil} - \RaggedRight -}% \tabu@cell@L -\def\tabu@cell@C{% force alignment to center (ragged2e) - \tabu@cell@align - {\tabu@removehfil \Centering \tabu@flush{.5}\tabu@cellleft} - {\tabu@flush{.5}\tabu@ignorehfil} - \Centering -}% \tabu@cell@C -\def\tabu@cell@R{% force alignment to right (ragged2e) - \tabu@cell@align - {\tabu@removehfil \RaggedLeft \tabu@flush 1\tabu@cellleft} - \tabu@ignorehfil - \RaggedLeft -}% \tabu@cell@R -\def\tabu@cell@J{% force justification (ragged2e) - \tabu@cell@align - {\justifying \tabu@cellleft} - {} - \justifying -}% \tabu@cell@J -\def\tabu@flush#1{% - \iftabu@colortbl % colortbl uses \hfill rather than \hfil - \hskip \ifnum13<\currentgrouptype \stretch{#1}% - \else \ifdim#1pt<\p@ \tabu@cellskip - \else \stretch{#1} - \fi\fi \relax - \else % array.sty - \ifnum 13<\currentgrouptype - \hfil \hskip1sp \relax \fi - \fi -}% \tabu@flush -\let\tabu@hfil \hfil -\let\tabu@hfill \hfill -\let\tabu@hskip \hskip -\def\tabu@removehfil{% - \iftabu@colortbl - \unkern \tabu@cellskip =\lastskip - \ifnum\gluestretchorder\tabu@cellskip =\tw@ \hskip-\tabu@cellskip - \else \tabu@cellskip \z@skip - \fi - \else - \ifdim\lastskip=1sp\unskip\fi - \ifnum\gluestretchorder\lastskip =\@ne - \hfilneg % \hfilneg for array.sty but not for colortbl... - \fi - \fi -}% \tabu@removehfil -\def\tabu@ignorehfil{\aftergroup \tabu@nohfil} -\def\tabu@nohfil{% \hfil -> do nothing + restore original \hfil - \def\hfil{\let\hfil \tabu@hfil}% local to (alignment template) group -}% \tabu@nohfil -\def\tabu@colortblalignments {% if colortbl - \def\tabu@nohfil{% - \def\hfil {\let\hfil \tabu@hfil}% local to (alignment template) group - \def\hfill {\let\hfill \tabu@hfill}% (colortbl uses \hfill) pfff... - \def\hskip ####1\relax{\let\hskip \tabu@hskip}}% local -}% \tabu@colortblalignments -%% Taking care of footnotes and hyperfootnotes ---------------------- -\long\def\tabu@footnotetext #1{% - \edef\@tempa{\the\tabu@footnotes - \noexpand\footnotetext [\the\csname c@\@mpfn\endcsname]}% - \global\tabu@footnotes\expandafter{\@tempa {#1}}}% -\long\def\tabu@xfootnotetext [#1]#2{% - \global\tabu@footnotes\expandafter{\the\tabu@footnotes - \footnotetext [{#1}]{#2}}} -\let\tabu@xfootnote \@xfootnote -\long\def\tabu@Hy@ftntext{\tabu@Hy@ftntxt {\the \c@footnote }} -\long\def\tabu@Hy@xfootnote [#1]{% - \begingroup - \value\@mpfn #1\relax - \protected@xdef \@thefnmark {\thempfn}% - \endgroup - \@footnotemark \tabu@Hy@ftntxt {#1}% -}% \tabu@Hy@xfootnote -\long\def\tabu@Hy@ftntxt #1#2{% - \edef\@tempa{% - \the\tabu@footnotes - \begingroup - \value\@mpfn #1\relax - \noexpand\protected@xdef\noexpand\@thefnmark {\noexpand\thempfn}% - \expandafter \noexpand \expandafter - \tabu@Hy@footnotetext \expandafter{\Hy@footnote@currentHref}% - }% - \global\tabu@footnotes\expandafter{\@tempa {#2}% - \endgroup}% -}% \tabu@Hy@ftntxt -\long\def\tabu@Hy@footnotetext #1#2{% - \H@@footnotetext{% - \ifHy@nesting - \hyper@@anchor {#1}{#2}% - \else - \Hy@raisedlink{% - \hyper@@anchor {#1}{\relax}% - }% - \def\@currentHref {#1}% - \let\@currentlabelname \@empty - #2% - \fi - }% -}% \tabu@Hy@footnotetext -%% No need for \arraybackslash ! ------------------------------------ -\def\tabu@latextwoe {% -\def\tabu@temp##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} -\tabu@temp \tabu@centering \centering \arraybackslash -\tabu@temp \tabu@raggedleft \raggedleft \arraybackslash -\tabu@temp \tabu@raggedright \raggedright \arraybackslash -}% \tabu@latextwoe -\def\tabu@raggedtwoe {% -\def\tabu@temp ##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} -\tabu@temp \tabu@Centering \Centering \arraybackslash -\tabu@temp \tabu@RaggedLeft \RaggedLeft \arraybackslash -\tabu@temp \tabu@RaggedRight \RaggedRight \arraybackslash -\tabu@temp \tabu@justifying \justifying \arraybackslash -}% \tabu@raggedtwoe -\def\tabu@normalcrbackslash{\let\\\@normalcr} -\def\tabu@trivlist{\expandafter\def\expandafter\@trivlist\expandafter{% - \expandafter\tabu@normalcrbackslash \@trivlist}} -%% Utilities: \fbox \fcolorbox and \tabudecimal ------------------- -\def\tabu@fbox {\leavevmode\afterassignment\tabu@beginfbox \setbox\@tempboxa\hbox} -\def\tabu@beginfbox {\bgroup \kern\fboxsep - \bgroup\aftergroup\tabu@endfbox} -\def\tabu@endfbox {\kern\fboxsep\egroup\egroup - \@frameb@x\relax} -\def\tabu@color@b@x #1#2{\leavevmode \bgroup - \def\tabu@docolor@b@x{#1{#2\color@block{\wd\z@}{\ht\z@}{\dp\z@}\box\z@}}% - \afterassignment\tabu@begincolor@b@x \setbox\z@ \hbox -}% \tabu@color@b@x -\def\tabu@begincolor@b@x {\kern\fboxsep \bgroup - \aftergroup\tabu@endcolor@b@x \set@color} -\def\tabu@endcolor@b@x {\kern\fboxsep \egroup - \dimen@\ht\z@ \advance\dimen@ \fboxsep \ht\z@ \dimen@ - \dimen@\dp\z@ \advance\dimen@ \fboxsep \dp\z@ \dimen@ - \tabu@docolor@b@x \egroup -}% \tabu@endcolor@b@x -%% Corrections (arydshln, delarray, colortbl) ----------------------- -\def\tabu@fix@arrayright {%% \@arrayright is missing from \endarray - \iftabu@colortbl - \ifdefined\adl@array % - \def\tabu@endarray{% - \adl@endarray \egroup \adl@arrayrestore \CT@end \egroup % - \@arrayright % - \gdef\@preamble{}}% - \else % - \def\tabu@endarray{% - \crcr \egroup \egroup % - \@arrayright % - \gdef\@preamble{}\CT@end}% - \fi - \else - \ifdefined\adl@array % - \def\tabu@endarray{% - \adl@endarray \egroup \adl@arrayrestore \egroup % - \@arrayright % - \gdef\@preamble{}}% - \else % - \PackageWarning{tabu} - {\string\@arrayright\space is missing from the - \MessageBreak definition of \string\endarray. - \MessageBreak Compatibility with delarray.sty is broken.}% - \fi\fi -}% \tabu@fix@arrayright -\def\tabu@adl@xarraydashrule #1#2#3{% - \ifnum\@lastchclass=\adl@class@start\else - \ifnum\@lastchclass=\@ne\else - \ifnum\@lastchclass=5 \else % @-arg (class 5) and !-arg (class 1) - \adl@leftrulefalse \fi\fi % must be treated the same - \fi - \ifadl@zwvrule\else \ifadl@inactive\else - \@addtopreamble{\vrule\@width\arrayrulewidth - \@height\z@ \@depth\z@}\fi \fi - \ifadl@leftrule - \@addtopreamble{\adl@vlineL{\CT@arc@}{\adl@dashgapcolor}% - {\number#1}#3}% - \else \@addtopreamble{\adl@vlineR{\CT@arc@}{\adl@dashgapcolor}% - {\number#2}#3} - \fi -}% \tabu@adl@xarraydashrule -\def\tabu@adl@act@endpbox {% - \unskip \ifhmode \nobreak \fi \@finalstrut \@arstrutbox - \egroup \egroup - \adl@colhtdp \box\adl@box \hfil -}% \tabu@adl@act@endpbox -\def\tabu@adl@fix {% - \let\adl@xarraydashrule \tabu@adl@xarraydashrule % arydshln - \let\adl@act@endpbox \tabu@adl@act@endpbox % arydshln - \let\adl@act@@endpbox \tabu@adl@act@endpbox % arydshln - \let\@preamerror \@preamerr % arydshln -}% \tabu@adl@fix -%% Correction for longtable' \@startbox definition ------------------ -%% => \everypar is ``missing'' : TeX should be in vertical mode -\def\tabu@LT@startpbox #1{% - \bgroup - \let\@footnotetext\LT@p@ftntext - \setlength\hsize{#1}% - \@arrayparboxrestore - \everypar{% - \vrule \@height \ht\@arstrutbox \@width \z@ - \everypar{}}% -}% \tabu@LT@startpbox -%% \tracingtabu and the package options ------------------ -\DeclareOption{delarray}{\AtEndOfPackage{\RequirePackage{delarray}}} -\DeclareOption{linegoal}{% - \AtEndOfPackage{% - \RequirePackage{linegoal}[2010/12/07]% - \let\tabudefaulttarget \linegoal% \linegoal is \linewidth if not pdfTeX -}} -\DeclareOption{scantokens}{\tabuscantokenstrue} -\DeclareOption{debugshow}{\AtEndOfPackage{\tracingtabu=\tw@}} -\def\tracingtabu {\begingroup\@ifnextchar=% - {\afterassignment\tabu@tracing\count@} - {\afterassignment\tabu@tracing\count@1\relax}} -\def\tabu@tracing{\expandafter\endgroup - \expandafter\tabu@tr@cing \the\count@ \relax -}% \tabu@tracing -\def\tabu@tr@cing #1\relax {% - \ifnum#1>\thr@@ \let\tabu@tracinglines\message - \else \let\tabu@tracinglines\@gobble - \fi - \ifnum#1>\tw@ \let\tabu@DBG \tabu@@DBG - \def\tabu@mkarstrut {\tabu@DBG@arstrut}% - \tabustrutrule 1.5\p@ - \else \let\tabu@DBG \@gobble - \def\tabu@mkarstrut {\tabu@arstrut}% - \tabustrutrule \z@ - \fi - \ifnum#1>\@ne \let\tabu@debug \message - \else \let\tabu@debug \@gobble - \fi - \ifnum#1>\z@ - \let\tabu@message \message - \let\tabu@tracing@save \tabu@message@save - \let\tabu@starttimer \tabu@pdftimer - \else - \let\tabu@message \@gobble - \let\tabu@tracing@save \@gobble - \let\tabu@starttimer \relax - \fi -}% \tabu@tr@cing -%% Setup \AtBeginDocument -\AtBeginDocument{\tabu@AtBeginDocument} -\def\tabu@AtBeginDocument{\let\tabu@AtBeginDocument \@undefined - \ifdefined\arrayrulecolor \tabu@colortbltrue % - \tabu@colortblalignments % different glues are used - \else \tabu@colortblfalse \fi - \ifdefined\CT@arc@ \else \let\CT@arc@ \relax \fi - \ifdefined\CT@drsc@\else \let\CT@drsc@ \relax \fi - \let\tabu@arc@L \CT@arc@ \let\tabu@drsc@L \CT@drsc@ - \ifodd 1\ifcsname siunitx_table_collect_begin:Nn\endcsname % - \expandafter\ifx - \csname siunitx_table_collect_begin:Nn\endcsname\relax 0\fi\fi\relax - \tabu@siunitxtrue - \else \let\tabu@maybesiunitx \@firstofone % - \let\tabu@siunitx \tabu@nosiunitx - \tabu@siunitxfalse - \fi - \ifdefined\adl@array % - \else \let\tabu@adl@fix \relax - \let\tabu@adl@endtrial \@empty \fi - \ifdefined\longtable % - \else \let\longtabu \tabu@nolongtabu \fi - \ifdefined\cellspacetoplimit \tabu@warn@cellspace\fi - \csname\ifcsname ifHy@hyperfootnotes\endcsname % - ifHy@hyperfootnotes\else iffalse\fi\endcsname - \let\tabu@footnotetext \tabu@Hy@ftntext - \let\tabu@xfootnote \tabu@Hy@xfootnote \fi - \ifdefined\FV@DefineCheckEnd% - \tabu@fancyvrb \fi - \ifdefined\color % - \let\tabu@color \color - \def\tabu@leavevmodecolor ##1{% - \def\tabu@leavevmodecolor {\leavevmode ##1}% - }\expandafter\tabu@leavevmodecolor\expandafter{\color}% - \else - \let\tabu@color \tabu@nocolor - \let\tabu@leavevmodecolor \@firstofone \fi - \tabu@latextwoe - \ifdefined\@raggedtwoe@everyselectfont % - \tabu@raggedtwoe - \else - \let\tabu@cell@L \tabu@cell@l - \let\tabu@cell@R \tabu@cell@r - \let\tabu@cell@C \tabu@cell@c - \let\tabu@cell@J \tabu@cell@j \fi - \expandafter\in@ \expandafter\@arrayright \expandafter{\endarray}% - \ifin@ \let\tabu@endarray \endarray - \else \tabu@fix@arrayright \fi% - \everyrow{}% -}% \tabu@AtBeginDocument -\def\tabu@warn@cellspace{% - \PackageWarning{tabu}{% - Package cellspace has some limitations - \MessageBreak And redefines some macros of array.sty. - \MessageBreak Please use \string\tabulinesep\space to control - \MessageBreak vertical spacing of lines inside tabu environment}% -}% \tabu@warn@cellspace -%% tabu Package initialisation -\tabuscantokensfalse -\let\tabu@arc@G \relax -\let\tabu@drsc@G \relax -\let\tabu@evr@G \@empty -\let\tabu@rc@G \@empty -\def\tabu@ls@G {\tabu@linestyle@}% -\let\tabu@@rowfontreset \@empty % -\let\tabu@@celllalign \@empty -\let\tabu@@cellralign \@empty -\let\tabu@@cellleft \@empty -\let\tabu@@cellright \@empty -\def\tabu@naturalXmin {\z@} -\def\tabu@naturalXmax {\z@} -\let\tabu@rowfontreset \@empty -\def\tabulineon {4pt}\let\tabulineoff \tabulineon -\tabu@everyrowtrue -\ifdefined\pdfelapsedtime % - \def\tabu@pdftimer {\xdef\tabu@starttime{\the\pdfelapsedtime}}% -\else \let\tabu@pdftimer \relax \let\tabu@message@etime \relax -\fi -\tracingtabu=\z@ -\newtabulinestyle {=\maxdimen}% creates the 'factory' settings \tabu@linestyle@ -\tabulinestyle{} -\taburowcolors{} -\let\tabudefaulttarget \linewidth -\ProcessOptions* % \ProcessOptions* is quicker ! -\endinput -%% -%% End of file `tabu.sty'.