pappsomspp
Library for mass spectrometry
pappso::FilterRescaleY Class Reference

rescales Y values into a dynamic range if the dynamic range is set to 0, this filter is ignored More...

#include <filterpass.h>

Inheritance diagram for pappso::FilterRescaleY:
pappso::FilterInterface

Public Member Functions

 FilterRescaleY (double dynamic)
 
 FilterRescaleY (const FilterRescaleY &other)
 
virtual ~FilterRescaleY ()
 
Tracefilter (Trace &data_points) const override
 
double getDynamicRange () const
 

Private Attributes

double m_dynamic = 0
 

Detailed Description

rescales Y values into a dynamic range if the dynamic range is set to 0, this filter is ignored

Definition at line 143 of file filterpass.h.

Constructor & Destructor Documentation

◆ FilterRescaleY() [1/2]

FilterRescaleY::FilterRescaleY ( double  dynamic)

Definition at line 189 of file filterpass.cpp.

189  : m_dynamic(dynamic)
190 {
191 }

◆ FilterRescaleY() [2/2]

FilterRescaleY::FilterRescaleY ( const FilterRescaleY other)

Definition at line 192 of file filterpass.cpp.

193  : m_dynamic(other.m_dynamic)
194 {
195 }

◆ ~FilterRescaleY()

virtual pappso::FilterRescaleY::~FilterRescaleY ( )
inlinevirtual

Definition at line 151 of file filterpass.h.

152 {};

Member Function Documentation

◆ filter()

Trace & FilterRescaleY::filter ( Trace data_points) const
overridevirtual

Implements pappso::FilterInterface.

Definition at line 197 of file filterpass.cpp.

198 {
199  if(m_dynamic == 0)
200  return data_points;
201  auto it_max = maxYDataPoint(data_points.begin(), data_points.end());
202  if(it_max == data_points.end())
203  return data_points;
204  double maximum = it_max->y;
205  for(auto &&dataPoint : data_points)
206  {
207  dataPoint.y = (dataPoint.y / maximum) * m_dynamic;
208  }
209  return data_points;
210 }

References m_dynamic, and pappso::maxYDataPoint().

◆ getDynamicRange()

double FilterRescaleY::getDynamicRange ( ) const

Definition at line 212 of file filterpass.cpp.

213 {
214  return m_dynamic;
215 }

References m_dynamic.

Member Data Documentation

◆ m_dynamic

double pappso::FilterRescaleY::m_dynamic = 0
private

Definition at line 146 of file filterpass.h.

Referenced by filter(), and getDynamicRange().


The documentation for this class was generated from the following files:
pappso::FilterRescaleY::m_dynamic
double m_dynamic
Definition: filterpass.h:146
pappso::maxYDataPoint
std::vector< DataPoint >::const_iterator maxYDataPoint(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
Definition: trace.cpp:126