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 471 of file filtermorpho.cpp.

472{
473 buildFilterFromString(strBuildParams);
474}
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 476 of file filtermorpho.cpp.

479{
480 mpa_filterMorphoMedian = new FilterMorphoMedian(median_half_window_size);
481 mpa_filterMorphoMinMax = new FilterMorphoMinMax(minmax_half_window_size);
482}
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 567 of file filtermorpho.cpp.

568{
571}

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 494 of file filtermorpho.cpp.

495{
496
497 if(strBuildParams.startsWith(QString("%1|").arg(name())))
498 {
499 QStringList params = strBuildParams.split("|").back().split(";");
500
501 mpa_filterMorphoMedian = new FilterMorphoMedian(params.at(0).toDouble());
502 mpa_filterMorphoMinMax = new FilterMorphoMinMax(params.at(1).toDouble());
503 }
504 else
505 {
506 throw pappso::ExceptionNotRecognized(
507 QString("Building of FilterMorphoBackground from string %1 failed").arg(strBuildParams));
508 }
509}
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 541 of file filtermorpho.cpp.

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

References mpa_filterMorphoMedian, and mpa_filterMorphoMinMax.

◆ getFilterMorphoMedian()

const FilterMorphoMedian & FilterMorphoBackground::getFilterMorphoMedian ( ) const

Definition at line 557 of file filtermorpho.cpp.

558{
560}

References mpa_filterMorphoMedian.

◆ getFilterMorphoMinMax()

const FilterMorphoMinMax & FilterMorphoBackground::getFilterMorphoMinMax ( ) const

Definition at line 562 of file filtermorpho.cpp.

563{
565}

References mpa_filterMorphoMinMax.

◆ name()

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

Implements pappso::FilterNameInterface.

Definition at line 523 of file filtermorpho.cpp.

524{
525 return "morphoBackground";
526}

Referenced by buildFilterFromString().

◆ operator=()

◆ toString()

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

Implements pappso::FilterNameInterface.

Definition at line 513 of file filtermorpho.cpp.

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

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: