45 qDebug() << json_parameters.keys();
47 auto itparam = json_parameters.begin();
48 while(itparam != json_parameters.end())
50 qDebug() << itparam.key();
51 project_parameter.
name = itparam.key();
54 project_parameter.
value = itparam.value().toObject().value(
"value").toVariant();
92 int type = var.metaType().id();
96 writer.writeEmptyCell();
99 writer.writeCell(var.toBool());
101 case QMetaType::Double:
102 case QMetaType::Float:
103 writer.writeCell(var.toDouble());
106 writer.writeCell(var.toInt());
108 case QMetaType::QDate:
109 writer.writeCell(var.toDate());
111 case QMetaType::QDateTime:
112 writer.writeCell(var.toDateTime());
114 case QMetaType::QString:
115 writer.writeCell(var.toString());
117 case QMetaType::QUrl:
118 writer.writeCell(var.toUrl(), var.toUrl().toString());
121 writer.writeCell(var.toString());
130 writer.writeStartElement(
"project_param");
131 writer.writeAttribute(
"category", QString(
"%1").arg((std::uint8_t)param.
category));
132 writer.writeAttribute(
"name", param.
name);
134 writer.writeEndElement();
169 int type = var.metaType().id();
173 case QMetaType::Void:
176 case QMetaType::Bool:
181 case QMetaType::Double:
182 case QMetaType::Float:
183 value = QString::number(var.toDouble(),
'g', 10);
186 value = QString::number(var.toInt());
188 case QMetaType::QDate:
189 value = var.toDate().toString(Qt::ISODate);
191 case QMetaType::QDateTime:
192 value = var.toDateTime().toString(Qt::ISODate);
194 case QMetaType::QString:
195 value = var.toString();
197 case QMetaType::QUrl:
198 value = var.toUrl().toString();
201 value = var.toString();
204 writer.writeAttribute(
"value", value);
210 writer.writeSheet(
"Project parameters");
214 writer.writeCell(param_entry.second.name);
221 writer.writeCell(param_entry.second.name);
227 writer.writeCell(param_entry.second.name);
233 writer.writeCell(param_entry.second.name);
239 writer.writeCell(param_entry.second.name);
309 const std::map<QString, ProjectParam> *map_pointer =
nullptr;
332 auto it = map_pointer->find(name);
333 if(it != map_pointer->end())
335 return (it->second.value);
339 qDebug() << QObject::tr(
"project parameter named %1 in category %2 not found")
341 .arg((std::int8_t)category);
346std::vector<pappso::ProjectParam>
349 std::vector<ProjectParam> param_list;
350 const std::map<QString, ProjectParam> *map_pointer =
nullptr;
373 for(
auto pair_item : *map_pointer)
375 param_list.push_back(pair_item.second);
384 QJsonObject parameters;
388 parameters.insert(param_entry.first, param_entry.second.toJsonObject());
392 parameters.insert(param_entry.first, param_entry.second.toJsonObject());
396 parameters.insert(param_entry.first, param_entry.second.toJsonObject());
400 parameters.insert(param_entry.first, param_entry.second.toJsonObject());
404 parameters.insert(param_entry.first, param_entry.second.toJsonObject());
415 param.insert(
"category", (
int)
category);
417 int type =
value.metaType().id();
420 case QMetaType::Void:
421 param.insert(
"value",
"");
423 case QMetaType::Bool:
424 param.insert(
"value",
value.toBool());
426 case QMetaType::Double:
427 case QMetaType::Float:
428 param.insert(
"value",
value.toDouble());
431 param.insert(
"value",
value.toInt());
433 case QMetaType::QDate:
435 param.insert(
"value",
value.toDate().toString(Qt::ISODate));
437 case QMetaType::QDateTime:
439 param.insert(
"value",
value.toDateTime().toString(Qt::ISODate));
441 case QMetaType::QString:
442 param.insert(
"value",
value.toString());
444 case QMetaType::QUrl:
446 param.insert(
"value",
value.toString());
449 param.insert(
"value",
value.toString());
457 cbor_writer.append(
"project_parameters");
459 QCborValue::fromJsonValue(
toJsonObject()).toCbor(cbor_writer);
void writeCellVariant(CalcWriterInterface &writer, const QVariant &var) const
std::map< QString, ProjectParam > m_mapQuantificationParameters
std::map< QString, ProjectParam > m_mapIdentificationParameters
ProjectParameters & operator=(const ProjectParameters &other)
std::map< QString, ProjectParam > m_mapGeneralParameters
void writeXmlVariant(QXmlStreamWriter &writer, const QVariant &var) const
void writeXmlParameter(QXmlStreamWriter &writer, const ProjectParam ¶m) const
std::map< QString, ProjectParam > m_mapFilterParameters
void setProjectParam(const ProjectParam ¶m)
std::map< QString, ProjectParam > m_mapInstrumentParameters
QJsonObject toJsonObject() const
std::vector< ProjectParam > getProjectParamListByCategory(ProjectParamCategory category) const
const QVariant getValue(ProjectParamCategory category, const QString &name) const
void merge(const ProjectParameters ¶meters)
void writeParameters(CalcWriterInterface &writer) const
@ identification
concerning identification
@ instrument
information about instrument
@ general
concerning the whole process
@ quantification
quantification
@ filter
concerning filters (psm, peptide, protein validation)
ProjectParamCategory category
QJsonObject toJsonObject() const