pappsomspp
Library for mass spectrometry
pappso::PrecisionFactory Class Reference

#include <precision.h>

Static Public Member Functions

static PrecisionPtr fromString (const QString &str)
 
static PrecisionPtr getDaltonInstance (pappso_double value)
 
static PrecisionPtr getPpmInstance (pappso_double value)
 
static PrecisionPtr getResInstance (pappso_double value)
 
static PrecisionPtr fromString (const QString &str)
 
static PrecisionPtr getDaltonInstance (pappso_double value)
 
static PrecisionPtr getPpmInstance (pappso_double value)
 
static PrecisionPtr getResInstance (pappso_double value)
 
static PrecisionPtr getMzInstance (pappso_double value, int charge)
 

Private Types

using MapDaltonPrecision = std::map< pappso_double, DaltonPrecision * >
 
using MapPpmPrecision = std::map< pappso_double, PpmPrecision * >
 
using MapResPrecision = std::map< pappso_double, ResPrecision * >
 
using MapDaltonPrecision = std::map< pappso_double, DaltonPrecision * >
 
using MapPpmPrecision = std::map< pappso_double, PpmPrecision * >
 
using MapResPrecision = std::map< pappso_double, ResPrecision * >
 
using MapMzPrecision = std::map< pappso_double, MzPrecision * >
 

Static Private Attributes

static MapDaltonPrecision m_mapDalton
 
static MapPpmPrecision m_mapPpm
 
static MapResPrecision m_mapRes
 
static MapMzPrecision m_mapMz
 

Detailed Description

Definition at line 145 of file precision.h.

Member Typedef Documentation

◆ MapDaltonPrecision [1/2]

Definition at line 147 of file precision.h.

◆ MapDaltonPrecision [2/2]

◆ MapMzPrecision

◆ MapPpmPrecision [1/2]

Definition at line 148 of file precision.h.

◆ MapPpmPrecision [2/2]

◆ MapResPrecision [1/2]

Definition at line 149 of file precision.h.

◆ MapResPrecision [2/2]

Member Function Documentation

◆ fromString() [1/2]

PrecisionPtr pappso::PrecisionFactory::fromString ( const QString &  str)
static

Definition at line 90 of file precision.cpp.

95  {
97  }
98  else if(list.size() == 2)
99  {
100  if(list[1].toLower() == "dalton")
101  {
103  }
104 
105  if(list[1].toLower() == "ppm")
106  {
107  return PrecisionFactory::getPpmInstance(value);
108  }
109 
110  if(list[1].toLower() == "res")
111  {
112  return PrecisionFactory::getResInstance(value);
113  }
114 
115  throw ExceptionNotPossible(
116  QObject::tr("ERROR getting precision from string :\nprecision "
117  "unit %1 to not known in %2")
118  .arg(list[1])
119  .arg(str));
120  }
121  }
122 
123  throw ExceptionNotPossible(QObject::tr("ERROR getting precision from string "
124  ":\nunable to convert %1 to precision")
125  .arg(str));
126 }
127 
130 {
131  MapDaltonPrecision::iterator it = m_mapDalton.find(value);
132  if(it == m_mapDalton.end())
133  {
134  // not found
135  std::pair<MapDaltonPrecision::iterator, bool> insert_res =
136  m_mapDalton.insert(std::pair<pappso_double, DaltonPrecision *>(
137  value, new DaltonPrecision(value)));
138  it = insert_res.first;
139  }
140  else
141  {
142  // found
143  }
144  return it->second;
145 }

◆ fromString() [2/2]

static PrecisionPtr pappso::PrecisionFactory::fromString ( const QString &  str)
static

◆ getDaltonInstance() [1/2]

PrecisionPtr pappso::PrecisionFactory::getDaltonInstance ( pappso_double  value)
static

Definition at line 148 of file precision.cpp.

