libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::FilterMorphoBackground Class Reference

compute background of a trace compute background noise on a trace More...

#include <filtermorpho.h>

Inheritance diagram for pappso::FilterMorphoBackground:
pappso::FilterNameInterface pappso::FilterInterface

Public Member Functions

 FilterMorphoBackground (const QString &strBuildParams)
 
 FilterMorphoBackground (std::size_t median_half_window_size, std::size_t minmax_half_window_size)
 
 FilterMorphoBackground (const FilterMorphoBackground &other)
 
virtual ~FilterMorphoBackground ()
 
FilterMorphoBackgroundoperator= (const FilterMorphoBackground &other)
 
const FilterMorphoMediangetFilterMorphoMedian () const
 
const FilterMorphoMinMaxgetFilterMorphoMinMax () const
 
Tracefilter (Trace &data_points) const override
 
void buildFilterFromString (const QString &strBuildParams) override
 build this filter using a string
 
QString toString () const override
 
QString name () const override
 
- Public Member Functions inherited from pappso::FilterNameInterface
virtual ~FilterNameInterface ()
 
- Public Member Functions inherited from pappso::FilterInterface
virtual ~FilterInterface ()
 

Private Attributes

FilterMorphoMedianmpa_filterMorphoMedian = nullptr
 
FilterMorphoMinMaxmpa_filterMorphoMinMax = nullptr
 

Detailed Description

compute background of a trace compute background noise on a trace

Definition at line 249 of file filtermorpho.h.

Constructor & Destructor Documentation

◆ FilterMorphoBackground() [1/3]

pappso::FilterMorphoBackground::FilterMorphoBackground ( const QString & strBuildParams)

Definition at line 470 of file filtermorpho.cpp.

471{
472 buildFilterFromString(strBuildParams);
473}
void buildFilterFromString(const QString &strBuildParams) override
build this filter using a string

References buildFilterFromString().

Referenced by FilterMorphoBackground(), and operator=().

◆ FilterMorphoBackground() [2/3]

FilterMorphoBackground::FilterMorphoBackground ( std::size_t median_half_window_size,
std::size_t minmax_half_window_size )

Definition at line 475 of file filtermorpho.cpp.

478{
479 mpa_filterMorphoMedian = new FilterMorphoMedian(median_half_window_size);
480 mpa_filterMorphoMinMax = new FilterMorphoMinMax(minmax_half_window_size);
481}
FilterMorphoMedian * mpa_filterMorphoMedian
FilterMorphoMinMax * mpa_filterMorphoMinMax

References mpa_filterMorphoMedian, and mpa_filterMorphoMinMax.

◆ FilterMorphoBackground() [3/3]

FilterMorphoBackground::FilterMorphoBackground ( const FilterMorphoBackground & other)

◆ ~FilterMorphoBackground()

pappso::FilterMorphoBackground::~FilterMorphoBackground ( )
virtualnoexcept

Definition at line 566 of file filtermorpho.cpp.

567{
570}

References mpa_filterMorphoMedian, and mpa_filterMorphoMinMax.

Member Function Documentation

◆ buildFilterFromString()

void pappso::FilterMorphoBackground::buildFilterFromString ( const QString & strBuildParams)
overridevirtual

build this filter using a string

Parameters
strBuildParamsa string coding the filter and its parameters "filterName|param1;param2;param3"

Implements pappso::FilterNameInterface.

Definition at line 493 of file filtermorpho.cpp.

494{
495
496 if(strBuildParams.startsWith(QString("%1|").arg(name())))
497 {
498 QStringList params = strBuildParams.split("|").back().split(";");
499
500 mpa_filterMorphoMedian = new FilterMorphoMedian(params.at(0).toDouble());
501 mpa_filterMorphoMinMax = new FilterMorphoMinMax(params.at(1).toDouble());
502 }
503 else
504 {
505 throw pappso::ExceptionNotRecognized(
506 QString("Building of FilterMorphoBackground from string %1 failed").arg(strBuildParams));
507 }
508}
QString name() const override

References mpa_filterMorphoMedian, mpa_filterMorphoMinMax, and name().

Referenced by FilterMorphoBackground().

◆ filter()

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

Implements pappso::FilterInterface.

Definition at line 540 of file filtermorpho.cpp.

541{
542 mpa_filterMorphoMedian->filter(data_points);
543 mpa_filterMorphoMinMax->filter(data_points);
544
545 // finally filter negative values
546 for(DataPoint &point : data_points)
547 {
548 if(point.y < 0)
549 {
550 point.y = 0;
551 }
552 }
553 return data_points;
554}

References mpa_filterMorphoMedian, and mpa_filterMorphoMinMax.

◆ getFilterMorphoMedian()

const FilterMorphoMedian & FilterMorphoBackground::getFilterMorphoMedian ( ) const

Definition at line 556 of file filtermorpho.cpp.

557{
559}

References mpa_filterMorphoMedian.

◆ getFilterMorphoMinMax()

const FilterMorphoMinMax & FilterMorphoBackground::getFilterMorphoMinMax ( ) const

Definition at line 561 of file filtermorpho.cpp.

562{
564}

References mpa_filterMorphoMinMax.

◆ name()

QString pappso::FilterMorphoBackground::name ( ) const
overridevirtual

Implements pappso::FilterNameInterface.

Definition at line 522 of file filtermorpho.cpp.

523{
524 return "morphoBackground";
525}

Referenced by buildFilterFromString().

◆ operator=()

◆ toString()

QString pappso::FilterMorphoBackground::toString ( ) const
overridevirtual

Implements pappso::FilterNameInterface.

Definition at line 512 of file filtermorpho.cpp.

513{
514 QString strCode = QString("morphoBackground|%1;%2")
515 .arg(mpa_filterMorphoMedian->getHalfWindowSize())
516 .arg(mpa_filterMorphoMinMax->getMinMaxHalfEdgeWindows());
517
518 return strCode;
519}

References mpa_filterMorphoMedian, and mpa_filterMorphoMinMax.

Member Data Documentation

◆ mpa_filterMorphoMedian

FilterMorphoMedian* pappso::FilterMorphoBackground::mpa_filterMorphoMedian = nullptr
private

◆ mpa_filterMorphoMinMax

FilterMorphoMinMax* pappso::FilterMorphoBackground::mpa_filterMorphoMinMax = nullptr
private

The documentation for this class was generated from the following files: