PNBGalFNavDataFactory.hpp
Go to the documentation of this file.
1 //==============================================================================
2 //
3 // This file is part of GNSSTk, the ARL:UT GNSS Toolkit.
4 //
5 // The GNSSTk is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU Lesser General Public License as published
7 // by the Free Software Foundation; either version 3.0 of the License, or
8 // any later version.
9 //
10 // The GNSSTk is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public
16 // License along with GNSSTk; if not, write to the Free Software Foundation,
17 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
18 //
19 // This software was developed by Applied Research Laboratories at the
20 // University of Texas at Austin.
21 // Copyright 2004-2022, The Board of Regents of The University of Texas System
22 //
23 //==============================================================================
24 
25 
26 //==============================================================================
27 //
28 // This software was developed by Applied Research Laboratories at the
29 // University of Texas at Austin, under contract to an agency or agencies
30 // within the U.S. Department of Defense. The U.S. Government retains all
31 // rights to use, duplicate, distribute, disclose, or release this software.
32 //
33 // Pursuant to DoD Directive 523024
34 //
35 // DISTRIBUTION STATEMENT A: This software has been approved for public
36 // release, distribution is unlimited.
37 //
38 //==============================================================================
39 #ifndef GNSSTK_PNBGALFNAVDATAFACTORY_HPP
40 #define GNSSTK_PNBGALFNAVDATAFACTORY_HPP
41 
42 #include "PNBNavDataFactory.hpp"
43 #include "GalFNavAlm.hpp"
44 #include "GalFNavHealth.hpp"
45 
46 namespace gnsstk
47 {
49 
50 
63  {
64  public:
73  bool addData(const PackedNavBitsPtr& navIn, NavDataPtrList& navOut,
74  double cadence = -1)
75  override;
76 
91  bool processEph(unsigned pageType, const PackedNavBitsPtr& navIn,
92  NavDataPtrList& navOut);
93 
105  bool processAlm(unsigned pageType, const PackedNavBitsPtr& navIn,
106  NavDataPtrList& navOut);
107 
108 
178  bool processAlmOrb(const std::vector<PackedNavBitsPtr>& almPage,
179  GalFNavAlm *alm, GalFNavHealth *hp1,
180  int ptA, int ptB,
181  int asiSVID, int asbSVID,
182  int asidAhalf, int asbdAhalf,
183  int asiEcc, int asbEcc,
184  int asiw, int asbw,
185  int asidi, int asbdi,
186  int asiOMEGAdot, int asbOMEGAdot,
187  int asiM0, int asbM0,
188  int asiaf0, int asbaf0,
189  int asiaf1, int asbaf1,
190  int asiE5ahs, int asbE5ahs);
191 
198  void resetState() override;
199 #if 0
200 
203  void dumpState(std::ostream& s) const;
204 #endif
205 
206  protected:
210  std::map<NavSatelliteID, std::vector<PackedNavBitsPtr> > almAcc;
213  std::map<NavSatelliteID, std::vector<PackedNavBitsPtr> > ephAcc;
214  };
215 
217 
218 } // namespace gnsstk
219 
220 #endif // GNSSTK_PNBGALFNAVDATAFACTORY_HPP
gnsstk::PNBGalFNavDataFactory::resetState
void resetState() override
Definition: PNBGalFNavDataFactory.cpp:618
gnsstk::PackedNavBitsPtr
std::shared_ptr< PackedNavBits > PackedNavBitsPtr
Managed pointer for passing PackedNavBits around.
Definition: PackedNavBits.hpp:66
gnsstk::GalFNavAlm
Class containing data elements unique to Galileo F/NAV almanacs.
Definition: GalFNavAlm.hpp:52
gnsstk::GalFNavHealth
Definition: GalFNavHealth.hpp:53
gnsstk::PNBGalFNavDataFactory
Definition: PNBGalFNavDataFactory.hpp:62
GalFNavHealth.hpp
gnsstk::NavDataPtrList
std::list< NavDataPtr > NavDataPtrList
Definition: NavData.hpp:75
gnsstk::gpscnav2::asbaf0
@ asbaf0
af0 start bit
Definition: GPSC2Bits.hpp:369
gnsstk::PNBNavDataFactory::processAlm
bool processAlm
If true, almanac data will be output by addData.
Definition: PNBNavDataFactory.hpp:126
gnsstk
For Sinex::InputHistory.
Definition: BasicFramework.cpp:50
gnsstk::gpscnav2::asbw
@ asbw
w start bit
Definition: GPSC2Bits.hpp:361
gnsstk::PNBGalFNavDataFactory::addData
bool addData(const PackedNavBitsPtr &navIn, NavDataPtrList &navOut, double cadence=-1) override
Definition: PNBGalFNavDataFactory.cpp:57
gnsstk::PNBGalFNavDataFactory::processAlmOrb
bool processAlmOrb(const std::vector< PackedNavBitsPtr > &almPage, GalFNavAlm *alm, GalFNavHealth *hp1, int ptA, int ptB, int asiSVID, int asbSVID, int asidAhalf, int asbdAhalf, int asiEcc, int asbEcc, int asiw, int asbw, int asidi, int asbdi, int asiOMEGAdot, int asbOMEGAdot, int asiM0, int asbM0, int asiaf0, int asbaf0, int asiaf1, int asbaf1, int asiE5ahs, int asbE5ahs)
Definition: PNBGalFNavDataFactory.cpp:514
PNBNavDataFactory.hpp
gnsstk::PNBNavDataFactory::processEph
bool processEph
If true, ephemeris data will be output by addData.
Definition: PNBNavDataFactory.hpp:124
gnsstk::gpscnav2::asbM0
@ asbM0
M0 start bit.
Definition: GPSC2Bits.hpp:365
gnsstk::gpscnav2::asbdi
@ asbdi
delta i start bit
Definition: GPSC2Bits.hpp:345
gnsstk::gpscnav2::asbaf1
@ asbaf1
af1 start bit
Definition: GPSC2Bits.hpp:373
gnsstk::bds::asbEcc
@ asbEcc
Eccentricity.
Definition: BDSD1Bits.hpp:130
gnsstk::PNBGalFNavDataFactory::ephAcc
std::map< NavSatelliteID, std::vector< PackedNavBitsPtr > > ephAcc
Definition: PNBGalFNavDataFactory.hpp:213
gnsstk::gpscnav2::asbOMEGAdot
@ asbOMEGAdot
OMEGAdot start bit.
Definition: GPSC2Bits.hpp:349
GalFNavAlm.hpp
gnsstk::PNBGalFNavDataFactory::almAcc
std::map< NavSatelliteID, std::vector< PackedNavBitsPtr > > almAcc
Definition: PNBGalFNavDataFactory.hpp:210
gnsstk::PNBNavDataFactory
Definition: PNBNavDataFactory.hpp:61


gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:40