pappso::MsRunXicExtractorDisk Class Reference

`#include <msrunxicextractordisk.h>`

Inheritance diagram for pappso::MsRunXicExtractorDisk:

## Public Member Functions

| MsRunXicExtractorDisk (MsRunReaderSPtr &msrun_reader)
| MsRunXicExtractorDisk (const MsRunXicExtractorDisk &other)
virtual | ~MsRunXicExtractorDisk ()
Public Member Functions inherited from pappso::MsRunXicExtractor
| MsRunXicExtractor (const MsRunXicExtractor &other)
virtual | ~MsRunXicExtractor ()
Public Member Functions inherited from pappso::MsRunXicExtractorInterface
void | setXicExtractMethod (XicExtractMethod method)
| set the XIC extraction method More...
void | setRetentionTimeAroundTarget (double range_in_seconds)
| set the retention time range in seconds around the target rt More...
virtual void | extractXicCoordSPtrList (UiMonitorInterface &monitor, std::vector< XicCoordSPtr > &xic_coord_list) final
| extract a list of XIC given a list of xic coordinates to extract More...
virtual void | extractXicCoordSPtrListParallelized (UiMonitorInterface &monitor, std::vector< XicCoordSPtr > &xic_coord_list) final
| multithreaded XIC extraction More...
const MsRunIdCstSPtr & | getMsRunId () const
const MsRunReaderSPtr & | getMsRunReaderSPtr () const
| get the msrunreader currently used for XIC extraction More...
void | setPostExtractionTraceFilterCstSPtr (pappso::FilterInterfaceCstSPtr &filter)
| filter interface to apply just after XIC extration on each trace More...

## Protected Member Functions

| MsRunXicExtractorDisk (MsRunReaderSPtr &msrun_reader, const QDir &temporary_dir)
virtual void | protectedExtractXicCoordSPtrList (UiMonitorInterface &monitor, std::vector< XicCoordSPtr >::iterator it_xic_coord_list_begin, std::vector< XicCoordSPtr >::iterator it_xic_coord_list_end) override
void | prepareExtractor ()
void | serializeMsRun ()
virtual void | storeSlices (std::map< unsigned int, MassSpectrum > &slice_vector, std::size_t ipos)
| store MassSpectrum slices (by daltons) for a given retention time More...
void | appendSliceOnDisk (unsigned int slice_number, MassSpectrum &spectrum, std::size_t ipos)
| append a slice on disk (in a file) More...
std::vector< MsRunSliceSPtr > | acquireSlices (const MzRange &mz_range)
| retrieve all the slices corresponding to a given mz_range More...
MsRunSliceSPtr | unserializeSlice (unsigned int slice_number)
| get one slice from disk by her slice number (dalton) More...
virtual void | endPwizRead ()
Protected Member Functions inherited from pappso::MsRunXicExtractor
| MsRunXicExtractor (MsRunReaderSPtr &msrun_reader)
virtual void | getXicFromPwizMSDataFile (std::vector< Xic * > &xic_list, const std::vector< MzRange > &mass_range_list, pappso::pappso_double rt_begin, pappso::pappso_double rt_end)
Protected Member Functions inherited from pappso::MsRunXicExtractorInterface
| MsRunXicExtractorInterface (MsRunReaderSPtr &msrun_reader)
| constructor is private, use the MsRunXicExtractorFactory More...
| MsRunXicExtractorInterface (const MsRunXicExtractorInterface &other)
virtual | ~MsRunXicExtractorInterface ()
virtual void | postExtractionProcess (UiMonitorInterface &monitor, std::vector< XicCoordSPtr >::iterator it_xic_coord_list_begin, std::vector< XicCoordSPtr >::iterator it_xic_coord_list_end)
| possible post extraction process, eventually trace filters More...

## Protected Attributes

QString | m_temporaryDirectory
QTemporaryDir * | mpa_temporaryDirectory = nullptr
std::vector< pappso::pappso_double > | m_retentionTimeList
pappso::pappso_double | m_maxMz = 0
pappso::pappso_double | m_minMz = 5000
std::size_t | m_rtSize = 0
std::deque< MsRunSliceSPtr > | m_msRunSliceListCache
QMutex | m_mutex
Protected Attributes inherited from pappso::MsRunXicExtractor
std::vector< MsRunXicExtractorPoints > | m_msrun_points
Protected Attributes inherited from pappso::MsRunXicExtractorInterface
MsRunReaderSPtr | msp_msrun_reader
XicExtractMethod | m_xicExtractMethod = XicExtractMethod::max
double | m_retentionTimeAroundTarget = std::numeric_limits<double>::max()
pappso::FilterInterfaceCstSPtr | mcsp_postExtractionTraceFilter = nullptr

