MCPcopy Create free account
hub / github.com/OpenMS/OpenMS / determineIMFormat

Method determineIMFormat

src/openms/source/IONMOBILITY/IMTypes.cpp:64–87  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

62 }
63
64 IMFormat IMTypes::determineIMFormat(const MSExperiment& exp)
65 {
66 std::set<IMFormat> occs;
67 for (const auto& spec : exp.getSpectra())
68 {
69 occs.insert(determineIMFormat(spec));
70 }
71 occs.erase(IMFormat::NONE); // ignore NONE (i.e. normal spectra)
72
73 if (occs.empty())
74 {
75 return IMFormat::NONE;
76 }
77 if (occs.size() == 1 && (occs.find(IMFormat::CONCATENATED) != occs.end() || occs.find(IMFormat::MULTIPLE_SPECTRA) != occs.end()))
78 {
79 return *occs.begin();
80 }
81 if (occs.size() == 2 && occs.find(IMFormat::CONCATENATED) != occs.end() && occs.find(IMFormat::MULTIPLE_SPECTRA) != occs.end())
82 {
83 return IMFormat::MIXED;
84 }
85
86 throw Exception::InvalidValue(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, "subfunction returned invalid value(s)", "Number of different values: " + String(occs.size()));
87 }
88
89 IMFormat IMTypes::determineIMFormat(const MSSpectrum& spec)
90 {

Callers

nothing calls this directly

Calls 13

containsIMDataMethod · 0.80
getIMDataMethod · 0.80
getNativeIDMethod · 0.80
StringClass · 0.50
insertMethod · 0.45
eraseMethod · 0.45
emptyMethod · 0.45
sizeMethod · 0.45
findMethod · 0.45
endMethod · 0.45
beginMethod · 0.45
getDriftTimeMethod · 0.45

Tested by

no test coverage detected