00001 #pragma ident "$Id: ComputeCombination.hpp 3140 2012-06-18 15:03:02Z susancummins $" 00002 00009 #ifndef GPSTK_COMPUTECOMBINATION_HPP 00010 #define GPSTK_COMPUTECOMBINATION_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, 2011 00031 // 00032 //============================================================================ 00033 00034 00035 00036 #include "ProcessingClass.hpp" 00037 00038 00039 namespace gpstk 00040 { 00041 00044 00045 00054 class ComputeCombination : public ProcessingClass 00055 { 00056 public: 00057 00059 ComputeCombination() {}; 00060 00061 00067 virtual satTypeValueMap& Process(satTypeValueMap& gData) 00068 throw(ProcessingException); 00069 00070 00076 virtual gnssSatTypeValue& Process(gnssSatTypeValue& gData) 00077 throw(ProcessingException) 00078 { Process(gData.body); return gData; }; 00079 00080 00086 virtual gnssRinex& Process(gnssRinex& gData) 00087 throw(ProcessingException) 00088 { Process(gData.body); return gData; }; 00089 00090 00092 virtual std::string getClassName(void) const; 00093 00094 00096 virtual ~ComputeCombination() {}; 00097 00098 00099 protected: 00100 00104 virtual double getCombination( const double& obs1, 00105 const double& obs2 ) = 0; 00106 00108 TypeID type1; 00109 00111 TypeID type2; 00112 00114 TypeID resultType; 00115 00116 00117 }; // End of class 'ComputeCombination' 00118 00120 00121 } // End of namespace gpstk 00122 00123 #endif // GPSTK_COMPUTECOMBINATION_HPP
1.3.9.1