colloscope/src/algorithm.h

41 lines
1.3 KiB
C

#ifndef ALGORITHM_H_INCLUDED
#define ALGORITHM_H_INCLUDED
#include "structure.h"
bool is_equal_date(date d1, date d2);
int get_date_index(creneau* edt, int len_creneau, date d);
array get_all_date_index(creneau* edt, int len_edt, date d);
int get_next_friday(creneau* edt, int len_creneau, date d);
int get_fst_offset(creneau* edt, date d);
//bool is_allowed_MP2I(creneau* edt, int len_edt, int grp, date end);
int heuristique_MP2I(creneau* edt, int len_edt, int grp, date end);
colleur *get_colleurs(colleur *cl, int len_cl, date d, int *how_many);
void add_colle(creneau *edt, colleur *chads, int grp, int id_edt, int id_chad);
void remove_coll(creneau *edt, int id_edt);
bool is_overlap(creneau *edt, int len_edt, int id);
bool is_overlap_creneau(creneau* edt, int len_edt, int id, int grp);
int free_math_space(creneau *edt, int len_edt, int id);
void add_colles_for_group_MP2I(int *weeks_len, creneau *edt, int len_edt, colleur *chads, int len_chads, int n_weeks, int grp, topic start_rotation, int mth, int inf, int *skip_count);
void write_to_file(char *filename, creneau *edt, int len_edt);
int score(creneau *edt, int len_edt, int grp);
void aux_2(creneau *edt, int len_edt, colleur *chads, int len_chads, int n_groups, int n_weeks, int n_sim, char *outname);
#endif