51 if(msrun_ida == msrun_idb)
53 QString msrun_key(QString(
"%1-%2").arg(msrun_ida.
getXmlId()).arg(msrun_idb.
getXmlId()));
58 msrun_key = QString(
"%1-%2").arg(msrun_idb.
getXmlId()).arg(msrun_ida.
getXmlId());
59 std::swap(xic_coorda, xic_coordb);
63 const QVariant &ref_variantb =
65 if(ref_variantb.isNull())
68 "XicCoordParam::TimsTofIonMobilityScanNumberStart QVariant is null for xic_coordb"));
70 const QVariant &ref_varianta =
73 if(ref_varianta.isNull())
76 "XicCoordParam::TimsTofIonMobilityScanNumberStart QVariant is null for xic_coorda"));
78 it_start.first->second.push_back(ref_variantb.toLongLong() - ref_varianta.toLongLong());
82 it_stop.first->second.push_back(
93 if(pair_key_start_vector.second.size() > 5)
96 const auto middleItr =
97 pair_key_start_vector.second.begin() + (pair_key_start_vector.second.size() / 2);
99 pair_key_start_vector.second.begin(), middleItr, pair_key_start_vector.second.end());
111 if(pair_key_stop_vector.second.size() > 5)
114 const auto middleItr =
115 pair_key_stop_vector.second.begin() + (pair_key_stop_vector.second.size() / 2);
117 pair_key_stop_vector.second.begin(), middleItr, pair_key_stop_vector.second.end());
138 bool opposed =
false;
139 QString msrun_key(QString(
"%1-%2").arg(source_msrunid.
getXmlId()).arg(target_msrunid.
getXmlId()));
144 msrun_key = QString(
"%1-%2").arg(target_msrunid.
getXmlId()).arg(source_msrunid.
getXmlId());
151 start_dev = itstart->second;
162 stop_dev = itstop->second;
174 return result_xic_coord_sp;
177const std::map<QString, std::vector<qint64>> &
183const std::map<QString, long> &
std::map< QString, long > m_mapCorrectionsStop
scan num correction on start position stored for each msrun pair
const std::map< QString, long > & getMapCorrectionsStart() const
pappso::XicCoordSPtr translateXicCoordFromTo(const pappso::XicCoord &source_xic_coord, const MsRunId &source_msrunid, const MsRunId &target_msrunid) const
std::map< QString, std::vector< qint64 > > m_mapDiferrencesStart
std::map< QString, long > m_mapCorrectionsStart
scan num correction on start position stored for each msrun pair
void computeCorrections()
void storeObservedIdentityBetween(const MsRunId &msrun_ida, const XicCoord *xic_coorda, const MsRunId &msrun_idb, const XicCoord *xic_coordb)
const std::map< QString, std::vector< qint64 > > & getMapDiferrencesStart() const
std::map< QString, std::vector< qint64 > > m_mapDiferrencesStop
virtual ~IonMobilityGrid()
MS run identity MsRunId identifies an MS run with a unique ID (XmlId) and contains eventually informa...
const QString & getXmlId() const
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
@ TimsTofIonMobilityScanNumberStart
@ TimsTofIonMobilityScanNumberStop
std::shared_ptr< XicCoord > XicCoordSPtr
coordinates of the XIC to extract and the resulting XIC after extraction
void scanNumBeginRangeCorrection(long start_dev, long stop_dev)
apply scan num correction on xic coordinate
coordinates of the XIC to extract and the resulting XIC after extraction
virtual XicCoordSPtr initializeAndClone() const
intialize the XIC and make a deep copy of object
virtual const QVariant getParam(XicCoordParam param) const
get a specific XIC coordinate parameter