BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
jsonitemconverter.h
Go to the documentation of this file.
1
// ************************************************************************************************
2
//
3
// qt-mvvm: Model-view-view-model framework for large GUI applications
4
//
5
//! @file mvvm/model/mvvm/serialization/jsonitemconverter.h
6
//! @brief Defines class CLASS?
7
//!
8
//! @homepage http://www.bornagainproject.org
9
//! @license GNU General Public License v3 or higher (see COPYING)
10
//! @copyright Forschungszentrum Jülich GmbH 2020
11
//! @authors Gennady Pospelov et al, Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12
//
13
// ************************************************************************************************
14
15
#ifndef BORNAGAIN_MVVM_MODEL_MVVM_SERIALIZATION_JSONITEMCONVERTER_H
16
#define BORNAGAIN_MVVM_MODEL_MVVM_SERIALIZATION_JSONITEMCONVERTER_H
17
18
#include "
mvvm/serialization/jsonitemconverterinterface.h
"
19
20
namespace
ModelView
{
21
22
class
ItemFactoryInterface;
23
struct
ConverterContext;
24
25
//! Converter between SessionItem and JSON object.
26
27
class
MVVM_MODEL_EXPORT
JsonItemConverter
:
public
JsonItemConverterInterface
{
28
public
:
29
JsonItemConverter
(
const
ConverterContext
& context);
30
JsonItemConverter
(
const
JsonItemConverter
&) =
delete
;
31
JsonItemConverter
&
operator=
(
const
JsonItemConverter
&) =
delete
;
32
33
~JsonItemConverter
()
override
;
34
35
QJsonObject to_json(
const
SessionItem
* item)
const override
;
36
37
std::unique_ptr<SessionItem> from_json(
const
QJsonObject& json)
const override
;
38
39
private
:
40
struct
JsonItemConverterImpl
;
41
std::unique_ptr<JsonItemConverterImpl>
p_impl
;
42
};
43
44
}
// namespace ModelView
45
46
#endif
// BORNAGAIN_MVVM_MODEL_MVVM_SERIALIZATION_JSONITEMCONVERTER_H
ModelView::JsonItemConverterInterface
Base class for all converters of SessionItem to/from JSON object.
Definition:
jsonitemconverterinterface.h:29
ModelView::JsonItemConverter
Converter between SessionItem and JSON object.
Definition:
jsonitemconverter.h:27
ModelView::JsonItemConverter::JsonItemConverter
JsonItemConverter(const JsonItemConverter &)=delete
ModelView::JsonItemConverter::operator=
JsonItemConverter & operator=(const JsonItemConverter &)=delete
ModelView::JsonItemConverter::p_impl
std::unique_ptr< JsonItemConverterImpl > p_impl
Definition:
jsonitemconverter.h:40
ModelView::JsonItemConverter::~JsonItemConverter
~JsonItemConverter() override
ModelView::SessionItem
The main object representing an editable/displayable/serializable entity.
Definition:
sessionitem.h:38
jsonitemconverterinterface.h
Defines class CLASS?
ModelView
materialitems.h Collection of materials to populate MaterialModel.
Definition:
importtablewidget.h:26
ModelView::JsonItemConverter::JsonItemConverterImpl
Definition:
jsonitemconverter.cpp:42
ModelView::ConverterContext
Collection of input paramters for SessionItemConverter.
Definition:
jsonitem_types.h:69
mvvm
model
mvvm
serialization
jsonitemconverter.h
Generated by
1.9.1