libpappsomspp
Library for mass spectrometry
|
#include <timsdata.h>
Public Member Functions | |
TimsData (QDir timsDataDirectory) | |
build using the tims data directory More... | |
TimsData (const TimsData &other) | |
~TimsData () | |
pappso::MassSpectrumCstSPtr | getMassSpectrumCstSPtrByRawIndex (std::size_t raw_index) |
get a mass spectrum given its spectrum index More... | |
pappso::MassSpectrumCstSPtr | getMassSpectrumCstSPtr (std::size_t timsId, std::size_t scanNum) |
get a mass spectrum given the tims frame database id and scan number within tims frame More... | |
std::size_t | getTotalNumberOfScans () const |
get the total number of scans More... | |
std::size_t | getTotalNumberOfPrecursors () const |
get the number of precursors analyzes by PASEF More... | |
unsigned int | getMsLevelBySpectrumIndex (std::size_t spectrum_index) |
QualifiedMassSpectrum | getQualifiedMassSpectrumByRawIndex (std::size_t spectrum_index, bool want_binary_data) |
void | getQualifiedMs2MassSpectrumByPrecursorId (QualifiedMassSpectrum &mass_spectrum, std::size_t ms2_index, std::size_t precursor_index, bool want_binary_data) |
QualifiedMassSpectrum | getQualifiedMs1MassSpectrumByPrecursorId (std::size_t ms2_index, std::size_t precursor_index, bool want_binary_data) |
void | setMs2FilterCstSPtr (pappso::FilterInterfaceCstSPtr &filter) |
void | setMs1FilterCstSPtr (pappso::FilterInterfaceCstSPtr &filter) |
std::vector< std::size_t > | getTimsMS1FrameIdRange (double rt_begin, double rt_end) const |
TimsFrameCstSPtr | getTimsFrameCstSPtr (std::size_t timsId) const |
get a Tims frame with his database ID More... | |
Private Member Functions | |
std::pair< std::size_t, std::size_t > | getScanCoordinateFromRawIndex (std::size_t spectrum_index) const |
std::size_t | getRawIndexFromCoordinate (std::size_t frame_id, std::size_t scan_num) const |
QSqlDatabase | openDatabaseConnection () const |
TimsFrameBaseCstSPtr | getTimsFrameBaseCstSPtr (std::size_t timsId) const |
get a Tims frame base (no binary data file access) with his database ID More... | |
TimsFrameCstSPtr | getTimsFrameCstSPtrCached (std::size_t timsId) |
get a Tims frame with his database ID but look in the cache first More... | |
TimsFrameBaseCstSPtr | getTimsFrameBaseCstSPtrCached (std::size_t timsId) |
std::vector< TimsXicStructure > | extractXicListByPrecursorIds (const std::vector< std::size_t > &precursor_id_list, PrecisionPtr precision_ptr, XicExtractMethod xicExtractMethod, double rtRange) const |
extract a list of XICs from Tims data More... | |
Private Attributes | |
QDir | m_timsDataDirectory |
TimsBinDec * | mpa_timsBinDec = nullptr |
std::size_t | m_totalNumberOfScans |
std::size_t | m_totalNumberOfPrecursors |
std::size_t | m_cacheSize = 60 |
std::deque< TimsFrameCstSPtr > | m_timsFrameCache |
std::deque< TimsFrameBaseCstSPtr > | m_timsFrameBaseCache |
pappso::FilterInterfaceCstSPtr | mcsp_ms2Filter = nullptr |
pappso::FilterInterfaceCstSPtr | mcsp_ms1Filter = nullptr |
QMutex | m_mutex |
Definition at line 64 of file timsdata.h.
TimsData::TimsData | ( | QDir | timsDataDirectory | ) |
build using the tims data directory
Definition at line 45 of file timsdata.cpp.
References m_timsDataDirectory, m_totalNumberOfPrecursors, m_totalNumberOfScans, mcsp_ms1Filter, mcsp_ms2Filter, mpa_timsBinDec, openDatabaseConnection(), and pappso::FilterTriangle::setTriangleSlope().
pappso::TimsData::TimsData | ( | const TimsData & | other | ) |
Copy constructor
other | TODO |
TimsData::~TimsData | ( | ) |
|
private |
extract a list of XICs from Tims data
precursor_id_list | the list of precursors to extract |
precision_ptr | precision to compute the mz range to extract for each precursor mass |
xicExtractMethod | XIC extraction method (sum or max) to use |
rtRange | retention time range in seconds to extract XIC from rtTarget
|
Definition at line 1091 of file timsdata.cpp.
References pappso::TimsXicExtractorInterface::extractTimsXicList(), m_timsDataDirectory, pappso::TimsXicStructure::mzRange, openDatabaseConnection(), pappso::TimsXicStructure::precursorId, pappso::TimsXicStructure::rtTarget, pappso::TimsXicStructure::scanNumBegin, pappso::TimsXicStructure::scanNumEnd, and pappso::TimsXicExtractorInterface::setXicExtractMethod().
pappso::MassSpectrumCstSPtr TimsData::getMassSpectrumCstSPtr | ( | std::size_t | timsId, |
std::size_t | scanNum | ||
) |
get a mass spectrum given the tims frame database id and scan number within tims frame
Definition at line 516 of file timsdata.cpp.
References getTimsFrameCstSPtrCached().
Referenced by getMassSpectrumCstSPtrByRawIndex().
pappso::MassSpectrumCstSPtr TimsData::getMassSpectrumCstSPtrByRawIndex | ( | std::size_t | raw_index | ) |
get a mass spectrum given its spectrum index
raw_index | a number begining at 0, corresponding to a Tims Scan in the order they lies in the binary data file |
Definition at line 294 of file timsdata.cpp.
References getMassSpectrumCstSPtr(), and getScanCoordinateFromRawIndex().
Referenced by pappso::TimsMsRunReader::massSpectrumCstSPtr().
unsigned int TimsData::getMsLevelBySpectrumIndex | ( | std::size_t | spectrum_index | ) |
Definition at line 537 of file timsdata.cpp.
References getScanCoordinateFromRawIndex(), and getTimsFrameCstSPtrCached().
Referenced by pappso::TimsMsRunReader::readSpectrumCollection().
QualifiedMassSpectrum TimsData::getQualifiedMassSpectrumByRawIndex | ( | std::size_t | spectrum_index, |
bool | want_binary_data | ||
) |
Definition at line 546 of file timsdata.cpp.
References getRawIndexFromCoordinate(), getScanCoordinateFromRawIndex(), getTimsFrameBaseCstSPtrCached(), getTimsFrameCstSPtrCached(), m_timsDataDirectory, openDatabaseConnection(), pappso::QualifiedMassSpectrum::setDtInMilliSeconds(), pappso::QualifiedMassSpectrum::setEmptyMassSpectrum(), pappso::QualifiedMassSpectrum::setMassSpectrumId(), pappso::QualifiedMassSpectrum::setMassSpectrumSPtr(), pappso::QualifiedMassSpectrum::setMsLevel(), pappso::MassSpectrumId::setNativeId(), pappso::QualifiedMassSpectrum::setParameterValue(), pappso::QualifiedMassSpectrum::setPrecursorCharge(), pappso::QualifiedMassSpectrum::setPrecursorIntensity(), pappso::QualifiedMassSpectrum::setPrecursorMz(), pappso::QualifiedMassSpectrum::setPrecursorNativeId(), pappso::QualifiedMassSpectrum::setPrecursorSpectrumIndex(), pappso::QualifiedMassSpectrum::setRtInSeconds(), pappso::MassSpectrumId::setSpectrumIndex(), and pappso::QualifiedMassSpectrum::size().
Referenced by pappso::TimsMsRunReader::qualifiedMassSpectrum().
QualifiedMassSpectrum TimsData::getQualifiedMs1MassSpectrumByPrecursorId | ( | std::size_t | ms2_index, |
std::size_t | precursor_index, | ||
bool | want_binary_data | ||
) |
Definition at line 664 of file timsdata.cpp.
References pappso::TracePlusCombiner::combine(), getTimsFrameCstSPtrCached(), m_timsDataDirectory, mcsp_ms1Filter, openDatabaseConnection(), pappso::QualifiedMassSpectrum::setEmptyMassSpectrum(), pappso::QualifiedMassSpectrum::setMassSpectrumId(), pappso::QualifiedMassSpectrum::setMassSpectrumSPtr(), pappso::QualifiedMassSpectrum::setMsLevel(), pappso::MassSpectrumId::setNativeId(), pappso::QualifiedMassSpectrum::setParameterValue(), pappso::QualifiedMassSpectrum::setPrecursorCharge(), pappso::QualifiedMassSpectrum::setPrecursorIntensity(), pappso::QualifiedMassSpectrum::setPrecursorMz(), pappso::QualifiedMassSpectrum::setPrecursorSpectrumIndex(), pappso::QualifiedMassSpectrum::setRtInSeconds(), and pappso::MassSpectrumId::setSpectrumIndex().
Referenced by pappso::TimsMsRunReaderMs2::qualifiedMassSpectrum().
void TimsData::getQualifiedMs2MassSpectrumByPrecursorId | ( | QualifiedMassSpectrum & | mass_spectrum, |
std::size_t | ms2_index, | ||
std::size_t | precursor_index, | ||
bool | want_binary_data | ||
) |
Definition at line 828 of file timsdata.cpp.
References pappso::TracePlusCombiner::combine(), getTimsFrameCstSPtrCached(), m_timsDataDirectory, mcsp_ms2Filter, openDatabaseConnection(), pappso::QualifiedMassSpectrum::setEmptyMassSpectrum(), pappso::QualifiedMassSpectrum::setMassSpectrumId(), pappso::QualifiedMassSpectrum::setMassSpectrumSPtr(), pappso::QualifiedMassSpectrum::setMsLevel(), pappso::MassSpectrumId::setNativeId(), pappso::QualifiedMassSpectrum::setParameterValue(), pappso::QualifiedMassSpectrum::setPrecursorCharge(), pappso::QualifiedMassSpectrum::setPrecursorIntensity(), pappso::QualifiedMassSpectrum::setPrecursorMz(), pappso::QualifiedMassSpectrum::setPrecursorNativeId(), pappso::QualifiedMassSpectrum::setPrecursorSpectrumIndex(), pappso::QualifiedMassSpectrum::setRtInSeconds(), and pappso::MassSpectrumId::setSpectrumIndex().
Referenced by pappso::TimsMsRunReaderMs2::qualifiedMassSpectrum().
|
private |
Definition at line 245 of file timsdata.cpp.
References m_timsDataDirectory, and openDatabaseConnection().
Referenced by getQualifiedMassSpectrumByRawIndex().
|
private |
Definition at line 200 of file timsdata.cpp.
References m_timsDataDirectory, and openDatabaseConnection().
Referenced by getMassSpectrumCstSPtrByRawIndex(), getMsLevelBySpectrumIndex(), and getQualifiedMassSpectrumByRawIndex().
|
private |
get a Tims frame base (no binary data file access) with his database ID
Definition at line 303 of file timsdata.cpp.
References m_timsDataDirectory, and openDatabaseConnection().
Referenced by getTimsFrameBaseCstSPtrCached().
|
private |
Definition at line 1042 of file timsdata.cpp.
References getTimsFrameBaseCstSPtr(), m_cacheSize, m_mutex, and m_timsFrameBaseCache.
Referenced by getQualifiedMassSpectrumByRawIndex().
TimsFrameCstSPtr TimsData::getTimsFrameCstSPtr | ( | std::size_t | timsId | ) | const |
get a Tims frame with his database ID
Definition at line 426 of file timsdata.cpp.
References pappso::TimsBinDec::getTimsFrameSPtrByOffset(), m_timsDataDirectory, mpa_timsBinDec, and openDatabaseConnection().
Referenced by pappso::TimsDirectXicExtractor::extractTimsXicList(), and getTimsFrameCstSPtrCached().
|
private |
get a Tims frame with his database ID but look in the cache first
Definition at line 1061 of file timsdata.cpp.
References getTimsFrameCstSPtr(), m_cacheSize, m_mutex, and m_timsFrameCache.
Referenced by getMassSpectrumCstSPtr(), getMsLevelBySpectrumIndex(), getQualifiedMassSpectrumByRawIndex(), getQualifiedMs1MassSpectrumByPrecursorId(), and getQualifiedMs2MassSpectrumByPrecursorId().
std::vector< std::size_t > TimsData::getTimsMS1FrameIdRange | ( | double | rt_begin, |
double | rt_end | ||
) | const |
Definition at line 392 of file timsdata.cpp.
References m_timsDataDirectory, and openDatabaseConnection().
Referenced by pappso::TimsDirectXicExtractor::extractTimsXicList().
std::size_t TimsData::getTotalNumberOfPrecursors | ( | ) | const |
get the number of precursors analyzes by PASEF
Definition at line 531 of file timsdata.cpp.
References m_totalNumberOfPrecursors.
Referenced by pappso::TimsMsRunReaderMs2::spectrumListSize().
std::size_t TimsData::getTotalNumberOfScans | ( | ) | const |
get the total number of scans
Definition at line 524 of file timsdata.cpp.
References m_totalNumberOfScans.
Referenced by pappso::TimsMsRunReader::spectrumListSize().
|
private |
Definition at line 155 of file timsdata.cpp.
References m_timsDataDirectory.
Referenced by TimsData(), extractXicListByPrecursorIds(), getQualifiedMassSpectrumByRawIndex(), getQualifiedMs1MassSpectrumByPrecursorId(), getQualifiedMs2MassSpectrumByPrecursorId(), getRawIndexFromCoordinate(), getScanCoordinateFromRawIndex(), getTimsFrameBaseCstSPtr(), getTimsFrameCstSPtr(), and getTimsMS1FrameIdRange().
void TimsData::setMs1FilterCstSPtr | ( | pappso::FilterInterfaceCstSPtr & | filter | ) |
Definition at line 1085 of file timsdata.cpp.
References mcsp_ms1Filter.
Referenced by pappso::TimsMsRunReaderMs2::setMs1FilterCstSPtr().
void TimsData::setMs2FilterCstSPtr | ( | pappso::FilterInterfaceCstSPtr & | filter | ) |
Definition at line 1080 of file timsdata.cpp.
References mcsp_ms2Filter.
Referenced by pappso::TimsMsRunReaderMs2::setMs2FilterCstSPtr().
|
private |
Definition at line 178 of file timsdata.h.
Referenced by getTimsFrameBaseCstSPtrCached(), and getTimsFrameCstSPtrCached().
|
private |
Definition at line 184 of file timsdata.h.
Referenced by getTimsFrameBaseCstSPtrCached(), and getTimsFrameCstSPtrCached().
|
private |
Definition at line 173 of file timsdata.h.
Referenced by TimsData(), extractXicListByPrecursorIds(), getQualifiedMassSpectrumByRawIndex(), getQualifiedMs1MassSpectrumByPrecursorId(), getQualifiedMs2MassSpectrumByPrecursorId(), getRawIndexFromCoordinate(), getScanCoordinateFromRawIndex(), getTimsFrameBaseCstSPtr(), getTimsFrameCstSPtr(), getTimsMS1FrameIdRange(), and openDatabaseConnection().
|
private |
Definition at line 180 of file timsdata.h.
Referenced by getTimsFrameBaseCstSPtrCached().
|
private |
Definition at line 179 of file timsdata.h.
Referenced by getTimsFrameCstSPtrCached().
|
private |
Definition at line 177 of file timsdata.h.
Referenced by TimsData(), and getTotalNumberOfPrecursors().
|
private |
Definition at line 176 of file timsdata.h.
Referenced by TimsData(), and getTotalNumberOfScans().
|
private |
Definition at line 183 of file timsdata.h.
Referenced by TimsData(), getQualifiedMs1MassSpectrumByPrecursorId(), and setMs1FilterCstSPtr().
|
private |
Definition at line 182 of file timsdata.h.
Referenced by TimsData(), getQualifiedMs2MassSpectrumByPrecursorId(), and setMs2FilterCstSPtr().
|
private |
Definition at line 174 of file timsdata.h.
Referenced by TimsData(), ~TimsData(), and getTimsFrameCstSPtr().