150 {
151  if(!value)
152  throw ExceptionNotPossible(
153  QObject::tr("Fatal error at %1@%2 in %3 -- %4(). ")
154  .arg(__FILE__)
155  .arg(__LINE__)
156  .arg(__FUNCTION__)
157  .arg("ERROR trying to set a Resolution precision value of 0."
158  "Program aborted."));
159 
160  MapPpmPrecision::iterator it = m_mapPpm.find(value);
161 
162  if(it == m_mapPpm.end())
163  {
164  // Not found.

References m_mapPpm.

Referenced by pappso::AaModification::getInstance().

◆ getDaltonInstance() [2/2]

static PrecisionPtr pappso::PrecisionFactory::getDaltonInstance ( pappso_double  value)
static

◆ getMzInstance()

PrecisionPtr pappso::PrecisionFactory::getMzInstance ( pappso_double  value,
int  charge 
)
static

Definition at line 258 of file massspectrumcombinerfactory.cpp.

261  {
262  // Found.
263  }
264 
265  return it->second;
266 }
267 
268 
270 {
271 }
272 
274 {
275 }
276 
278 DaltonPrecision::unit() const
279 {
280  return PrecisionUnit::dalton;
281 }
282 
285 {

◆ getPpmInstance() [1/2]

PrecisionPtr pappso::PrecisionFactory::getPpmInstance ( pappso_double  value)
static

Definition at line 168 of file precision.cpp.

171  {
172  // found
173  }
174  return it->second;
175 }
176 
177 
180 {
181  if(!value)
182  throw ExceptionNotPossible(
183  QObject::tr("Fatal error at %1@%2 in %3 -- %4(). ")
184  .arg(__FILE__)
185  .arg(__LINE__)
186  .arg(__FUNCTION__)
187  .arg("ERROR trying to set a Resolution precision value of 0."
188  "Program aborted."));
189 
190  MapResPrecision::iterator it = m_mapRes.find(value);
191 
192  if(it == m_mapRes.end())
193  {
194  // not found

◆ getPpmInstance() [2/2]

static PrecisionPtr pappso::PrecisionFactory::getPpmInstance ( pappso_double  value)
static

◆ getResInstance() [1/2]

PrecisionPtr pappso::PrecisionFactory::getResInstance ( pappso_double  value)
static

Definition at line 198 of file precision.cpp.

201  {
202  // found
203  }
204  return it->second;
205 }
206 
207 
209 {
210 }
211 
213 {
214 }
215 
217 DaltonPrecision::unit() const
218 {
219  return PrecisionUnit::dalton;
220 }
221 
224 {

◆ getResInstance() [2/2]

static PrecisionPtr pappso::PrecisionFactory::getResInstance ( pappso_double  value)
static

Member Data Documentation

◆ m_mapDalton

static MapDaltonPrecision pappso::PrecisionFactory::m_mapDalton
staticprivate
Initial value:
= [] {
return ret;
}()

Definition at line 152 of file precision.h.

◆ m_mapMz

PrecisionFactory::MapMzPrecision pappso::PrecisionFactory::m_mapMz
staticprivate
Initial value:
= [] {
return ret;
}()

Definition at line 157 of file massspectrumcombinerfactory.h.

◆ m_mapPpm

static MapPpmPrecision pappso::PrecisionFactory::m_mapPpm
staticprivate
Initial value:
= [] {
return ret;
}()

Definition at line 153 of file precision.h.

Referenced by getDaltonInstance().

◆ m_mapRes

static MapResPrecision pappso::PrecisionFactory::m_mapRes
staticprivate
Initial value:
= [] {
return ret;
}()

Definition at line 154 of file precision.h.


The documentation for this class was generated from the following files:
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition: types.h:67
pappso::PrecisionFactory::m_mapRes
static MapResPrecision m_mapRes
Definition: precision.h:154
pappso::PrecisionFactory::getPpmInstance
static PrecisionPtr getPpmInstance(pappso_double value)
Definition: precision.cpp:168
pappso::PrecisionFactory::MapDaltonPrecision
std::map< pappso_double, DaltonPrecision * > MapDaltonPrecision
Definition: precision.h:147
pappso::DaltonPrecision::~DaltonPrecision
virtual ~DaltonPrecision()
Definition: precision.cpp:231
pappso::PrecisionFactory::MapMzPrecision
std::map< pappso_double, MzPrecision * > MapMzPrecision
Definition: massspectrumcombinerfactory.h:151
pappso::PrecisionUnit::dalton
pappso::DaltonPrecision::delta
virtual pappso_double delta(pappso_double value) const override
Definition: precision.cpp:242
pappso::PeptideIonCter::x
pappso::PrecisionFactory::MapPpmPrecision
std::map< pappso_double, PpmPrecision * > MapPpmPrecision
Definition: precision.h:148
pappso::PrecisionFactory::getDaltonInstance
static PrecisionPtr getDaltonInstance(pappso_double value)
Definition: precision.cpp:148
pappso::DaltonPrecision::unit
virtual PrecisionUnit unit() const override
Definition: precision.cpp:236
pappso::DaltonPrecision::DaltonPrecision
DaltonPrecision(pappso_double x)
Definition: precision.cpp:227
pappso::PrecisionPtr
const typedef PrecisionBase * PrecisionPtr
Definition: precision.h:141
pappso::PrecisionFactory::m_mapDalton
static MapDaltonPrecision m_mapDalton
Definition: precision.h:152
pappso::PrecisionUnit
PrecisionUnit
Definition: types.h:81
pappso::PrecisionFactory::MapResPrecision
std::map< pappso_double, ResPrecision * > MapResPrecision
Definition: precision.h:149
pappso::PrecisionFactory::m_mapPpm
static MapPpmPrecision m_mapPpm
Definition: precision.h:153
pappso::PrecisionFactory::getResInstance
static PrecisionPtr getResInstance(pappso_double value)
Definition: precision.cpp:198