## Private Member Functions

void | extractOneXicCoord (XicCoord &xic_coord)

## Private Attributes

friend | MsRunXicExtractorFactory

## Detailed Description

Definition at line 44 of file msrunxicextractordisk.h.

## Constructor & Destructor Documentation

## MsRunXicExtractorDisk() [1/3]

pappso::MsRunXicExtractorDisk::MsRunXicExtractorDisk | ( | MsRunReaderSPtr & | msrun_reader | ) |

## MsRunXicExtractorDisk() [2/3]

pappso::MsRunXicExtractorDisk::MsRunXicExtractorDisk | ( | const MsRunXicExtractorDisk & | other | ) |

Definition at line 47 of file msrunxicextractordisk.cpp.

: pappso::MsRunXicExtractor(other)
{
m_temporaryDirectory = other.m_temporaryDirectory;
mpa_temporaryDirectory = new QTemporaryDir(
QString("%1/msrun_%2_")
.arg(m_temporaryDirectory)
.arg(msp_msrun_reader.get()->getMsRunId().get()->getXmlId()));
}
pappso::MsRunXicExtractorDisk::mpa_temporaryDirectory
QTemporaryDir * mpa_temporaryDirectory
Definition: msrunxicextractordisk.h:100
pappso::MsRunXicExtractorDisk::m_temporaryDirectory
QString m_temporaryDirectory
Definition: msrunxicextractordisk.h:99
pappso::MsRunXicExtractorInterface::msp_msrun_reader
MsRunReaderSPtr msp_msrun_reader
Definition: msrunxicextractorinterface.h:125
pappso::MsRunXicExtractor
Definition: msrunxicextractor.h:42

References m_temporaryDirectory, mpa_temporaryDirectory, and pappso::MsRunXicExtractorInterface::msp_msrun_reader.

## ~MsRunXicExtractorDisk()

pappso::MsRunXicExtractorDisk::~MsRunXicExtractorDisk | ( |  | ) |

virtual

Definition at line 58 of file msrunxicextractordisk.cpp.

{
if(mpa_temporaryDirectory != nullptr)
{
delete mpa_temporaryDirectory;
}
}

References mpa_temporaryDirectory.

## MsRunXicExtractorDisk() [3/3]

pappso::MsRunXicExtractorDisk::MsRunXicExtractorDisk | ( | MsRunReaderSPtr & | msrun_reader,
|  | const QDir & | temporary_dir
| ) |  |

protected

Definition at line 39 of file msrunxicextractordisk.cpp.

: pappso::MsRunXicExtractor(msrun_reader)
{
mpa_temporaryDirectory = nullptr;
m_temporaryDirectory = temporary_dir.absolutePath();
}

References m_temporaryDirectory, and mpa_temporaryDirectory.

## Member Function Documentation

## acquireSlices()

std::vector< MsRunSliceSPtr > pappso::MsRunXicExtractorDisk::acquireSlices | ( | const MzRange & | mz_range | ) |

protected

retrieve all the slices corresponding to a given mz_range

Parameters

  mz_range | desired mz range

Definition at line 327 of file msrunxicextractordisk.cpp.

