diff --git a/src/core/msrun.cpp b/src/core/msrun.cpp index 7a88be06143e8c6f38961fcdafae100d48a47a8b..06142d4095d08eaff6b0ac8ef15fd41c348aa55a 100644 --- a/src/core/msrun.cpp +++ b/src/core/msrun.cpp @@ -69,71 +69,7 @@ MsRun::getMsRunReaderSPtr() // qDebug() << " filename=" << getFileName(); if(_msrun_reader_sp == nullptr) { - qDebug() << " runid=" << getRunId() << " xmlid=" << getXmlId(); - pappso::MsFileAccessor *p_accessor = nullptr; - - try - { - // pappso::MsFileAccessor accessor(getFileName(), ""); - p_accessor = new pappso::MsFileAccessor(getFileName(), "runa1"); - p_accessor->setPreferedFileReaderType( - pappso::MzFormat::brukerTims, pappso::FileReaderType::tims_ms2); - } - catch(pappso::ExceptionNotFound &error) - { - qDebug() << "not found"; - _msrun_reader_sp = nullptr; - /// p_accessor = nullptr; - // throw error; - // file not found, don't throw exception, we'll try another location - } - if(p_accessor != nullptr) - { - try - { - _msrun_reader_sp = - p_accessor->getMsRunReaderSPtrByRunId(getRunId(), getXmlId()); - delete p_accessor; - p_accessor = nullptr; - - //qDebug() << m_centroidOptions; - if(!m_centroidOptions.isEmpty()) - { - pappso::TimsMsRunReaderMs2 *tims2_reader = - dynamic_cast<pappso::TimsMsRunReaderMs2 *>( - _msrun_reader_sp.get()); - if(tims2_reader != nullptr) - { - qDebug() << m_centroidOptions; - QStringList option_list = m_centroidOptions.split(" "); - std::shared_ptr<pappso::FilterPseudoCentroid> ms2filter = - std::make_shared<pappso::FilterPseudoCentroid>( - option_list.at(0).toDouble(), - option_list.at(1).toDouble(), - option_list.at(2).toDouble(), - option_list.at(3).toDouble()); - - tims2_reader->setMs2FilterCstSPtr(ms2filter); - qDebug() << m_centroidOptions; - } - } - } - - catch(pappso::PappsoException &error2) - { - _msrun_reader_sp = nullptr; - if(p_accessor != nullptr) - { - delete p_accessor; - p_accessor = nullptr; - } - throw error2; - } - } - } - else - { - // qDebug(); + setMsRunReaderSp(getFileName()); } return _msrun_reader_sp; @@ -144,73 +80,80 @@ MsRun::getMsRunReaderSPtrMgfToTdf(QString tdf_file) { qDebug() << " filename=" << getFileName(); qDebug() << "filenameTDF = " << tdf_file; + if(_msrun_reader_sp == nullptr) { - qDebug() << " runid=" << getRunId() << " xmlid=" << getXmlId(); - pappso::MsFileAccessor *p_accessor = nullptr; + setMsRunReaderSp(tdf_file); + } - try - { + return _msrun_reader_sp; +} - p_accessor = new pappso::MsFileAccessor(tdf_file, "runa1"); +void +MsRun::setMsRunReaderSp(QString ms_run_file) +{ + qDebug() << " runid=" << getRunId() << " xmlid=" << getXmlId(); + pappso::MsFileAccessor *p_accessor = nullptr; - p_accessor->setPreferedFileReaderType( - pappso::MzFormat::brukerTims, pappso::FileReaderType::tims_ms2); - } - catch(pappso::ExceptionNotFound &error) - { - qDebug() << "not found"; - _msrun_reader_sp = nullptr; - /// p_accessor = nullptr; - // throw error; - // file not found, don't throw exception, we'll try another location - } - if(p_accessor != nullptr) + try + { + + p_accessor = new pappso::MsFileAccessor(ms_run_file, "runa1"); + + p_accessor->setPreferedFileReaderType(pappso::MzFormat::brukerTims, + pappso::FileReaderType::tims_ms2); + } + catch(pappso::ExceptionNotFound &error) + { + qDebug() << "not found"; + _msrun_reader_sp = nullptr; + /// p_accessor = nullptr; + // throw error; + // file not found, don't throw exception, we'll try another location + } + if(p_accessor != nullptr) + { + try { - try - { - _msrun_reader_sp = - p_accessor->getMsRunReaderSPtrByRunId(getRunId(), getXmlId()); - delete p_accessor; - p_accessor = nullptr; + _msrun_reader_sp = + p_accessor->getMsRunReaderSPtrByRunId(getRunId(), getXmlId()); + delete p_accessor; + p_accessor = nullptr; - qDebug() << m_centroidOptions; - if(!m_centroidOptions.isEmpty()) + qDebug() << m_centroidOptions; + if(!m_centroidOptions.isEmpty()) + { + pappso::TimsMsRunReaderMs2 *tims2_reader = + dynamic_cast<pappso::TimsMsRunReaderMs2 *>( + _msrun_reader_sp.get()); + if(tims2_reader != nullptr) { - pappso::TimsMsRunReaderMs2 *tims2_reader = - dynamic_cast<pappso::TimsMsRunReaderMs2 *>( - _msrun_reader_sp.get()); - if(tims2_reader != nullptr) - { - qDebug() << m_centroidOptions; - QStringList option_list = m_centroidOptions.split(" "); - std::shared_ptr<pappso::FilterPseudoCentroid> ms2filter = - std::make_shared<pappso::FilterPseudoCentroid>( - option_list.at(0).toDouble(), - option_list.at(1).toDouble(), - option_list.at(2).toDouble(), - option_list.at(3).toDouble()); - - tims2_reader->setMs2FilterCstSPtr(ms2filter); - qDebug() << m_centroidOptions; - } + qDebug() << m_centroidOptions; + QStringList option_list = m_centroidOptions.split(" "); + std::shared_ptr<pappso::FilterPseudoCentroid> ms2filter = + std::make_shared<pappso::FilterPseudoCentroid>( + option_list.at(0).toDouble(), + option_list.at(1).toDouble(), + option_list.at(2).toDouble(), + option_list.at(3).toDouble()); + + tims2_reader->setMs2FilterCstSPtr(ms2filter); + qDebug() << m_centroidOptions; } } + } - catch(pappso::PappsoException &error2) + catch(pappso::PappsoException &error2) + { + _msrun_reader_sp = nullptr; + if(p_accessor != nullptr) { - _msrun_reader_sp = nullptr; - if(p_accessor != nullptr) - { - delete p_accessor; - p_accessor = nullptr; - } - throw error2; + delete p_accessor; + p_accessor = nullptr; } + throw error2; } } - - return _msrun_reader_sp; } diff --git a/src/core/msrun.h b/src/core/msrun.h index 6ec2f273fc763c268438247a489e63c130dd0f28..3aeb53b14399da2eef067c86fb01c2ab4753910c 100644 --- a/src/core/msrun.h +++ b/src/core/msrun.h @@ -79,6 +79,7 @@ class MsRun : public pappso::MsRunId pappso::MsRunReaderSPtr &getMsRunReaderSPtr(); pappso::MsRunReaderSPtr &getMsRunReaderSPtrMgfToTdf(QString tdf_file); + void setMsRunReaderSp(QString ms_run_file); /** @brief release shared pointer on MSrun reader */