116 mp_jsonOutput->appendKey(
"protein_map");
117 mp_jsonOutput->startMap();
118 if(!mpa_cborReader->enterContainer())
123 while(!mpa_cborReader->lastError() && mpa_cborReader->hasNext())
125 mpa_cborReader->decodeString(accession);
126 mp_jsonOutput->appendKey(accession);
128 QCborMap cbor_protein;
129 mpa_cborReader->readCborMap(cbor_protein);
130 mp_jsonOutput->writeCborMap(cbor_protein);
133 mpa_cborReader->leaveContainer();
134 mp_jsonOutput->endMap();
141 mp_jsonOutput->startMap();
142 mp_jsonOutput->appendKey(
"id");
143 mp_jsonOutput->writeCborMap(m_cborScanId);
144 mp_jsonOutput->appendKey(
"precursor");
145 mp_jsonOutput->writeCborMap(m_cborScanPrecursor);
146 mp_jsonOutput->appendKey(
"ms2");
147 mp_jsonOutput->writeCborMap(m_cborScanMs2);
148 if(!m_cborScanProps.isEmpty())
150 mp_jsonOutput->appendKey(
"props");
151 mp_jsonOutput->writeCborMap(m_cborScanProps);
153 mp_jsonOutput->appendKey(
"psm_list");
154 mp_jsonOutput->startArray();
170 mp_jsonOutput->startMap();
171 mp_jsonOutput->appendKey(
"name");
172 mp_jsonOutput->appendValue(m_currentSampleName);
175 mp_jsonOutput->appendKey(
"identification_file_list");
176 mp_jsonOutput->startArray();
177 for(
auto &identification_file : m_currentIdentificationFileList)
179 mp_jsonOutput->startMap();
180 mp_jsonOutput->appendKey(
"name");
181 mp_jsonOutput->appendValue(identification_file.name);
182 mp_jsonOutput->endMap();
184 mp_jsonOutput->endArray();
187 mp_jsonOutput->appendKey(
"peaklist_file");
188 mp_jsonOutput->startMap();
189 mp_jsonOutput->appendKey(
"name");
190 mp_jsonOutput->appendValue(m_currentPeaklistFile.name);
191 mp_jsonOutput->endMap();
193 mp_jsonOutput->appendKey(
"scan_list");
194 mp_jsonOutput->startArray();
208 mp_jsonOutput->startMap();
209 mp_jsonOutput->appendKey(
"proforma");
210 mp_jsonOutput->appendValue(m_currentPsmProforma);
211 mp_jsonOutput->appendKey(
"protein_list");
212 mp_jsonOutput->startArray();
213 for(
auto &protein_ref : m_currentPsmProteinRefList)
215 mp_jsonOutput->startMap();
216 mp_jsonOutput->appendKey(
"accession");
217 mp_jsonOutput->appendValue(protein_ref.accession);
218 mp_jsonOutput->appendKey(
"positions");
219 mp_jsonOutput->startArray();
220 for(
auto position : protein_ref.positions)
222 mp_jsonOutput->appendValue(position);
224 mp_jsonOutput->endArray();
225 mp_jsonOutput->endMap();
227 mp_jsonOutput->endArray();
228 if(!m_cborScanPsmProps.isEmpty())
230 mp_jsonOutput->appendKey(
"props");
231 mp_jsonOutput->writeCborMap(m_cborScanPsmProps);
233 mp_jsonOutput->appendKey(
"eval");
234 mp_jsonOutput->writeCborMap(m_cborScanPsmEval);
236 mp_jsonOutput->endMap();