{
QMutexLocker lock(&m_mutex);
std::vector<MsRunSliceSPtr> slice_list;
for(unsigned int i = mz_range.lower(); i <= mz_range.upper(); i++)
{
auto it = std::find_if(m_msRunSliceListCache.begin(),
m_msRunSliceListCache.end(),
[i](const MsRunSliceSPtr &slice_sp) {
return slice_sp.get()->getSliceNumber() == i;
});
if(it != m_msRunSliceListCache.end())
{
slice_list.push_back(*it);
m_msRunSliceListCache.push_back(*it);
}
else
{
MsRunSliceSPtr slice_sp = unserializeSlice(i);
slice_list.push_back(slice_sp);
m_msRunSliceListCache.push_back(slice_sp);
}
}
if(m_msRunSliceListCache.size() > 20)
{
m_msRunSliceListCache.pop_front();
}
return slice_list;
}
pappso::MsRunXicExtractorDisk::m_msRunSliceListCache
std::deque< MsRunSliceSPtr > m_msRunSliceListCache
Definition: msrunxicextractordisk.h:108
pappso::MsRunXicExtractorDisk::m_mutex
QMutex m_mutex
Definition: msrunxicextractordisk.h:110
pappso::MsRunXicExtractorDisk::unserializeSlice
MsRunSliceSPtr unserializeSlice(unsigned int slice_number)
get one slice from disk by her slice number (dalton)
Definition: msrunxicextractordisk.cpp:286
pappso::MsRunSliceSPtr
std::shared_ptr< const MsRunSlice > MsRunSliceSPtr
Definition: msrunslice.h:39

References pappso::MzRange::lower(), m_msRunSliceListCache, m_mutex, unserializeSlice(), and pappso::MzRange::upper().

Referenced by extractOneXicCoord().

## appendSliceOnDisk()

void pappso::MsRunXicExtractorDisk::appendSliceOnDisk | ( | unsigned int | slice_number,
|  | MassSpectrum & | spectrum,
|  | std::size_t | ipos
| ) |  |

protected

append a slice on disk (in a file)

Parameters

  slice_number | the slice number == dalton integer
  spectrum | the part of the mass spectrum (mz/intensity) in the range of the slice number
  ipos | the position in the retention time vector

Definition at line 252 of file msrunxicextractordisk.cpp.

{
// qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
QFile slice_file(
QString("%1/%2").arg(mpa_temporaryDirectory->path()).arg(slice_number));
bool new_file = false;
if(!slice_file.exists())
{
new_file = true;
}
if(!slice_file.open(QIODevice::WriteOnly | QIODevice::Append))
{
throw pappso::PappsoException(
QObject::tr("unable to open file %1").arg(slice_file.fileName()));
}
QDataStream stream(&slice_file);
if(new_file)
{
stream << (quint32)slice_number;
stream << (quint32)m_rtSize;
}
stream << (quint32)ipos;
stream << spectrum;
slice_file.flush();
slice_file.close();
// qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
}
pappso::MsRunXicExtractorDisk::m_rtSize
std::size_t m_rtSize
Definition: msrunxicextractordisk.h:106
pappso::PappsoException
Definition: pappsoexception.h:42

References m_rtSize, and mpa_temporaryDirectory.

Referenced by storeSlices().

## endPwizRead()

void pappso::MsRunXicExtractorDisk::endPwizRead | ( |  | ) |

protected virtual

Reimplemented in pappso::MsRunXicExtractorDiskBuffer.

Definition at line 360 of file msrunxicextractordisk.cpp.

{
msp_msrun_reader.get()->releaseDevice();
}

References pappso::MsRunXicExtractorInterface::msp_msrun_reader.

Referenced by serializeMsRun().

## extractOneXicCoord()

void pappso::MsRunXicExtractorDisk::extractOneXicCoord | ( | XicCoord & | xic_coord | ) |

private

Definition at line 115 of file msrunxicextractordisk.cpp.

