当前位置: 首页>>代码示例>>C++>>正文


C++ EngEphemeris::getL2Pdata方法代码示例

本文整理汇总了C++中EngEphemeris::getL2Pdata方法的典型用法代码示例。如果您正苦于以下问题:C++ EngEphemeris::getL2Pdata方法的具体用法?C++ EngEphemeris::getL2Pdata怎么用?C++ EngEphemeris::getL2Pdata使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在EngEphemeris的用法示例。


在下文中一共展示了EngEphemeris::getL2Pdata方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: RinexSatID

   // Deprecated; used GPSEphemeris.
   // This routine uses EngEphemeris, so is for GPS data only.
   // The comments about GPS v. Galileo next to each elements are just notes
   // from sorting out the ICDs in the RINEX 3 documentation. Please leave
   // them there until we add a routine for handling GalRecord or similar.
   Rinex3NavData::Rinex3NavData(const EngEphemeris& ee) // GPS only
   {
      // epoch info
      satSys = ee.getSatSys();
      PRNID  = ee.getPRNID();
      sat    = RinexSatID(PRNID,SatID::systemGPS);
      time   = ee.getEpochTime();

      Toc     = ee.getToc();
      HOWtime = long(ee.getHOWTime(1));
      weeknum = ee.getFullWeek();

      accuracy = ee.getAccuracy();
      health   = ee.getHealth();

      // GPS or Galileo data

      af0 = ee.getAf0(); // GPS and Galileo only
      af1 = ee.getAf1(); // GPS and Galileo only
      af2 = ee.getAf2(); // GPS and Galileo only

      Crs = ee.getCrs(); // GPS and Galileo only
      dn  = ee.getDn();  // GPS and Galileo only
      M0  = ee.getM0();  // GPS and Galileo only

      Cuc   = ee.getCuc();   // GPS and Galileo only
      ecc   = ee.getEcc();   // GPS and Galileo only
      Cus   = ee.getCus();   // GPS and Galileo only
      Ahalf = ee.getAhalf(); // GPS and Galileo only

      Toe    = ee.getToe();    // GPS and Galileo only
      Cic    = ee.getCic();    // GPS and Galileo only
      OMEGA0 = ee.getOmega0(); // GPS and Galileo only
      Cis    = ee.getCis();    // GPS and Galileo only

      i0       = ee.getI0();       // GPS and Galileo only
      Crc      = ee.getCrc();      // GPS and Galileo only
      w        = ee.getW();        // GPS and Galileo only
      OMEGAdot = ee.getOmegaDot(); // GPS and Galileo only

      idot = ee.getIDot(); // GPS and Galileo only

      // GPS-only data

      IODE = ee.getIODE(); // GPS only

      codeflgs = ee.getCodeFlags(); // GPS only
      L2Pdata  = ee.getL2Pdata();   // GPS only

      Tgd  = ee.getTgd();  // GPS only
      IODC = ee.getIODC(); // GPS only

      fitint = ee.getFitInterval(); // GPS only
   }  // End of 'Rinex3NavData::Rinex3NavData(const EngEphemeris& ee)'
开发者ID:JC5005,项目名称:GPSTk,代码行数:59,代码来源:Rinex3NavData.cpp

示例2: process

void MinSfTest::process()
{
   if (debugLevel)
      cout << "Setting up input file: " 
           <<  inputOption.getValue().front() << endl;
   FileFilterFrame<FICStream, FICData>
      input(inputOption.getValue().front());
   
   printf(" input.getDataCount() after init: %d\n", input.getDataCount());
   if(debugLevel)
      cout << "Setting up output file: "
           << outputOption.getValue().front() << endl;
           
   fp.open( outputOption.getValue().front().c_str() );
   if ( !fp.is_open() )
   {
      printf(" Failed to open output file.\n");
      exit(1);
   }
           
      // filter the FIC data for the requested vlock(s)
   std::list<long> blockList;
   blockList.push_back(109);
   input.filter(FICDataFilterBlock(blockList));
   input.sort(FICDataOperatorLessThanBlock109());
   input.unique(FICDataUniqueBlock109());
   
      //some hand waving for the data conversion
   if(debugLevel)
      cout << "Reading the input data." << endl;
   list<FICData>& ficList = input.getData();
   list<FICData>::iterator itr = ficList.begin();
   
   DayTime earliest( DayTime::END_OF_TIME );
   DayTime latest( DayTime::BEGINNING_OF_TIME );
   int count = 0;
   int numMismatches = 0;
   int numMismatchEph = 0; 
   while (itr != ficList.end())
   {
      EngEphemeris ee(*itr);

      bc109.addEphemeris( ee );

      DayTime ct = ee.getEpochTime();
      if (ct>latest) latest = ct;
      if (ct<earliest) earliest = ct;
      
         // Following code simulates a situation where only words 3-10
         // and the estimated time of receipt are available.
      DayTime timeOfReceipt = ee.getTransmitTime();
      FICData& fic = *itr;
      long sf1min[8];
      long sf2min[8];
      long sf3min[8];
      int wrdCnt = 8;
      int i;
      for (i=0; i<wrdCnt; ++i) sf1min[i] = fic.i[4+i];   
      for (i=0; i<wrdCnt; ++i) sf2min[i] = fic.i[14+i];   
      for (i=0; i<wrdCnt; ++i) sf3min[i] = fic.i[24+i];  

      EngEphemeris eeMin;
      short PRNID = (short) fic.i[1];
      eeMin.addIncompleteSF1Thru3( sf1min, sf2min, sf3min,
             (long) timeOfReceipt.GPSsecond(), timeOfReceipt.GPSfullweek(),
             PRNID, 0 );
      minRaw.addEphemeris( eeMin );
      
         // Compare non-orbit portions of the two objects
      bool mismatch = false;
      for (int i=1; i<=3; ++i)
      {
         if (!ee.isData(i) || !eeMin.isData(i))
         {
            mismatch = true;
            fp << "ERROR: not all subframes are claimed available.";
         }
      }
      
      if (ee.getIODC()!=eeMin.getIODC()) 
      {
         mismatch = true;
         fp << "ERROR: IODCs do not match."; 
      }
      if (ee.getIODE()!=eeMin.getIODE()) 
      {
         mismatch = true;
         fp << "ERROR: IODCs do not match."; 
      }
      if (ee.getFitInterval() != eeMin.getFitInterval() )
      {
         mismatch = true;
         fp << "ERROR: fit intervals do not match.";
      }
      if (ee.getCodeFlags()!=eeMin.getCodeFlags() )
      {
         mismatch = true;
         fp << "ERROR: code flags do not match.";
      }
      if (ee.getL2Pdata()!=eeMin.getL2Pdata() )
//.........这里部分代码省略.........
开发者ID:loongfee,项目名称:ossim-svn,代码行数:101,代码来源:MinSfTest.cpp


注:本文中的EngEphemeris::getL2Pdata方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。