libpappsomspp
Library for mass spectrometry
filterpseudocentroid.h
Go to the documentation of this file.
1 /**
2  * \file pappsomspp/filers/filterpseudocentroid.h
3  * \date 7/12/2019
4  * \author Olivier Langella
5  * \brief apply a pseudo centroid algorithm on a tims tof spectrum
6  * actually this class is a wrapper for proteowizard ralab::base::ms::PeakPicker
7  * class
8  */
9 
10 /*******************************************************************************
11  * Copyright (c) 2019 Olivier Langella <Olivier.Langella@u-psud.fr>.
12  *
13  * This file is part of the PAPPSOms++ library.
14  *
15  * PAPPSOms++ is free software: you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License as published by
17  * the Free Software Foundation, either version 3 of the License, or
18  * (at your option) any later version.
19  *
20  * PAPPSOms++ is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU General Public License for more details.
24  *
25  * You should have received a copy of the GNU General Public License
26  * along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
27  *
28  ******************************************************************************/
29 
30 #pragma once
31 
32 #include "filterinterface.h"
33 #include "../../trace/trace.h"
34 
35 namespace pappso
36 {
37 /**
38  * @todo write docs
39  */
40 class PMSPP_LIB_DECL FilterPseudoCentroid : public FilterInterface
41 {
42  public:
43  /**
44  * Default constructor
45  */
46  FilterPseudoCentroid(
47  double resolution, //!< instrument resolution
48  double smoothwidth = 2., //!< smoothwidth
49  double integrationWidth = 4, //! integration width
50  double intensityThreshold = 10.,
51  bool area = true, //!< do you want to store are or intensity
52  uint32_t maxnumberofpeaks = 0 //!< max number of peaks returned by picker
53 
54  );
55 
56  /**
57  * Copy constructor
58  *
59  * @param other TODO
60  */
62 
63  /**
64  * Destructor
65  */
67 
68  Trace &filter(Trace &data_points) const override;
69 
70  private:
71  double m_resolution; //!< instrument resolution
72  double m_smoothwidth = 2.; //!< smoothwidth
73  double m_integrationWidth = 4; //! integration width
74  double m_intensityThreshold = 10.;
75  bool m_area = true; //!< do you want to store are or intensity
76  uint32_t m_maxnumberofpeaks = 0; //!< max number of peaks returned by picker
77 };
78 
79 } // namespace pappso
pappso::FilterPseudoCentroid
Definition: filterpseudocentroid.h:59
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition: exportinmportconfig.h:14
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks
Definition: aa.cpp:39
pappso::Trace
A simple container of DataPoint instances.
Definition: trace.h:132
filterinterface.h