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

Method startElement

src/openms/source/FORMAT/HANDLERS/MzDataHandler.cpp:183–431  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

181 }
182
183 void MzDataHandler::startElement(const XMLCh * const /*uri*/, const XMLCh * const /*local_name*/, const XMLCh * const qname, const xercesc::Attributes & attributes)
184 {
185 static const XMLCh * s_name = xercesc::XMLString::transcode("name");
186 static const XMLCh * s_accession = xercesc::XMLString::transcode("accession");
187 static const XMLCh * s_value = xercesc::XMLString::transcode("value");
188 static const XMLCh * s_id = xercesc::XMLString::transcode("id");
189 static const XMLCh * s_count = xercesc::XMLString::transcode("count");
190 static const XMLCh * s_spectrumtype = xercesc::XMLString::transcode("spectrumType");
191 static const XMLCh * s_methodofcombination = xercesc::XMLString::transcode("methodOfCombination");
192 static const XMLCh * s_acqnumber = xercesc::XMLString::transcode("acqNumber");
193 static const XMLCh * s_mslevel = xercesc::XMLString::transcode("msLevel");
194 static const XMLCh * s_mzrangestart = xercesc::XMLString::transcode("mzRangeStart");
195 static const XMLCh * s_mzrangestop = xercesc::XMLString::transcode("mzRangeStop");
196 static const XMLCh * s_supdataarrayref = xercesc::XMLString::transcode("supDataArrayRef");
197 static const XMLCh * s_precision = xercesc::XMLString::transcode("precision");
198 static const XMLCh * s_endian = xercesc::XMLString::transcode("endian");
199 static const XMLCh * s_length = xercesc::XMLString::transcode("length");
200 static const XMLCh * s_comment = xercesc::XMLString::transcode("comment");
201 static const XMLCh * s_accessionnumber = xercesc::XMLString::transcode("accessionNumber");
202
203 String tag = sm_.convert(qname);
204 open_tags_.push_back(tag);
205 //std::cout << "Start: '" << tag << "'" << std::endl;
206
207 //determine the parent tag
208 String parent_tag;
209 if (open_tags_.size() > 1)
210 {
211 parent_tag = *(open_tags_.end() - 2);
212 }
213 //do nothing until a new spectrum is reached
214 if (tag != "spectrum" && skip_spectrum_)
215 {
216 return;
217 }
218
219 // Do something depending on the tag
220 if (tag == "sourceFile")
221 {
222 exp_->getSourceFiles().emplace_back();
223 }
224 if (tag == "contact")
225 {
226 exp_->getContacts().resize(exp_->getContacts().size() + 1);
227 }
228 else if (tag == "source")
229 {
230 exp_->getInstrument().getIonSources().resize(1);
231 }
232 else if (tag == "detector")
233 {
234 exp_->getInstrument().getIonDetectors().resize(1);
235 }
236 else if (tag == "analyzer")
237 {
238 exp_->getInstrument().getMassAnalyzers().resize(exp_->getInstrument().getMassAnalyzers().size() + 1);
239 }
240 else if (tag == "software")

Callers

nothing calls this directly

Calls 15

asDateTime_Function · 0.85
attributeAsString_Function · 0.85
SpectrumTypeEnum · 0.85
attributeAsInt_Function · 0.85
emplace_backMethod · 0.80
setCompletionTimeMethod · 0.80
getPrecursorsMethod · 0.80
backMethod · 0.80
getSampleMethod · 0.80

Tested by

no test coverage detected