void PeakPickerSH::pickExperiment(const MSExperiment<> & input, MSExperiment<> & output) { // make sure that output is clear output.clear(true); // copy experimental settings static_cast<ExperimentalSettings &>(output) = input; // resize output with respect to input output.resize(input.size()); std::cout << "Before loop, input size = " << input.size() << std::endl; Size progress = 0; for (Size scan_idx = 0; scan_idx != input.size(); ++scan_idx) { output[scan_idx].clear(true); output[scan_idx].SpectrumSettings::operator=(input[scan_idx]); output[scan_idx].MetaInfoInterface::operator=(input[scan_idx]); output[scan_idx].setRT(input[scan_idx].getRT()); output[scan_idx].setMSLevel(input[scan_idx].getMSLevel()); output[scan_idx].setName(input[scan_idx].getName()); output[scan_idx].setType(SpectrumSettings::PEAKS); if (input[scan_idx].getMSLevel() != 1) { // When not considering MS2 data (MS2 fragment mass tracing=0), Lukas leaves out // the entire scan (instead of just copying it to the output as seen in // another plugin). // pick(input[scan_idx], output[scan_idx], 4.0); } else { // TODO: Read value 4.0 from parameters # PeakPickerSH.cpp pick(input[scan_idx], output[scan_idx], 5.0); } setProgress(++progress); } std::cout << "After loop" << std::endl; endProgress(); }