{
std::shared_ptr<Xic> msrunxic_sp = xic_coord.xicSptr;
double rt_begin = xic_coord.rtTarget - m_retentionTimeAroundTarget;
double rt_end = xic_coord.rtTarget + m_retentionTimeAroundTarget;
std::vector<MsRunSliceSPtr> slice_list;
slice_list = acquireSlices(xic_coord.mzRange);
if(slice_list.size() == 0)
{
throw pappso::PappsoException(
QObject::tr("Error getMsRunXicSp slice_list.size() == 0"));
}
for(std::size_t i = 0; i < m_retentionTimeList.size(); i++)
{
DataPoint xic_element;
xic_element.x = m_retentionTimeList[i];
xic_element.y = 0;
if((xic_element.x < rt_begin) || (xic_element.x > rt_end))
continue;
for(auto &&msrun_slice : slice_list)
{
const MassSpectrum &spectrum = msrun_slice.get()->getSpectrum(i);
for(auto &&peak : spectrum)
{
if(xic_coord.mzRange.contains(peak.x))
{
if(m_xicExtractMethod == XicExtractMethod::sum)
{
xic_element.y += peak.y;
}
else
{
if(xic_element.y < peak.y)
{
xic_element.y = peak.y;
}
}
}
}
}
msrunxic_sp.get()->push_back(xic_element);
}
}
pappso::MsRunXicExtractorDisk::acquireSlices
std::vector< MsRunSliceSPtr > acquireSlices(const MzRange &mz_range)
retrieve all the slices corresponding to a given mz_range
Definition: msrunxicextractordisk.cpp:327
pappso::MsRunXicExtractorDisk::m_retentionTimeList
std::vector< pappso::pappso_double > m_retentionTimeList
Definition: msrunxicextractordisk.h:101
pappso::MsRunXicExtractorInterface::m_retentionTimeAroundTarget
double m_retentionTimeAroundTarget
Definition: msrunxicextractorinterface.h:127
pappso::MsRunXicExtractorInterface::m_xicExtractMethod
XicExtractMethod m_xicExtractMethod
Definition: msrunxicextractorinterface.h:126
pappso::XicExtractMethod::sum
@ sum
sum of intensities

References acquireSlices(), pappso::MzRange::contains(), pappso::MsRunXicExtractorInterface::m_retentionTimeAroundTarget, m_retentionTimeList, pappso::MsRunXicExtractorInterface::m_xicExtractMethod, pappso::XicCoord::mzRange, pappso::XicCoord::rtTarget, pappso::sum, pappso::DataPoint::x, pappso::XicCoord::xicSptr, and pappso::DataPoint::y.

Referenced by protectedExtractXicCoordSPtrList().

## prepareExtractor()

void pappso::MsRunXicExtractorDisk::prepareExtractor | ( |  | ) |

protected

Definition at line 67 of file msrunxicextractordisk.cpp.

{
qDebug();
try
{
serializeMsRun();
// msp_msrun_reader = nullptr;
}
catch(pappso::PappsoException &errora)
{
qDebug();
throw pappso::PappsoException(
QObject::tr("Error reading file (%1) : %2")
.arg(msp_msrun_reader.get()->getMsRunId().get()->toString())
.arg(errora.qwhat()));
}
catch(std::exception &error)
{
qDebug();
throw pappso::PappsoException(
QObject::tr("Error reading file (%1) using : %2")
.arg(msp_msrun_reader.get()->getMsRunId().get()->toString())
.arg(error.what()));
}
}
pappso::MsRunXicExtractorDisk::serializeMsRun
void serializeMsRun()
Definition: msrunxicextractordisk.cpp:167
pappso::PappsoException::qwhat
virtual const QString & qwhat() const
Definition: pappsoexception.h:68

References pappso::MsRunXicExtractorInterface::msp_msrun_reader, pappso::PappsoException::qwhat(), and serializeMsRun().

## protectedExtractXicCoordSPtrList()

void pappso::MsRunXicExtractorDisk::protectedExtractXicCoordSPtrList | ( | UiMonitorInterface & | monitor,
|  | std::vector< XicCoordSPtr >::iterator | it_xic_coord_list_begin,
|  | std::vector< XicCoordSPtr >::iterator | it_xic_coord_list_end
| ) |  |

override protected virtual

Reimplemented from pappso::MsRunXicExtractor.

Definition at line 95 of file msrunxicextractordisk.cpp.

{
// sort xic by mz:
std::sort(it_xic_coord_list_begin,
it_xic_coord_list_end,
[](XicCoordSPtr &a, XicCoordSPtr &b) {
return a.get()->mzRange.getMz() < b.get()->mzRange.getMz();
});
for(auto it = it_xic_coord_list_begin; it != it_xic_coord_list_end; it++)
{
extractOneXicCoord(*(it->get()));
monitor.count();
}
}
pappso::MsRunXicExtractorDisk::extractOneXicCoord
void extractOneXicCoord(XicCoord &xic_coord)
Definition: msrunxicextractordisk.cpp:115
pappso::PeptideIonNter::a
@ a
pappso::PeptideIonNter::b
@ b
pappso::XicCoordSPtr
std::shared_ptr< XicCoord > XicCoordSPtr
Definition: xiccoord.h:41

