-
Pep Martí Saumell authored
Added default values into allocateEphemeris functions
Pep Martí Saumell authoredAdded default values into allocateEphemeris functions
navigation.h 2.24 KiB
#ifndef NAVIGATION_H
#define NAVIGATION_H
#include <vector>
#include <iostream>
#include <memory>
extern "C"
{
#include "../deps/RTKLIB/src/rtklib.h"
}
namespace GNSSUtils
{
class Navigation
{
public:
// Constructor & Destructor
Navigation();
~Navigation();
// Public objects
// Public methods
void clearNavigation();
void setNavigation(nav_t nav);
nav_t getNavigation();
/****************** Array memory management ******************/
// Ephemeris
void allocateEphemeris(int n_sat = MAXSAT);
void deleteEphemeris();
void allocateGLONASSEphemeris(int n_sat = NSATGLO);
void deleteGLONASSEphemeris();
void allocateSBASEphemeris(int n_sat = NSATSBS*2); //SBAS
void deleteSBASEphemeris();
void allocateAlmanac(int n_sat = MAXSAT);
void deleteAlmanac();
// UTC
void allocateUTCGPS(int n); //GPS
void deleteUTCGPS();
void allocateUTCGlo(int n); // Glo
void deleteUTCGlo();
void allocateUTCGal(int n); // Galileo
void deleteUTCGal();
void allocateUTCQZS(int n); // QZS
void deleteUTCQZS();
void allocateUTCCMP(int n); // BeiDou
void deleteUTCCMP();
void allocateUTCSBAS(int n); // SBAS
void deleteUTCSBAS();
// Ionosphere
void allocateIonGPS(int n); // GPS
void deleteIonGPS();
void allocateIonGal(int n); // Galileo
void deleteIonGal();
void allocateIonQZS(int n); // QZS
void deleteIonQZS();
void allocateIonCMP(int n); // BeiDou
void deleteIonCMP();
//Others
void allocatelam(int n);
void deletelam();
void allocatecbias(int n);
void deletecbias();
void allocatewlbias(int n);
void deletewlbias();
void allocateglocpbias(int n);
void deleteglocpbias();
void allocateglofcn(int n);
void deleteglofcn();
void allocatepcv(int n);
void deletepcv();
void allocatesbsion(int n);
void deletesbsion();
private:
// rtklib-like attribute to represent the different navigation msgs for a given epoch
nav_t _nav;
// Private methods
};
}
#endif