10 #include <sysio/defs.h> 106 #define GPS_ISNAN(x) ((x) != (x)) 115 eGpsArgumentError = -1,
118 eGpsMemoryError = -4,
119 eGpsServerError = -5,
157 #ifndef STATUS_DGPS_FIX 158 #define STATUS_DGPS_FIX 2 209 struct xGps *
xGpsNew (
char * server,
char * port);
333 char *
cGpsAngleToStr (eGpsAngleFormat format,
double f,
char * str,
size_t strsize);
405 int iGpsPrintData (
struct xGps * gps, eGpsTimeFormat eTime, eGpsAngleFormat eDeg);
415 int iGpsRead (
struct xGps * gps,
struct gps_data_t * data);
eGpsMode eGpsFixMode(struct xGps *gps)
Mode de positionnement (2D/3D)
Fixé en 3 dimensions (latitude/longitude/altitude)
char * cGpsAngleToStr(eGpsAngleFormat format, double f, char *str, size_t strsize)
Convertit un angle en degrés décimaux en son équivalent humain.
Fixé avec GPS différentiel.
eGpsError
Liste des erreurs.
Fixé en 2 dimensions (latitude/longitude)
double dGpsLongitude(struct xGps *gps)
Longitude en degrés décimaux (+E/-W)
void vGpsClearFixCallback(struct xGps *gps)
Invalide le gestionnaire de fix.
eGpsTimeFormat
Liste des formats d'affichage de date/heure.
const char * cGpsStrError(struct xGps *gps)
Message d'erreur.
double dGpsClimb(struct xGps *gps)
Vitesse verticale par rapport à la terre en mètres par seconde (m/s)
double dGpsAltitudeError(struct xGps *gps)
Erreur position verticale (Altitude) en mètres (+/-)
void(* vGpsErrorCallback)(int error)
Fonction de gestion des erreurs.
double dGpsTimeError(struct xGps *gps)
Erreur sur l'heure en secondes.
char * cGpsTimeToStr(eGpsTimeFormat format, timestamp_t t)
Convertit un temps système en son équivalent humain.
int iGpsError(struct xGps *gps)
Code d'erreur.
double dGpsAltitude(struct xGps *gps)
Altitude en mètres Valide uniquement en mode 3D.
void vGpsDelete(struct xGps *gps)
Fermeture et destruction d'un GPS.
void vGpsClearErrorCallback(struct xGps *gps)
Invalide le gestionnaire d'erreur.
eGpsAngleFormat
Liste des formats d'affichage de laltitude/longitude.
double dGpsLongitudeError(struct xGps *gps)
Erreur position X (Longitude) en mètres (+/-)
eGpsStatus eGpsFixStatus(struct xGps *gps)
Etat du GPS.
Fixé sans GPS différentiel.
double dGpsTrack(struct xGps *gps)
Cap/Route en degrés par rapport au Nord vrai.
bool bGpsIsFix(struct xGps *gps)
Indique si le GPS est fixé
DDMM.mmX: X -> N(+) ou S(-)
Mode pas encore disponible.
int iGpsRead(struct xGps *gps, struct gps_data_t *data)
Copie les données de position dans une structure gps_data_t.
eGpsStatus
Différents états du récepteur GPS.
bool bGpsDataAvailable(struct xGps *gps)
Indique que des données de position sont disponibles.
timestamp_t tGpsTime(struct xGps *gps)
Heure de la position (fix time)
double dGpsSpeed(struct xGps *gps)
Vitesse horizontale par rapport à la terre en mètres par seconde (m/s)
double dGpsLatitude(struct xGps *gps)
Latitude en degrés décimaux (+N/-S)
void(* vGpsFixCallback)(struct xGps *gps)
Fonction de gestion des événements de fix.
Heure au format APRS (GMT)
int iGpsSetFixCallback(struct xGps *gps, vGpsFixCallback callback)
Installe le gestionnairede fix.
double dGpsClimbError(struct xGps *gps)
Erreur de vitesse verticale en m/s (+/-)
double dGpsSpeedError(struct xGps *gps)
Erreur de vitesse horizontale en m/s (+/-)
DDDMM.mmX: X -> E(+) ou W(-)
int iGpsPrintData(struct xGps *gps, eGpsTimeFormat eTime, eGpsAngleFormat eDeg)
Affiche les données essentielles du dernier fix.
Classe permettant de manipuler un GPS Classe opaque pour l'utilisateur.
double dGpsLatitudeError(struct xGps *gps)
Erreur position Y (Latitude) en mètres (+/-)
struct xGps * xGpsNew(char *server, char *port)
Création d'un GPS.
int iGpsSetErrorCallback(struct xGps *gps, vGpsErrorCallback callback)
Installe le gestionnaire d'erreur.
eGpsMode
Liste des modes du GPS.
double dGpsTrackError(struct xGps *gps)
Erreur de cap en degrés (+/-)