libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::TimsFrameMobilityTraces Class Reference

#include <timsframemobilitytraces.h>

Public Member Functions

 TimsFrameMobilityTraces ()
 TimsFrameMobilityTraces (const TimsFrameMobilityTraces &other)
 ~TimsFrameMobilityTraces ()
void extractMobilityTraces (pappso::TimsFrameCstSPtr timsframe_sptr, std::size_t ion_mob_begin, std::size_t ion_mob_end, std::size_t max_traces)
const std::vector< pappso::TraceCstSPtr > & getIonMobTraceList () const
const std::vector< std::size_t > & getTofIndexList () const
const std::vector< std::size_t > & getScanIndexList () const
const std::vector< double > getMzList () const

Private Attributes

pappso::TimsFrameCstSPtr mcsp_timsFrameCstSPtr
std::vector< pappso::TraceCstSPtrm_ionMobTraceList
std::vector< std::size_t > m_tofIndexList
std::vector< std::size_t > m_scanIndexList

Detailed Description

Todo
write docs

Definition at line 38 of file timsframemobilitytraces.h.

Constructor & Destructor Documentation

◆ TimsFrameMobilityTraces() [1/2]

pappso::TimsFrameMobilityTraces::TimsFrameMobilityTraces ( )

Default constructor

Definition at line 34 of file timsframemobilitytraces.cpp.

35{
36}

Referenced by TimsFrameMobilityTraces().

◆ TimsFrameMobilityTraces() [2/2]

pappso::TimsFrameMobilityTraces::TimsFrameMobilityTraces ( const TimsFrameMobilityTraces & other)

Copy constructor

Parameters
otherTODO

Definition at line 38 of file timsframemobilitytraces.cpp.

40{
41}

References TimsFrameMobilityTraces().

◆ ~TimsFrameMobilityTraces()

pappso::TimsFrameMobilityTraces::~TimsFrameMobilityTraces ( )

Destructor

Definition at line 43 of file timsframemobilitytraces.cpp.

44{
45}

Member Function Documentation

◆ extractMobilityTraces()

void pappso::TimsFrameMobilityTraces::extractMobilityTraces ( pappso::TimsFrameCstSPtr timsframe_sptr,
std::size_t ion_mob_begin,
std::size_t ion_mob_end,
std::size_t max_traces )

Definition at line 47 of file timsframemobilitytraces.cpp.

51{
52 m_tofIndexList.clear();
53 m_ionMobTraceList.clear();
54 m_scanIndexList.clear();
55 mcsp_timsFrameCstSPtr = timsframe_sptr;
56
57 pappso::TimsDataFastMap raw_spectrum = pappso::TimsDataFastMap::getTimsDataFastMapInstance();
58 timsframe_sptr.get()->combineScansInTofIndexIntensityMap(
59 raw_spectrum, scan_index_begin, scan_index_end);
60
61 pappso::Trace total_spectrum;
62
63 for(auto index : raw_spectrum.getTofIndexList())
64 {
65
66 total_spectrum.push_back({(double)index, (double)raw_spectrum.readIntensity(index)});
67 }
68 total_spectrum.sortY(Enums::SortOrder::descending);
69
70 qDebug() << total_spectrum.size();
71
72 total_spectrum.sortY(Enums::SortOrder::descending);
73
74 for(std::size_t i = scan_index_begin; i < (scan_index_end + 1); i++)
75 {
76 m_scanIndexList.push_back(i);
77 }
78
79 for(auto &datapoint : total_spectrum)
80 {
81 pappso::Trace trace(
82 timsframe_sptr.get()->getIonMobilityTraceByTofIndexRange(datapoint.x - 1,
83 datapoint.x + 1,
85 scan_index_begin,
86 scan_index_end));
87
88 m_ionMobTraceList.push_back(trace.makeTraceSPtr());
89 m_tofIndexList.push_back(datapoint.x);
90 if(m_ionMobTraceList.size() >= max_traces)
91 break;
92 }
93 qDebug();
94}
const std::vector< quint32 > & getTofIndexList() const
std::size_t readIntensity(quint32)
reads intensity for a tof_index
static TimsDataFastMap & getTimsDataFastMapInstance()
pappso::TimsFrameCstSPtr mcsp_timsFrameCstSPtr
std::vector< std::size_t > m_tofIndexList
std::vector< pappso::TraceCstSPtr > m_ionMobTraceList
std::vector< std::size_t > m_scanIndexList
void sortY(Enums::SortOrder sort_order=Enums::SortOrder::ascending)
Definition trace.cpp:1081
@ sum
sum of intensities
Definition types.h:279

