server.{hh,cc} :
* Changé le comportement des fonctions pointIndex() et pointExists() :
pointIndex() renvoie -1 si le point n'est pas trouvé, et pointExists()
effectue un appel à pointIndex(). Passage de toutes ces fonctions en
inline.
* Déplacement des fonctions point_tab_idx() et point_vector_idx() dans
la classe Server, en tant que variantes de pointIndex().
* Utilisation, pour les bibliothèques C, des en-têtes C++ (e.g <cmath>)
plutôt que les en-têtes C (e.g <math.h>).
* Correction des fonctions areaConnection() qui utilisaient la mauvaise
liste de points.
* Diverses corrections mineures.
* Modification de la fonction makeWaypointListFromFile() afin de prendre
en compte la topologie dans le calcul des distances.
* Ajout de la fonction inTheSameArea(), qui permet de savoir si deux
points appartiennent à la même zone.
* Ajout de la fonction checkTopology() qui effectues quelques
vérifications sur la topologie du bâtiment déclarée dans les fichiers
de configuration.
area.cc :
* Modification du constructeur de manière à ce qu'il accepte tous les
formats possibles de définitions des zones (4 ordres possibles pour
les coordonnées).
point.{hh,cc} :
* Modification de l'operator< pour que la comparaison ne soit pas
ambigüe (posait problème dans les set).
* Modification des autres opérateurs, ajout des opérateurs <= et >=.
cfg/ :
* waypoints.csv : ajout des points de passage du rez-de-chaussée et des
escaliers.
* topo.csv : ajout des zones du rez-de-chaussée et des escaliers.
Makefile :
* Suppression d'options inutiles.
* Suppression de l'option d'optimisation, qui causait une boucle infinie
bizarre : cf. Server::makeWaypointListFromFile().
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@48 785a6c6c-259e-4ff1-8b91-dc31627914f0
point.{hh,cc} :
* Ajout d'un constructeur à partir d'un tableau de 3 float.
* Ajout de operator<(), obligatoire pour le bon fonctionnement des map
avec un Point comme clef. Ajout de operator>(), tant qu'on y est.
server.{hh,cc} :
* Ajout de point_tab_idx(), qui renvoie l'indice d'un Point au sein d'un
tableau.
* Ajout de makeTopologyFromFile(), qui lit le fichier contenant la
description des pièces.
* Ajout de makeWaypointDistancesFromFile(), qui lit le fichier contenant
la description des liens entre les points de référence. TODO :
possibilité d'optimiser en construisant la matrice d'un seul coup (?).
area.{hh,cc} :
* Correction pour intégration (classe non utilisée jusqu'à présent).
* Utilisation de références constantes pour les passages de paramètres.
* Ajout de &operator<<() pour l'affichage.
Fichiers de config :
* cfg/distances.csv : complément et complément d'explication.
* cfg/topo.csv : syntaxe + ajout des coordonnées Z2.
Makefile :
* Légère amélioration au niveau de la généricité.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@40 785a6c6c-259e-4ff1-8b91-dc31627914f0
Partout où cela était possible :
* Utilisation du passage de paramètre aux fonctions par référence
constante plutôt que par valeur.
server.cc/hh :
* Suppression de l'ancienne ébauche de Fred viterbiLike().
* Création de la fonction fastViterbiLike() (Viterbi-like optimisé).
* Fonctions getkWeightedInSs() et getkClosestInSs() : simplification du
traitement des points ignorés (suppression du booléen et passage du
point à ignorer en pointeur, de manière à permettre une valeur NULL).
Création de surcharges pour un appel sans point à ignorer.
* Lecture de trois coordonnées (X;Y;Z) au lieu de deux (X;Y) depuis le
fichier des points de référence (fonctions
makeReferencePointListFromFile() et
extractReferencePointInfoFromBuffer()).
* Lecture des fichiers au format « Matteo » (une ligne par agrégation).
Le format « Fred » (une ligne par AP par agrégation) est toujours
supporté (via #define FRED_CSV_FORMAT).
* Ajout d'affichages supplémentaires pour le déboguage.
clientinfo.cc/hh :
* Modifications des attributs pour l'algorithme Viterbi-like.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@29 785a6c6c-259e-4ff1-8b91-dc31627914f0
Partout où cela était possible :
* Indentation "Emacs" du code, aération.
* Utilisation de #define pour les valeurs par défaut.
* Utilisation des valeurs par défaut dans les constructeurs.
server.cc/hh :
* Gestion d'erreur basique pour les ouvertures de fichiers.
Ajout du TODO, d'après celui fait par Fred sous format papier.
Création des répertoires :
* cfg : fichiers de configuration.
* csv : fichiers d'entrée.
* log : fichiers de sortie.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@28 785a6c6c-259e-4ff1-8b91-dc31627914f0
Projet d'origine, plein de bugs et pas fini.
Avant import du serveur GuiNuMo.
Plein de choses à faire.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@26 785a6c6c-259e-4ff1-8b91-dc31627914f0