References pappso::a, pappso::b, pappso::UiMonitorInterface::count(), and extractOneXicCoord().

## serializeMsRun()

void pappso::MsRunXicExtractorDisk::serializeMsRun | ( |  | ) |

protected

Definition at line 167 of file msrunxicextractordisk.cpp.

{
qDebug();
m_minMz = 5000;
m_maxMz = 0;
unsigned int slice_number;
std::map<unsigned int, MassSpectrum> spectrum_map;
/*
const pwiz::msdata::SpectrumList *p_spectrum_list =
p_msdatafile->run.spectrumListPtr.get();
std::size_t spectrum_list_size = p_spectrum_list->size();
pwiz::msdata::SpectrumPtr pwiz_spectrum;
*/
m_rtSize = m_msrun_points.size();
MassSpectrumCstSPtr spectrum;
for(auto &&msrun_point : m_msrun_points)
{
spectrum_map.clear();
m_retentionTimeList.push_back(msrun_point.rt);
spectrum =
msp_msrun_reader.get()->massSpectrumCstSPtr(msrun_point.spectrum_index);
const MassSpectrum *p_spectrum = spectrum.get();
if(p_spectrum->size() > 0)
{
if(p_spectrum->begin()->x < m_minMz)
{
m_minMz = p_spectrum->begin()->x;
}
// iterate through the m/z-intensity pairs
if(p_spectrum->back().x > m_maxMz)
{
m_maxMz = p_spectrum->back().x;
}
for(auto &peak : *p_spectrum)
{
slice_number = peak.x;
std::pair<std::map<unsigned int, MassSpectrum>::iterator, bool>
ret = spectrum_map.insert(std::pair<unsigned int, MassSpectrum>(
slice_number, MassSpectrum()));
ret.first->second.push_back(peak);
// auto ret = spectrum_map.insert(std::pair<unsigned int,
// MassSpectrum>(slice_number,MassSpectrum()));
// ret.first->second.push_back(peak);
}
// slices are ready for this retention time
storeSlices(spectrum_map, m_retentionTimeList.size() - 1);
}
}
endPwizRead();
qDebug();
}
pappso::MsRunXicExtractorDisk::endPwizRead
virtual void endPwizRead()
Definition: msrunxicextractordisk.cpp:360
pappso::MsRunXicExtractorDisk::storeSlices
virtual void storeSlices(std::map< unsigned int, MassSpectrum > &slice_vector, std::size_t ipos)
store MassSpectrum slices (by daltons) for a given retention time
Definition: msrunxicextractordisk.cpp:238
pappso::MsRunXicExtractorDisk::m_maxMz
pappso::pappso_double m_maxMz
Definition: msrunxicextractordisk.h:103
pappso::MsRunXicExtractorDisk::m_minMz
pappso::pappso_double m_minMz
Definition: msrunxicextractordisk.h:104
pappso::MsRunXicExtractor::m_msrun_points
std::vector< MsRunXicExtractorPoints > m_msrun_points
Definition: msrunxicextractor.h:106
pappso::MassSpectrumCstSPtr
std::shared_ptr< const MassSpectrum > MassSpectrumCstSPtr
Definition: massspectrum.h:55

References endPwizRead(), m_maxMz, m_minMz, pappso::MsRunXicExtractor::m_msrun_points, m_retentionTimeList, m_rtSize, pappso::MsRunXicExtractorInterface::msp_msrun_reader, and storeSlices().

Referenced by prepareExtractor().

## storeSlices()

void pappso::MsRunXicExtractorDisk::storeSlices | ( | std::map< unsigned int, MassSpectrum > & | slice_vector,
|  | std::size_t | ipos
| ) |  |

protected virtual

store MassSpectrum slices (by daltons) for a given retention time

Parameters

  slice_vector | mass spectrum chunks (by daltons)
  ipos | the position in the retention time vector

Reimplemented in pappso::MsRunXicExtractorDiskBuffer.

Definition at line 238 of file msrunxicextractordisk.cpp.

{
// qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
for(auto &&spectrum_pair : spectrum_map)
{
appendSliceOnDisk(spectrum_pair.first, spectrum_pair.second, ipos);
}
// qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__;
}
pappso::MsRunXicExtractorDisk::appendSliceOnDisk
void appendSliceOnDisk(unsigned int slice_number, MassSpectrum &spectrum, std::size_t ipos)
append a slice on disk (in a file)
Definition: msrunxicextractordisk.cpp:252

