2009-05-29 14:31:10 +02:00
# include "owlps-positioning.hh"
int main ( int argc , char * * argv )
{
2009-07-03 14:29:40 +02:00
string config_filename = DEFAULT_CONFIG_FILE ;
2009-05-29 17:02:20 +02:00
int port , mport ;
2009-05-29 14:31:10 +02:00
2009-07-03 14:29:40 +02:00
/* Options spécifiques à la ligne de commandes */
po : : options_description generic ( " Options générales " ) ;
generic . add_options ( )
( " help,h " , " Affichage de l'aide " )
( " config-file,f " , po : : value < string > ( ) , " Fichier de configuration " )
( " input-topo,T " , po : : value < string > ( ) , " Input file topology " )
( " input-waypoint,W " , po : : value < string > ( ) , " Input file waypoint " )
( " input-refpoint,R " , po : : value < string > ( ) , " Input file reference point " )
( " input-ap,A " , po : : value < string > ( ) , " Input file accesspoint " )
2009-05-29 17:02:20 +02:00
;
2009-07-03 14:29:40 +02:00
/* Options ligne de commandes & fichier de configuration */
po : : options_description config ( " Paramètres " ) ;
config . add_options ( )
( " server.port,l " , po : : value < int > ( & port ) - > default_value ( 9902 ) , " Port d'écoute du serveur " )
( " server.mobile-port,p " , po : : value < int > ( & mport ) - > default_value ( 9903 ) , " Port d'envoi vers le mobile " )
( " db.name,D " , po : : value < string > ( ) , " Nom de la base de données à utiliser " )
( " db.host,H " , po : : value < string > ( ) , " Adresse de l'hôte hébergeant la base de données " )
( " db.user,U " , po : : value < string > ( ) , " Nom de l'utilisateur pour la connexion à la base de données " )
( " db.passwd,P " , po : : value < string > ( ) , " Mot de passe pour la connexion à la base de données " )
;
2009-05-29 17:02:20 +02:00
2009-07-03 14:29:40 +02:00
/* Total des options acceptées en ligne de commandes */
po : : options_description cmd_line_options ( " Options acceptées " ) ;
cmd_line_options . add ( generic ) . add ( config ) ;
Incorporation de la dernière version de Julien
Extrait de son courriel :
« Par rapport à la précédente j'ai surtout corrigé des bugs. »
Note : la version du listener portable sur Fonera, envoyée en même temps
par Julien, viendra plus tard (le temps que je l'incorpore).
Détail des changements après analyse du code :
aggregator : correction de bogues.
positioning :
* Ajout d'un fichier de config format boost (cfg/config.cfg).
* Makefile : implantation des cibles "install" et "uninstall" ; la cible
"astyle" devient "style".
* accesspoint.{hh,cc}, area.cc, measurement.hh, point.{hh,cc},
referencepoint.{hh,cc} : cosmétique.
* owlps-positioning.c : correction de la lecture du fichier de config
(ajout d'une option permettant de spécifier un fichier alternatif).
* server.cc : essentiellement correction des requêtes.
* libowlps-positioning.{hh,cc} : passage de "unsigned long long" à
"uint64_t" comme type de retour de timeval_to_ms().
writeInDb :
* Ajout de la gestion d'un fichier de config.
* Ajout de deux scripts pour la BDD.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@96 785a6c6c-259e-4ff1-8b91-dc31627914f0
2009-07-01 15:39:58 +02:00
2009-07-03 14:29:40 +02:00
/* Parcours de la ligne de commandes */
po : : variables_map vm ;
po : : store ( po : : parse_command_line ( argc , argv , cmd_line_options ) , vm ) ;
Incorporation de la dernière version de Julien
Extrait de son courriel :
« Par rapport à la précédente j'ai surtout corrigé des bugs. »
Note : la version du listener portable sur Fonera, envoyée en même temps
par Julien, viendra plus tard (le temps que je l'incorpore).
Détail des changements après analyse du code :
aggregator : correction de bogues.
positioning :
* Ajout d'un fichier de config format boost (cfg/config.cfg).
* Makefile : implantation des cibles "install" et "uninstall" ; la cible
"astyle" devient "style".
* accesspoint.{hh,cc}, area.cc, measurement.hh, point.{hh,cc},
referencepoint.{hh,cc} : cosmétique.
* owlps-positioning.c : correction de la lecture du fichier de config
(ajout d'une option permettant de spécifier un fichier alternatif).
* server.cc : essentiellement correction des requêtes.
* libowlps-positioning.{hh,cc} : passage de "unsigned long long" à
"uint64_t" comme type de retour de timeval_to_ms().
writeInDb :
* Ajout de la gestion d'un fichier de config.
* Ajout de deux scripts pour la BDD.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@96 785a6c6c-259e-4ff1-8b91-dc31627914f0
2009-07-01 15:39:58 +02:00
2009-07-03 14:29:40 +02:00
if ( vm . count ( " help " ) ) // L'utilisateur a demandé l'aide
Incorporation de la dernière version de Julien
Extrait de son courriel :
« Par rapport à la précédente j'ai surtout corrigé des bugs. »
Note : la version du listener portable sur Fonera, envoyée en même temps
par Julien, viendra plus tard (le temps que je l'incorpore).
Détail des changements après analyse du code :
aggregator : correction de bogues.
positioning :
* Ajout d'un fichier de config format boost (cfg/config.cfg).
* Makefile : implantation des cibles "install" et "uninstall" ; la cible
"astyle" devient "style".
* accesspoint.{hh,cc}, area.cc, measurement.hh, point.{hh,cc},
referencepoint.{hh,cc} : cosmétique.
* owlps-positioning.c : correction de la lecture du fichier de config
(ajout d'une option permettant de spécifier un fichier alternatif).
* server.cc : essentiellement correction des requêtes.
* libowlps-positioning.{hh,cc} : passage de "unsigned long long" à
"uint64_t" comme type de retour de timeval_to_ms().
writeInDb :
* Ajout de la gestion d'un fichier de config.
* Ajout de deux scripts pour la BDD.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@96 785a6c6c-259e-4ff1-8b91-dc31627914f0
2009-07-01 15:39:58 +02:00
{
2009-07-03 14:29:40 +02:00
cout < < cmd_line_options < < endl ;
return 0 ;
Incorporation de la dernière version de Julien
Extrait de son courriel :
« Par rapport à la précédente j'ai surtout corrigé des bugs. »
Note : la version du listener portable sur Fonera, envoyée en même temps
par Julien, viendra plus tard (le temps que je l'incorpore).
Détail des changements après analyse du code :
aggregator : correction de bogues.
positioning :
* Ajout d'un fichier de config format boost (cfg/config.cfg).
* Makefile : implantation des cibles "install" et "uninstall" ; la cible
"astyle" devient "style".
* accesspoint.{hh,cc}, area.cc, measurement.hh, point.{hh,cc},
referencepoint.{hh,cc} : cosmétique.
* owlps-positioning.c : correction de la lecture du fichier de config
(ajout d'une option permettant de spécifier un fichier alternatif).
* server.cc : essentiellement correction des requêtes.
* libowlps-positioning.{hh,cc} : passage de "unsigned long long" à
"uint64_t" comme type de retour de timeval_to_ms().
writeInDb :
* Ajout de la gestion d'un fichier de config.
* Ajout de deux scripts pour la BDD.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@96 785a6c6c-259e-4ff1-8b91-dc31627914f0
2009-07-01 15:39:58 +02:00
}
2009-05-29 17:02:20 +02:00
2009-07-03 14:29:40 +02:00
if ( vm . count ( " config-file " ) ) // L'utilisateur a spécifié un fichier de config
2009-07-03 14:32:22 +02:00
config_filename = vm [ " config-file " ] . as < string > ( ) ;
2009-07-03 14:29:40 +02:00
ifstream ifs ( config_filename . c_str ( ) ) ;
if ( ! ifs . is_open ( ) )
cerr < < " Attention ! Erreur lors de l'ouverture du fichier de configuration « " < < config_filename < < " » : le fichier n'existe pas ou ne peut être lu. \n Utilisation des valeurs par défaut... " < < endl ;
else // Parcours du fichier de config
po : : store ( po : : parse_config_file ( ifs , config ) , vm ) ;
po : : notify ( vm ) ;
2009-05-29 14:31:10 +02:00
Incorporation de la dernière version de Julien
Extrait de son courriel :
« Par rapport à la précédente j'ai surtout corrigé des bugs. »
Note : la version du listener portable sur Fonera, envoyée en même temps
par Julien, viendra plus tard (le temps que je l'incorpore).
Détail des changements après analyse du code :
aggregator : correction de bogues.
positioning :
* Ajout d'un fichier de config format boost (cfg/config.cfg).
* Makefile : implantation des cibles "install" et "uninstall" ; la cible
"astyle" devient "style".
* accesspoint.{hh,cc}, area.cc, measurement.hh, point.{hh,cc},
referencepoint.{hh,cc} : cosmétique.
* owlps-positioning.c : correction de la lecture du fichier de config
(ajout d'une option permettant de spécifier un fichier alternatif).
* server.cc : essentiellement correction des requêtes.
* libowlps-positioning.{hh,cc} : passage de "unsigned long long" à
"uint64_t" comme type de retour de timeval_to_ms().
writeInDb :
* Ajout de la gestion d'un fichier de config.
* Ajout de deux scripts pour la BDD.
git-svn-id: https://pif.pu-pm.univ-fcomte.fr/svn/loc@96 785a6c6c-259e-4ff1-8b91-dc31627914f0
2009-07-01 15:39:58 +02:00
Server server ( port , mport ) ;
2009-07-03 14:29:40 +02:00
if ( server . init ( vm ) )
return 1 ;
2009-05-29 17:02:20 +02:00
2009-05-29 14:31:10 +02:00
server . start ( ) ;
return 0 ;
}