libpappsomspp
Library for mass spectrometry
pappso::FilterSuiteString Class Reference

#include <filtersuitestring.h>

Inheritance diagram for pappso::FilterSuiteString:
pappso::FilterNameInterface pappso::FilterInterface

Public Member Functions

 FilterSuiteString (const QString &strBuildParams)
 
virtual ~FilterSuiteString ()
 
pappso::Tracefilter (pappso::Trace &data_points) const override
 
QString toString () const override
 
- Public Member Functions inherited from pappso::FilterNameInterface
virtual ~FilterNameInterface ()
 
- Public Member Functions inherited from pappso::FilterInterface
virtual ~FilterInterface ()
 

Protected Member Functions

void buildFilterFromString (const QString &strBuildParams) override
 build this filer using a string More...
 

Private Attributes

std::vector< FilterNameInterfaceCstSPtrm_filterVector
 

Detailed Description

Todo:
write docs

Definition at line 41 of file filtersuitestring.h.

Constructor & Destructor Documentation

◆ FilterSuiteString()

pappso::FilterSuiteString::FilterSuiteString ( const QString &  strBuildParams)
Parameters
strBuildParamsstring to build the filter "chargeDeconvolution|0.02dalton anotherFilter|param1;param2"

Definition at line 38 of file filtersuitestring.cpp.

39 {
40  buildFilterFromString(strBuildParams);
41 }
void buildFilterFromString(const QString &strBuildParams) override
build this filer using a string

References buildFilterFromString().

◆ ~FilterSuiteString()

pappso::FilterSuiteString::~FilterSuiteString ( )
virtual

Destructor

Definition at line 43 of file filtersuitestring.cpp.

44 {
45 }

Member Function Documentation

◆ buildFilterFromString()

void pappso::FilterSuiteString::buildFilterFromString ( const QString &  strBuildParams)
overrideprotectedvirtual

build this filer using a string

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

Implements pappso::FilterNameInterface.

Definition at line 77 of file filtersuitestring.cpp.

78 {
79  // qInfo() << strBuildParams;
80  QStringList filters = strBuildParams.split(" ", QString::SkipEmptyParts);
81  for(QString filter_str : filters)
82  {
83  if(filter_str.startsWith("complementIonEnhancer|"))
84  {
85  m_filterVector.push_back(
86  std::make_shared<FilterComplementIonEnhancer>(filter_str));
87  }
88  else if(filter_str.startsWith("chargeDeconvolution|"))
89  {
90  m_filterVector.push_back(
91  std::make_shared<FilterChargeDeconvolution>(filter_str));
92  }
93  else if(filter_str.startsWith("mzExclusion|"))
94  {
95  m_filterVector.push_back(
96  std::make_shared<FilterMzExclusion>(filter_str));
97  }
98  else
99  {
101  QString("building Filter from string %1 is "
102  "not possible")
103  .arg(filter_str));
104  }
105  }
106 }
excetion to use when an item type is not recognized
std::vector< FilterNameInterfaceCstSPtr > m_filterVector

References m_filterVector.

Referenced by FilterSuiteString().

◆ filter()

pappso::Trace & pappso::FilterSuiteString::filter ( pappso::Trace data_points) const
overridevirtual

Implements pappso::FilterInterface.

Definition at line 49 of file filtersuitestring.cpp.

50 {
51 
52  qDebug();
53  for(auto &&filter : m_filterVector)
54  {
55 
56  qDebug() << filter.get();
57  qDebug() << filter->toString();
58  filter->filter(data_points);
59  }
60 
61  qDebug();
62  return data_points;
63 }
pappso::Trace & filter(pappso::Trace &data_points) const override
virtual Trace & filter(const FilterInterface &filter) final
apply a filter on this trace
Definition: trace.cpp:923
QString toString() const
Definition: trace.cpp:906

References pappso::Trace::filter(), m_filterVector, and pappso::Trace::toString().

Referenced by toString().

◆ toString()

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

Implements pappso::FilterNameInterface.

Definition at line 65 of file filtersuitestring.cpp.

66 {
67  QStringList filter_str_list;
68  for(auto &&filter : m_filterVector)
69  {
70  filter_str_list << filter->toString();
71  }
72 
73  return filter_str_list.join(" ");
74 }

References filter(), m_filterVector, and pappso::Trace::toString().

Member Data Documentation

◆ m_filterVector

std::vector<FilterNameInterfaceCstSPtr> pappso::FilterSuiteString::m_filterVector
private

Definition at line 62 of file filtersuitestring.h.

Referenced by buildFilterFromString(), filter(), and toString().


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