Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages

LmaGaussModel.h (Maintainer: Clemens Groepl,Marcel Grunert)

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // --------------------------------------------------------------------------
00005 //                   OpenMS Mass Spectrometry Framework
00006 // --------------------------------------------------------------------------
00007 //  Copyright (C) 2003-2008 -- Oliver Kohlbacher, Knut Reinert
00008 //
00009 //  This library is free software; you can redistribute it and/or
00010 //  modify it under the terms of the GNU Lesser General Public
00011 //  License as published by the Free Software Foundation; either
00012 //  version 2.1 of the License, or (at your option) any later version.
00013 //
00014 //  This library is distributed in the hope that it will be useful,
00015 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017 //  Lesser General Public License for more details.
00018 //
00019 //  You should have received a copy of the GNU Lesser General Public
00020 //  License along with this library; if not, write to the Free Software
00021 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00022 //
00023 // --------------------------------------------------------------------------
00024 // $Maintainer: Clemens Groepl,Marcel Grunert $
00025 // --------------------------------------------------------------------------
00026 
00027 #ifndef OPENMS_TRANSFORMATIONS_FEATUREFINDER_LMAGAUSSMODEL_H
00028 #define OPENMS_TRANSFORMATIONS_FEATUREFINDER_LMAGAUSSMODEL_H
00029 
00030 #include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/InterpolationModel.h>
00031 #include <OpenMS/MATH/STATISTICS/BasicStatistics.h>
00032 
00033 
00034 namespace OpenMS
00035 {
00036 
00046   class LmaGaussModel
00047     : public InterpolationModel
00048   {
00049 
00050    public:
00051     typedef InterpolationModel::CoordinateType CoordinateType;
00052     typedef Math::BasicStatistics<CoordinateType > BasicStatistics;
00053 
00055     LmaGaussModel();
00056 
00058     LmaGaussModel(const LmaGaussModel& source);
00059 
00061     virtual ~LmaGaussModel();
00062 
00064     virtual LmaGaussModel& operator = (const LmaGaussModel& source);
00065 
00067     static BaseModel<1>* create()
00068     {
00069       return new LmaGaussModel();
00070     }
00071 
00073     static const String getProductName()
00074     {
00075       return "LmaGaussModel";
00076     }
00077 
00079     void setOffset(CoordinateType offset);
00080 
00082     void setSamples();
00083     
00085     CoordinateType getCenter() const;
00086 
00087    protected:
00088     CoordinateType  min_;
00089     CoordinateType  max_;
00090     BasicStatistics statistics_;
00091     CoordinateType scale_factor_;
00092     CoordinateType standard_deviation_;
00093     CoordinateType expected_value_;
00094 
00095     void updateMembers_();  
00096   };
00097 }
00098 
00099 #endif // OPENMS_TRANSFORMATIONS_FEATUREFINDER_LMAGAUSSMODEL_H

Generated Tue Apr 1 15:36:35 2008 -- using doxygen 1.5.4 OpenMS / TOPP 1.1