libpappsomspp
Library for mass spectrometry
|
Go to the documentation of this file.
34 #include <QStringList>
43 MapDaltonPrecision ret;
80 QStringList list = str.split(QRegExp(
"\\s+"), QString::SkipEmptyParts);
89 QObject::tr(
"ERROR getting precision from string :\nunable to "
90 "convert %1 to number in %2")
98 else if(list.size() == 2)
100 if(list[1].toLower() ==
"dalton")
105 if(list[1].toLower() ==
"ppm")
110 if(list[1].toLower() ==
"res")
116 QObject::tr(
"ERROR getting precision from string :\nprecision "
117 "unit %1 to not known in %2")
124 ":\nunable to convert %1 to precision")
131 MapDaltonPrecision::iterator it =
m_mapDalton.find(value);
135 std::pair<MapDaltonPrecision::iterator, bool> insert_res =
136 m_mapDalton.insert(std::pair<pappso_double, DaltonPrecision *>(
138 it = insert_res.first;
153 QObject::tr(
"Fatal error at precision.cpp "
154 "-- ERROR trying to set a Resolution precision value of 0. "
155 "Program aborted."));
157 MapPpmPrecision::iterator it =
m_mapPpm.find(value);
162 std::pair<MapPpmPrecision::iterator, bool> insert_res =
163 m_mapPpm.insert(std::pair<pappso_double, PpmPrecision *>(
165 it = insert_res.first;
180 QObject::tr(
"Fatal error at precision.cpp "
181 "-- ERROR trying to set a Resolution precision value of 0. "
182 "Program aborted."));
184 MapResPrecision::iterator it =
m_mapRes.find(value);
189 std::pair<MapResPrecision::iterator, bool> insert_res =
190 m_mapRes.insert(std::pair<pappso_double, ResPrecision *>(
192 it = insert_res.first;
206 double value = origin->
getNominal() * fraction;
218 case PrecisionUnit::dalton:
220 case PrecisionUnit::ppm:
222 case PrecisionUnit::res:
226 case PrecisionUnit::none:
248 return PrecisionUnit::dalton;
260 return (QString(
"%1 dalton").arg(
m_nominal));
276 return PrecisionUnit::ppm;
290 return (QString(
"%1 ppm").arg(
m_nominal));
306 return PrecisionUnit::res;
320 return (QString(
"%1 res").arg(
m_nominal));
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)
get a ppm precision pointer
std::map< pappso_double, DaltonPrecision * > MapDaltonPrecision
virtual ~DaltonPrecision()
static PrecisionPtr getPrecisionPtrFractionInstance(PrecisionPtr origin, double fraction)
get the fraction of an existing precision pointer
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
const pappso_double ONEMILLION(1000000)
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
static PrecisionPtr getDaltonInstance(pappso_double value)
get a Dalton precision pointer
virtual PrecisionUnit unit() const override
virtual pappso_double getNominal() const final
DaltonPrecision(pappso_double x)
static MapDaltonPrecision m_mapDalton
std::map< pappso_double, ResPrecision * > MapResPrecision
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)
get a resolution precision pointer
static PrecisionPtr fromString(const QString &str)
get a precision pointer from a string
static PrecisionPtr getPrecisionPtrInstance(PrecisionUnit unit, double value)
get a precision pointer instance
virtual PrecisionUnit unit() const =0
PpmPrecision(pappso_double x)