This repository has been archived on 2023-11-03. You can view files and clone it, but cannot push or open issues or pull requests.
GINPA/Modele/load.h

32 lines
1.2 KiB
C

#pragma once
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include "../Headers/structures.h"
#define BUFSIZE 100 /* Nombre max de caractères récupérés sur une ligne */
/**
* @brief Charge les logs de localisation en mémoire
*
* La fonction traite le fichier de logs et fait correspondre chaque ligne à une struture 'Point'.
* Le double pointeur tabPoint DOIT être free à la fin de son utilisation !
*
* @param logsName Chemin + nom du fichier de logs.
* @param tabPoint Pointeur sur lequel tout le fichier va être chargé.
* @param nbLigne Pointeur sur une variable qui contiendra le nombre de structures allouées dans 'tabPoint'.
* @return Retourne une valeur d'erreur définie dans 'structures.h'. LOAD_SUCCESS en cas de réussite.
*/
ErrEnum loadLogs(const char *logsName, Point **tabPoint, uint32_t *nbLigne);
/**
* @brief Traite la ligne envoyée en argument pour la charger dans une structure Point
*
* @param line Ligne à traiter.
* @param point Structure qui va recevoir l'information de la ligne.
* @return Booléen. False si problème de parsage. True si réussite de la lecture de la ligne.
*/
bool convertLine(char *line, Point *point);