References appendSliceOnDisk().

Referenced by serializeMsRun().

## unserializeSlice()

MsRunSliceSPtr pappso::MsRunXicExtractorDisk::unserializeSlice | ( | unsigned int | slice_number | ) |

protected

get one slice from disk by her slice number (dalton)

Parameters

  slice_number | the slice number == dalton integer

Definition at line 286 of file msrunxicextractordisk.cpp.

{
qDebug();
try
{
std::shared_ptr<MsRunSlice> msrun_slice_sp =
std::make_shared<MsRunSlice>(MsRunSlice());
QFile slice_file(
QString("%1/%2").arg(mpa_temporaryDirectory->path()).arg(slice_number));
if(!slice_file.exists())
{
msrun_slice_sp.get()->setSize(m_rtSize);
msrun_slice_sp.get()->setSliceNumber(slice_number);
return msrun_slice_sp;
}
if(!slice_file.open(QIODevice::ReadOnly))
{
throw pappso::PappsoException(
QObject::tr("unable to open file %1 in readonly")
.arg(slice_file.fileName()));
}
QDataStream stream(&slice_file);
stream >> *(msrun_slice_sp.get());
slice_file.close();
return msrun_slice_sp;
}
catch(pappso::PappsoException &error)
{
throw pappso::PappsoException(
QObject::tr("error unserializing slice %1:\n%2")
.arg(slice_number)
.arg(error.qwhat()));
}
qDebug();
}

References m_rtSize, mpa_temporaryDirectory, and pappso::PappsoException::qwhat().

Referenced by acquireSlices().

## Member Data Documentation

## m_maxMz

pappso::pappso_double pappso::MsRunXicExtractorDisk::m_maxMz = 0

protected

Definition at line 103 of file msrunxicextractordisk.h.

Referenced by serializeMsRun().

## m_minMz

pappso::pappso_double pappso::MsRunXicExtractorDisk::m_minMz = 5000

protected

Definition at line 104 of file msrunxicextractordisk.h.

Referenced by serializeMsRun().

## m_msRunSliceListCache

std::deque<MsRunSliceSPtr> pappso::MsRunXicExtractorDisk::m_msRunSliceListCache

protected

Definition at line 108 of file msrunxicextractordisk.h.

Referenced by acquireSlices().

## m_mutex

QMutex pappso::MsRunXicExtractorDisk::m_mutex

protected

Definition at line 110 of file msrunxicextractordisk.h.

Referenced by acquireSlices().

## m_retentionTimeList

std::vector<pappso::pappso_double> pappso::MsRunXicExtractorDisk::m_retentionTimeList

protected

Definition at line 101 of file msrunxicextractordisk.h.

Referenced by extractOneXicCoord(), and serializeMsRun().

## m_rtSize

std::size_t pappso::MsRunXicExtractorDisk::m_rtSize = 0

protected

Definition at line 106 of file msrunxicextractordisk.h.

Referenced by appendSliceOnDisk(), pappso::MsRunXicExtractorDiskBuffer::flushBufferOnDisk(), serializeMsRun(), and unserializeSlice().

## m_temporaryDirectory

QString pappso::MsRunXicExtractorDisk::m_temporaryDirectory

protected

Definition at line 99 of file msrunxicextractordisk.h.

Referenced by MsRunXicExtractorDisk().

## mpa_temporaryDirectory

QTemporaryDir* pappso::MsRunXicExtractorDisk::mpa_temporaryDirectory = nullptr

protected

Definition at line 100 of file msrunxicextractordisk.h.

Referenced by MsRunXicExtractorDisk(), ~MsRunXicExtractorDisk(), appendSliceOnDisk(), pappso::MsRunXicExtractorDiskBuffer::flushBufferOnDisk(), and unserializeSlice().

## MsRunXicExtractorFactory

friend pappso::MsRunXicExtractorDisk::MsRunXicExtractorFactory

private

Definition at line 46 of file msrunxicextractordisk.h.

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

- pappsomspp/xicextractor/private/msrunxicextractordisk.h
- pappsomspp/xicextractor/private/msrunxicextractordisk.cpp