28 BasicSpecularScanItem::BasicSpecularScanItem(
const std::string&
model_type)
44 int nbins = property<int>(
P_NBINS);
45 double qmin = property<double>(
P_QMIN);
46 double qmax = property<double>(
P_QMAX);
81 registerItem<QSpecScanItem>(
"Q-scan",
true);
82 registerItem<ExperimentalScanItem>(
"Based on data");
91 addProperty<SpecularScanGroupItem>(
P_SCAN_GROUP)->setDisplayName(
"Specular scan type");
96 auto scan_group = item<SpecularScanGroupItem>(
P_SCAN_GROUP);
99 return scanItem->qScanValues();
113 auto scan_group = item<SpecularScanGroupItem>(
P_SCAN_GROUP);
116 return scanItem->graphItem();
125 addProperty<SpecularBeamItem>(
P_BEAM);
130 return item<SpecularBeamItem>(
P_BEAM);
Complex item holding mixed SessionItem types (single properties and other CompountItems).
T * addProperty(const std::string &name)
Adds property item of given type.
static ExternalProperty undefined()
static std::unique_ptr< FixedBinAxisItem > create(int nbins, double xmin, double xmax)
One-dimensional graph representation of Data1DItem.
std::vector< double > binCenters() const
Group item holds collection of predefined items.
void init_group()
Inits group item by creating all registered items and constructing combo property for switching betwe...
std::string identifier() const
Returns unique identifier.
SessionModel * model() const
Returns the model to which given item belongs to.
void setProperty(const std::string &tag, const T &value)
Sets value to property item.
SessionItem * findItem(const identifier_type &id)
Returns SessionItem for given identifier.
Represents base type for beam scan parameters.
Represents scan according to imported experimental data.
ModelView::GraphItem * graphItem() const
void setGraphItem(ModelView::GraphItem *graph)
static const std::string P_IMPORTED_DATA
std::vector< double > qScanValues() const override
static const std::string P_NBINS
static const std::string P_QMIN
std::vector< double > qScanValues() const override
static const std::string P_QMAX
Represents specular beam, contains settings of scan parameters.
std::vector< double > qScanValues() const
static const std::string P_INTENSITY
static const std::string P_SCAN_GROUP
ModelView::GraphItem * experimentalGraphItem() const
Returns corresponding experimental graph.
SpecularBeamItem * beamItem() const
static const std::string P_BEAM
materialitems.h Collection of materials to populate MaterialModel.
const std::string SpecularScanGroupItemType
const std::string SpecularBeamItemType
const std::string ExperimentalScanItemType
const std::string SpecularInstrumentItemType
const std::string QSpecScanItemType
DAREFLCORE_EXPORT ModelView::ExternalProperty CreateProperty(const ModelView::GraphItem *graph)
Returns property representing given graph.
Based on Qt example "codeeditor" Copyright (C) 2016 The Qt Company Ltd.