Keeper.hpp

Go to the documentation of this file.
00001 #pragma ident "$Id: Keeper.hpp 1925 2009-05-31 16:43:02Z architest $"
00002 
00009 #ifndef GPSTK_KEEPER_HPP
00010 #define GPSTK_KEEPER_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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00029 //
00030 //  Dagoberto Salazar - gAGE ( http://www.gage.es ). 2009
00031 //
00032 //============================================================================
00033 
00034 
00035 
00036 #include "ProcessingClass.hpp"
00037 
00038 
00039 namespace gpstk
00040 {
00041 
00044 
00045 
00074    class Keeper : public ProcessingClass
00075    {
00076    public:
00077 
00079       Keeper()
00080       { setIndex(); };
00081 
00082 
00087       Keeper( const TypeIDSet& keepSet )
00088          : keepTypeSet(keepSet)
00089       { setIndex(); };
00090 
00091 
00096       virtual satTypeValueMap& Process( satTypeValueMap& gData )
00097          throw(ProcessingException);
00098 
00099 
00104       virtual gnssSatTypeValue& Process( gnssSatTypeValue& gData )
00105          throw(ProcessingException)
00106       { Process(gData.body); return gData; };
00107 
00108 
00113       virtual gnssRinex& Process( gnssRinex& gData )
00114          throw(ProcessingException)
00115       { Process(gData.body); return gData; };
00116 
00117 
00128       virtual Keeper& setType( const TypeID& type )
00129       { keepTypeSet.clear(); keepTypeSet.insert(type); return (*this); };
00130 
00131 
00137       virtual Keeper& addType( const TypeID& type )
00138       { keepTypeSet.insert(type); return (*this); };
00139 
00140 
00148       virtual Keeper& setTypeSet( const TypeIDSet& keepSet )
00149       { keepTypeSet.clear(); keepTypeSet = keepSet; return (*this); };
00150 
00151 
00157       virtual Keeper& addTypeSet( const TypeIDSet& keepSet );
00158 
00159 
00164       virtual Keeper& clearTypeSet( void )
00165       { keepTypeSet.clear(); return (*this); };
00166 
00167 
00169       virtual TypeIDSet getTypeSet(void) const
00170       { return keepTypeSet; };
00171 
00172 
00174       virtual int getIndex(void) const;
00175 
00176 
00178       virtual std::string getClassName(void) const;
00179 
00180 
00182       virtual ~Keeper() {};
00183 
00184 
00185    private:
00186 
00187 
00189       TypeIDSet keepTypeSet;
00190 
00191 
00193       static int classIndex;
00194 
00195 
00197       int index;
00198 
00200       void setIndex(void)
00201       { index = classIndex++; };
00202 
00203 
00204    }; // End of class 'Keeper'
00205 
00206 
00208 
00209 }  // End of namespace gpstk
00210 
00211 #endif  // GPSTK_KEEPER_HPP

Generated on Tue May 22 03:30:59 2012 for GPS ToolKit Software Library by  doxygen 1.3.9.1