2009-05-29 17:02:20 +02:00
|
|
|
#ifndef _LIBOWLPS_POSITINING_HH_
|
|
|
|
#define _LIBOWLPS_POSITINING_HH_
|
|
|
|
|
|
|
|
#include <cstdio>
|
|
|
|
#include <iostream>
|
|
|
|
#include <fstream>
|
|
|
|
#include <sstream>
|
|
|
|
#include <string>
|
|
|
|
#include <cstring>
|
|
|
|
#include <cmath>
|
|
|
|
#include <cstdlib>
|
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
|
|
|
#include <stdint.h>
|
2009-05-29 17:02:20 +02:00
|
|
|
|
|
|
|
#include <map>
|
|
|
|
#include <set>
|
|
|
|
#include <vector>
|
|
|
|
|
|
|
|
#include <ctime>
|
|
|
|
#include <sys/time.h>
|
|
|
|
|
|
|
|
#include <postgresql/libpq-fe.h>
|
|
|
|
|
|
|
|
|
|
|
|
#define DEFAULT_AP_FILE "csv/minipc.cfg"
|
|
|
|
#define DEFAULT_PT_FILE "csv/toutes.csv"
|
|
|
|
#define DEFAULT_TOPO_FILE "csv/topo.csv"
|
|
|
|
#define DEFAULT_WAYPOINT_FILE "csv/waypoints.csv"
|
|
|
|
|
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
|
|
|
#define DEFAULT_CONFIG_FILE "owlps-positioning.cfg"
|
|
|
|
|
|
|
|
#define DEFAULT_BDD_HOST "127.0.0.1"
|
|
|
|
#define DEFAULT_BDD_NAME "owlps_db"
|
|
|
|
#define DEFAULT_BDD_USER "owlps"
|
|
|
|
#define DEFAULT_BDD_PASS "owlps"
|
|
|
|
|
2009-05-29 17:02:20 +02:00
|
|
|
#define LIGHT_SPEED 300000000
|
|
|
|
#define MINMAX_STEP 0.5
|
|
|
|
#define MINMAX_X_START 0.5
|
|
|
|
#define MINMAX_Y_START 0.5
|
|
|
|
#define MINMAX_Z_START 0
|
|
|
|
#define MINMAX_X_STOP 10
|
|
|
|
#define MINMAX_Y_STOP 31.5
|
|
|
|
#define MINMAX_Z_STOP 6
|
|
|
|
|
|
|
|
typedef struct _couple_info
|
2009-12-14 15:45:16 +01:00
|
|
|
{
|
|
|
|
unsigned char ap_mac_addr_bytes[6]; // Adresse MAC de l'AP
|
|
|
|
int antenna_signal_dbm; // Puissance du signal reçu par l'AP
|
|
|
|
} couple_info;
|
2009-05-29 17:02:20 +02:00
|
|
|
|
|
|
|
typedef struct _request
|
2009-12-14 15:45:16 +01:00
|
|
|
{
|
|
|
|
unsigned char mobile_mac_addr_bytes[6]; //Adresse MAC du mobile
|
|
|
|
struct timeval request_time; // Date sur le client
|
|
|
|
int nb_couples; // Nombre couples (MAC AP;Puissance)
|
|
|
|
} request;
|
2009-05-29 17:02:20 +02:00
|
|
|
|
2010-01-04 17:10:42 +01:00
|
|
|
//using namespace std ;
|
2009-05-29 17:02:20 +02:00
|
|
|
|
|
|
|
float round_float(float f, int n);
|
|
|
|
vector<string> explode(const string &input, const char &sep);
|
|
|
|
vector<string> extractReferencePointInfoFromBuffer(const string &buffer_in);
|
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
|
|
|
uint64_t timeval_to_ms(const struct timeval &d);
|
2009-05-29 17:02:20 +02:00
|
|
|
|
|
|
|
#endif
|