References pappso::Enums::descending, pappso::TimsDataFastMap::getTimsDataFastMapInstance(), pappso::TimsDataFastMap::getTofIndexList(), m_ionMobTraceList, m_scanIndexList, m_tofIndexList, pappso::Trace::makeTraceSPtr(), mcsp_timsFrameCstSPtr, pappso::TimsDataFastMap::readIntensity(), pappso::Trace::sortY(), and pappso::Enums::sum.

◆ getIonMobTraceList()

const std::vector< pappso::TraceCstSPtr > & pappso::TimsFrameMobilityTraces::getIonMobTraceList ( ) const

Definition at line 97 of file timsframemobilitytraces.cpp.

98{
99 return m_ionMobTraceList;
100}

References m_ionMobTraceList.

◆ getMzList()

const std::vector< double > pappso::TimsFrameMobilityTraces::getMzList ( ) const

Definition at line 107 of file timsframemobilitytraces.cpp.

108{
109 MzCalibrationInterface *mz_calibration_p =
110 mcsp_timsFrameCstSPtr.get()->getMzCalibrationInterfaceSPtr().get();
111 if(mz_calibration_p == nullptr)
112 {
113 throw pappso::ExceptionNotFound(QObject::tr("mz calibration pointer not found"));
114 }
115 std::vector<double> mz_list;
116 for(std::size_t tof : m_tofIndexList)
117 {
118 mz_list.push_back(mz_calibration_p->getMzFromTofIndex((quint32)tof));
119 }
120 return mz_list;
121}

References pappso::MzCalibrationInterface::getMzFromTofIndex(), m_tofIndexList, and mcsp_timsFrameCstSPtr.

◆ getScanIndexList()

const std::vector< std::size_t > & pappso::TimsFrameMobilityTraces::getScanIndexList ( ) const

Definition at line 123 of file timsframemobilitytraces.cpp.

124{
125 return m_scanIndexList;
126}

References m_scanIndexList.

◆ getTofIndexList()

const std::vector< std::size_t > & pappso::TimsFrameMobilityTraces::getTofIndexList ( ) const

Definition at line 102 of file timsframemobilitytraces.cpp.

103{
104 return m_tofIndexList;
105}

References m_tofIndexList.

Member Data Documentation

◆ m_ionMobTraceList

std::vector<pappso::TraceCstSPtr> pappso::TimsFrameMobilityTraces::m_ionMobTraceList
private

Definition at line 71 of file timsframemobilitytraces.h.

Referenced by extractMobilityTraces(), and getIonMobTraceList().

◆ m_scanIndexList

std::vector<std::size_t> pappso::TimsFrameMobilityTraces::m_scanIndexList
private

Definition at line 73 of file timsframemobilitytraces.h.

Referenced by extractMobilityTraces(), and getScanIndexList().

◆ m_tofIndexList

std::vector<std::size_t> pappso::TimsFrameMobilityTraces::m_tofIndexList
private

Definition at line 72 of file timsframemobilitytraces.h.

Referenced by extractMobilityTraces(), getMzList(), and getTofIndexList().

◆ mcsp_timsFrameCstSPtr

pappso::TimsFrameCstSPtr pappso::TimsFrameMobilityTraces::mcsp_timsFrameCstSPtr
private

Definition at line 69 of file timsframemobilitytraces.h.

Referenced by extractMobilityTraces(), and getMzList().


The documentation for this class was generated from the following files: