1 /** @warning This code is automatically generated. 2 * 3 * DO NOT EDIT THIS CODE BY HAND. 4 * 5 * Refer to the documenation in the toolkit_docs gitlab project. 6 */ 7 8 //============================================================================== 9 // 10 // This file is part of GPSTk, the GPS Toolkit. 11 // 12 // The GPSTk is free software; you can redistribute it and/or modify 13 // it under the terms of the GNU Lesser General Public License as published 14 // by the Free Software Foundation; either version 3.0 of the License, or 15 // any later version. 16 // 17 // The GPSTk is distributed in the hope that it will be useful, 18 // but WITHOUT ANY WARRANTY; without even the implied warranty of 19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 // GNU Lesser General Public License for more details. 21 // 22 // You should have received a copy of the GNU Lesser General Public 23 // License along with GPSTk; if not, write to the Free Software Foundation, 24 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 25 // 26 // This software was developed by Applied Research Laboratories at the 27 // University of Texas at Austin. 28 // Copyright 2004-2020, The Board of Regents of The University of Texas System 29 // 30 //============================================================================== 31 32 //============================================================================== 33 // 34 // This software was developed by Applied Research Laboratories at the 35 // University of Texas at Austin, under contract to an agency or agencies 36 // within the U.S. Department of Defense. The U.S. Government retains all 37 // rights to use, duplicate, distribute, disclose, or release this software. 38 // 39 // Pursuant to DoD Directive 523024 40 // 41 // DISTRIBUTION STATEMENT A: This software has been approved for public 42 // release, distribution is unlimited. 43 // 44 //============================================================================== 45 46 #ifndef GPSTK_CARRIERBAND_HPP 47 #define GPSTK_CARRIERBAND_HPP 48 49 #include <string> 50 #include "EnumIterator.hpp" 51 52 namespace gpstk 53 { 54 enum class CarrierBand 55 { 56 Unknown, ///< Uninitialized value 57 Any, ///< Used to match any carrier band 58 L1L2, ///< GPS L1+L2 59 L1, ///< GPS L1, Galileo E1, SBAS L1, QZSS L1, BeiDou L1 60 L2, ///< GPS L2, QZSS L2 61 L5, ///< GPS L5, Galileo E5a, SBAS L5, QZSS L5, BeiDou B2a, NavIC L5 62 G1, ///< GLONASS G1 63 G1a, ///< GLONASS G1a 64 G2a, ///< GLONASS G2a 65 G2, ///< GLONASS G2 66 G3, ///< GLONASS G3 67 E5b, ///< Galileo E5b 68 E5ab, ///< Galileo E5, BeiDou B2 69 E6, ///< Galileo E6, QZSS L6 70 B1, ///< BeiDou B1 71 B2, ///< BeiDou B2b 72 B3, ///< BeiDou B3 73 I9, ///< NavIC S 74 Undefined, ///< Code is known to be undefined (as opposed to unknown) 75 Last, ///< Used to verify that all items are described at compile time 76 }; // enum class CarrierBand 77 78 /** Define an iterator so C++11 can do things like 79 * for (CarrierBand i : CarrierBandIterator()) */ 80 typedef EnumIterator<CarrierBand, CarrierBand::Unknown, CarrierBand::Last> CarrierBandIterator; 81 82 namespace StringUtils 83 { 84 /// Convert a CarrierBand to a whitespace-free string name. 85 std::string asString(CarrierBand e) throw(); 86 /// Convert a string name to an CarrierBand 87 CarrierBand asCarrierBand(const std::string& s) throw(); 88 } 89 } // namespace gpstk 90 91 #endif // GPSTK_CARRIERBAND_HPP 92