39 #include "../../trace/trace.h"
40 #include "../../exportinmportconfig.h"
48 class FilterLowIntensitySignalRemoval;
50 typedef std::shared_ptr<FilterLowIntensitySignalRemoval>
52 typedef std::shared_ptr<const FilterLowIntensitySignalRemoval>
89 Trace &filter(
Trace &data_points)
const override;
91 double getThreshold()
const;
92 QString name()
const override;
94 QString toString()
const override;
97 void buildFilterFromString(
const QString &strBuildParams)
override;
101 const double nan = std::numeric_limits<double>::quiet_NaN();
107 constexpr
static double INTRA_CLUSTER_INTER_PEAK_DISTANCE = 1.1;
110 const std::size_t m_minIntPointCount = 5;
111 const std::size_t m_minIntStdDevFactor = 2;
119 bool m_seen_upward_phase =
false;
133 std::size_t detectIsotopicClusters(
const Trace &trace);
Redefines the floor intensity of the Trace.
std::shared_ptr< std::vector< ApexSPtr > > ClusterSPtr
std::pair< std::size_t, double > IndexIntensity
std::vector< ClusterSPtr > m_isotopicClusters
std::shared_ptr< IndexIntensity > ApexSPtr
std::vector< ApexSPtr > Cluster
Interface that allows to build filter objects from strings.
A simple container of DataPoint instances.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
std::shared_ptr< const FilterLowIntensitySignalRemoval > FilterLowIntensitySignalRemovalCstSPtr
std::shared_ptr< FilterLowIntensitySignalRemoval > FilterLowIntensitySignalRemovalSPtr