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
 
virtual QString name () const override
 
QString toString () const override
 
void addFilterFromString (const QString &strBuildParams)
 takes a string that describes filters to add More...
 
- 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 filter 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 40 of file filtersuitestring.cpp.

41 {
42  buildFilterFromString(strBuildParams);
43 }
void buildFilterFromString(const QString &strBuildParams) override
build this filter using a string

References buildFilterFromString().

◆ ~FilterSuiteString()

pappso::FilterSuiteString::~FilterSuiteString ( )
virtual

Destructor

Definition at line 45 of file filtersuitestring.cpp.

46 {
47 }

Member Function Documentation

◆ addFilterFromString()

void pappso::FilterSuiteString::addFilterFromString ( const QString &  strBuildParams)

takes a string that describes filters to add

Parameters
strBuildParamsstring to build the filter "chargeDeconvolution|0.02dalton anotherFilter|param1;param2"

Definition at line 122 of file filtersuitestring.cpp.

123 {
124  buildFilterFromString(strBuildParams);
125 }

References buildFilterFromString().

◆ buildFilterFromString()

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

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 90 of file filtersuitestring.cpp.

91 {
92  // qInfo() << strBuildParams;
93  QStringList filters = strBuildParams.split(" ", QString::SkipEmptyParts);
94  for(QString filter_str : filters)
95  {
96  if(filter_str.startsWith("complementIonEnhancer|"))
97  {
98  m_filterVector.push_back(
99  std::make_shared<FilterComplementIonEnhancer>(filter_str));
100  }
101  else if(filter_str.startsWith("chargeDeconvolution|"))
102  {
103  m_filterVector.push_back(
104  std::make_shared<FilterChargeDeconvolution>(filter_str));
105  }
106  else if(filter_str.startsWith("mzExclusion|"))
107  {
108  m_filterVector.push_back(
109  std::make_shared<FilterMzExclusion>(filter_str));
110  }
111  else
112  {
114  QString("building Filter from string %1 is "
115  "not possible")
116  .arg(filter_str));
117  }
118  }
119 }
excetion to use when an item type is not recognized
std::vector< FilterNameInterfaceCstSPtr > m_filterVector

References m_filterVector.

Referenced by FilterSuiteString(), and addFilterFromString().

◆ filter()

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

Implements pappso::FilterInterface.

Definition at line 51 of file filtersuitestring.cpp.

52 {
53 
54  qDebug();
55  for(auto &&filter : m_filterVector)
56  {
57 
58  qDebug() << filter.get();
59  qDebug() << filter->toString();
60  filter->filter(data_points);
61  }
62 
63  qDebug();
64  return data_points;
65 }
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().

◆ name()

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

Implements pappso::FilterNameInterface.

Definition at line 69 of file filtersuitestring.cpp.

70 {
71  // FIXME: check if this makes sense
72  return "Suite of filters";
73 }

◆ toString()

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

Implements pappso::FilterNameInterface.

Definition at line 77 of file filtersuitestring.cpp.

78 {
79  QStringList filter_str_list;
80  for(auto &&filter : m_filterVector)
81  {
82  filter_str_list << filter->toString();
83  }
84 
85  return filter_str_list.join(" ");
86 }

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

Member Data Documentation

◆ m_filterVector

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

Definition at line 69 of file filtersuitestring.h.

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


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