Changeset 180 in flair-src for trunk/lib/FlairCore/src/GpsData.cpp


Ignore:
Timestamp:
05/31/17 15:53:32 (7 years ago)
Author:
Sanahuja Guillaume
Message:

modifs gps

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/lib/FlairCore/src/GpsData.cpp

    r51 r180  
    4949    case GpsData::EastVelocity:
    5050    case GpsData::NorthVelocity:
     51    case GpsData::Pdop:
     52    case GpsData::Hdop:
     53    case GpsData::Vdop:
    5154      size=4;
    5255      break;
     
    6265  void CopyData(char *dst) const {
    6366    double latitude,longitude;
    64     float altitude,east,north,up,eastVelocity,northVelocity;
     67    float altitude,east,north,up,eastVelocity,northVelocity,pDop,hDop,vDop;
    6568
    6669    gpsdata->GetLla(latitude,longitude,altitude);
     
    6972    gpsdata->GetEnu(east,north,up);
    7073    gpsdata->GetVelocity(eastVelocity,northVelocity);
     74    gpsdata->GetDop(pDop,hDop,vDop);
    7175
    7276    switch (plotableData) {
     
    100104    case GpsData::NorthVelocity:
    101105      memcpy(dst, &northVelocity, sizeof(northVelocity));
     106      break;
     107    case GpsData::Pdop:
     108      memcpy(dst, &pDop, sizeof(pDop));
     109      break;
     110    case GpsData::Hdop:
     111      memcpy(dst, &hDop, sizeof(hDop));
     112      break;
     113    case GpsData::Vdop:
     114      memcpy(dst, &vDop, sizeof(vDop));
    102115      break;
    103116    default:
     
    119132    case GpsData::EastVelocity:
    120133    case GpsData::NorthVelocity:
     134    case GpsData::Pdop:
     135    case GpsData::Hdop:
     136    case GpsData::Vdop:
    121137      return floatType;
    122138      break;
     
    150166  AppendLogDescription("east velocity", floatType);
    151167  AppendLogDescription("north velocity", floatType);
     168  AppendLogDescription("pdop", floatType);
     169  AppendLogDescription("hdop", floatType);
     170  AppendLogDescription("vdop", floatType);
    152171
    153172  numberOfSatellites=0;
     
    220239}
    221240
     241void GpsData::GetDop(float &inPdop, float &inHdop,float &inVdop) const {
     242  inPdop=pDop;
     243  inHdop=hDop;
     244  inVdop=vDop;
     245}
     246
     247void GpsData::SetDop(float inPdop, float inHdop,float inVdop) {
     248  pDop=inPdop;
     249  hDop=inHdop;
     250  vDop=inVdop;
     251}
     252 
    222253IODataElement *GpsData::Element(PlotableData_t data_type) const {
    223254  string name;
     
    252283  case GpsData::NorthVelocity:
    253284    name = "NorthVelocity";
     285    break;
     286  case GpsData::Pdop:
     287    name = "Pdop";
     288    break;
     289  case GpsData::Hdop:
     290    name = "Hdop";
     291    break;
     292  case GpsData::Vdop:
     293    name = "Vdop";
    254294    break;
    255295  }
     
    271311  Queue(&dst, &eastVelocity, sizeof(eastVelocity));
    272312  Queue(&dst, &northVelocity, sizeof(northVelocity));
     313  Queue(&dst, &pDop, sizeof(pDop));
     314  Queue(&dst, &hDop, sizeof(hDop));
     315  Queue(&dst, &vDop, sizeof(vDop));
    273316
    274317  ReleaseMutex();
Note: See TracChangeset for help on using the changeset viewer.