libpappsomspp
Library for mass spectrometry
|
Go to the documentation of this file.
34 #include <QStringList>
43 MapDaltonPrecision ret;
87 QStringList list = str.split(QRegExp(
"\\s+"), QString::SkipEmptyParts);
95 throw ExceptionNotPossible(
96 QObject::tr(
"ERROR getting precision from string :\nunable to "
97 "convert %1 to number in %2")
109 if(list[1].toLower() ==
"dalton")
114 if(list[1].toLower() ==
"ppm")
119 if(list[1].toLower() ==
"res")
124 throw ExceptionNotPossible(
125 QObject::tr(
"ERROR getting precision from string :\nprecision "
126 "unit %1 to not known in %2")
130 else if(list.size() == 3)
137 int charge = list[1].toInt(&ok);
139 if(!ok || list[2] !=
"mz")
141 throw ExceptionNotPossible(
142 QObject::tr(
"ERROR getting charge from string :\nunable to "
143 "convert %1 to int in %2, or string is not mz")
153 throw ExceptionNotPossible(QObject::tr(
"ERROR getting precision from string "
154 ":\nunable to convert %1 to precision")
161 MapDaltonPrecision::iterator it =
m_mapDalton.find(value);
165 std::pair<MapDaltonPrecision::iterator, bool> insert_res =
166 m_mapDalton.insert(std::pair<pappso_double, DaltonPrecision *>(
167 value,
new DaltonPrecision(value)));
168 it = insert_res.first;
182 throw ExceptionNotPossible(
183 QObject::tr(
"Fatal error at %1@%2 in %3 -- %4(). ")
187 .arg(
"ERROR trying to set a Resolution precision value of 0."
188 "Program aborted."));
190 MapPpmPrecision::iterator it =
m_mapPpm.find(value);
195 std::pair<MapPpmPrecision::iterator, bool> insert_res =
196 m_mapPpm.insert(std::pair<pappso_double, PpmPrecision *>(
197 value,
new PpmPrecision(value)));
198 it = insert_res.first;
212 throw ExceptionNotPossible(
213 QObject::tr(
"Fatal error at %1@%2 in %3 -- %4(). ")
217 .arg(
"ERROR trying to set a Resolution precision value of 0."
218 "Program aborted."));
220 MapResPrecision::iterator it =
m_mapRes.find(value);
225 std::pair<MapResPrecision::iterator, bool> insert_res =
226 m_mapRes.insert(std::pair<pappso_double, ResPrecision *>(
227 value,
new ResPrecision(value)));
228 it = insert_res.first;
244 MapMzPrecision::iterator it = std::find_if(
247 [value, charge](
const std::pair<pappso_double, MzPrecision *> &pair) {
248 return ((pair.first == value) && (pair.second->charge() == charge));
254 std::pair<MapMzPrecision::iterator, bool> insert_res =
255 m_mapMz.insert(std::pair<pappso_double, MzPrecision *>(
258 it = insert_res.first;
280 return PrecisionUnit::dalton;
292 return (QString(
"%1 dalton").arg(
m_nominal));
308 return PrecisionUnit::ppm;
322 return (QString(
"%1 ppm").arg(
m_nominal));
338 return PrecisionUnit::res;
352 return (QString(
"%1 res").arg(
m_nominal));
MzPrecision(pappso_double value, int charge)
static PrecisionPtr getMzInstance(pappso_double value, int charge)
double pappso_double
A type definition for doubles.
ResPrecision(pappso_double x)
static MapResPrecision m_mapRes
virtual pappso_double delta(pappso_double value) const override
static PrecisionPtr getPpmInstance(pappso_double value)
std::map< pappso_double, DaltonPrecision * > MapDaltonPrecision
virtual ~DaltonPrecision()
std::map< pappso_double, MzPrecision * > MapMzPrecision
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
const pappso_double ONEMILLION(1000000)
virtual pappso_double delta(pappso_double value) const override
virtual PrecisionUnit unit() const override
virtual QString toString() const override
virtual QString toString() const override
virtual pappso_double delta(pappso_double value) const override
virtual pappso_double delta(pappso_double value) const override
std::map< pappso_double, PpmPrecision * > MapPpmPrecision
virtual QString toString() const override
static PrecisionPtr getDaltonInstance(pappso_double value)
static MapMzPrecision m_mapMz
virtual PrecisionUnit unit() const override
virtual pappso_double getNominal() const final
const PrecisionBase * PrecisionPtr
DaltonPrecision(pappso_double x)
static MapDaltonPrecision m_mapDalton
std::map< pappso_double, ResPrecision * > MapResPrecision
virtual PrecisionUnit unit() const override
virtual QString toString() const override
virtual PrecisionUnit unit() const override
const pappso_double m_nominal
static MapPpmPrecision m_mapPpm
static PrecisionPtr getResInstance(pappso_double value)
static PrecisionPtr fromString(const QString &str)
PpmPrecision(pappso_double x)