NablaOp.hpp

Go to the documentation of this file.
00001 #pragma ident "$Id: NablaOp.hpp 3140 2012-06-18 15:03:02Z susancummins $"
00002 
00009 #ifndef GPSTK_NABLAOP_HPP
00010 #define GPSTK_NABLAOP_HPP
00011 
00012 //============================================================================
00013 //
00014 //  This file is part of GPSTk, the GPS Toolkit.
00015 //
00016 //  The GPSTk is free software; you can redistribute it and/or modify
00017 //  it under the terms of the GNU Lesser General Public License as published
00018 //  by the Free Software Foundation; either version 2.1 of the License, or
00019 //  any later version.
00020 //
00021 //  The GPSTk is distributed in the hope that it will be useful,
00022 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00023 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00024 //  GNU Lesser General Public License for more details.
00025 //
00026 //  You should have received a copy of the GNU Lesser General Public
00027 //  License along with GPSTk; if not, write to the Free Software Foundation,
00028 //  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
00029 //
00030 //  Dagoberto Salazar - gAGE ( http://www.gage.es ). 2007, 2008, 2009, 2011
00031 //
00032 //============================================================================
00033 
00034 
00035 
00036 #include "ProcessingClass.hpp"
00037 
00038 
00039 namespace gpstk
00040 {
00041 
00044 
00116    class NablaOp : public ProcessingClass
00117    {
00118    public:
00119 
00120 
00126       NablaOp();
00127 
00128 
00134       NablaOp(const SatID& rSat);
00135 
00136 
00142       NablaOp(const TypeID& difftype)
00143          : lookReferenceSat(true)
00144       { setDiffType(difftype); };
00145 
00146 
00153       NablaOp( const SatID& rSat,
00154                const TypeID& difftype )
00155          : refSat(rSat), lookReferenceSat(false)
00156       { setDiffType(difftype); };
00157 
00158 
00165       NablaOp( const SatID& rSat,
00166                const TypeIDSet& diffSet )
00167          : refSat(rSat), lookReferenceSat(false), diffTypes(diffSet)
00168       { };
00169 
00170 
00182       virtual NablaOp& setRefSat(const SatID& rSat)
00183       { refSat = rSat; lookReferenceSat = false; return (*this); };
00184 
00185 
00188       virtual NablaOp& useHighestSat(void)
00189       { lookReferenceSat = true; return (*this); };
00190 
00191 
00193       virtual SatID getRefSat(void) const
00194       { return refSat; };
00195 
00196 
00204       virtual NablaOp& setDiffType(const TypeID& difftype)
00205       { diffTypes.clear(); diffTypes.insert(difftype); return (*this); };
00206 
00207 
00213       virtual NablaOp& addDiffType(const TypeID& difftype)
00214       { diffTypes.insert(difftype); return (*this); };
00215 
00216 
00224       virtual NablaOp& setDiffTypeSet(const TypeIDSet& diffSet)
00225       { diffTypes.clear(); diffTypes = diffSet; return (*this); };
00226 
00227 
00233       virtual NablaOp& addDiffTypeSet(const TypeIDSet& diffSet);
00234 
00235 
00237       virtual TypeIDSet getDiffTypeSet(void) const
00238       { return diffTypes; };
00239 
00240 
00247       virtual satTypeValueMap& Process(satTypeValueMap& gData)
00248          throw(ProcessingException);
00249 
00250 
00257       virtual gnssSatTypeValue& Process(gnssSatTypeValue& gData)
00258          throw(ProcessingException)
00259       { Process(gData.body); return gData; };
00260 
00261 
00268       virtual gnssRinex& Process(gnssRinex& gData)
00269          throw(ProcessingException)
00270       { Process(gData.body); return gData; };
00271 
00272 
00274       virtual std::string getClassName(void) const;
00275 
00276 
00278       virtual ~NablaOp() {};
00279 
00280 
00281    private:
00282 
00283 
00285       SatID refSat;
00286 
00287 
00289       bool lookReferenceSat;
00290 
00291 
00293       TypeIDSet diffTypes;
00294 
00295 
00296    }; // End of class 'NablaOp'
00297 
00299 
00300 }  // End of namespace gpstk
00301 
00302 #endif   // GPSTK_NABLAOP_HPP

Generated on Sat May 18 03:31:07 2013 for GPS ToolKit Software Library by  doxygen 1.3.9.1