16 #include "Base/Axis/IAxis.h"
17 #include "Base/Const/Units.h"
45 newDistribution->
setLimits(RealLimits::limited(-90.0, 90.0));
54 nd->setMeanDecimals(3);
65 , m_owningInstrument(owningInstrument)
82 setAxisPresentationDefaults);
84 setAxisPresentationDefaults);
Defines class DistributionItemCatalog.
Defines pointwise axis item.
Declares the class SpecularBeamInclinationItem.
SessionItem * maxItem() const
SessionItem * binsItem() const
SessionItem * minItem() const
void setBinCount(size_t value)
void setLowerBound(double value)
void setUpperBound(double value)
void setTitle(const QString &title)
The BeamDistributionItem handles wavelength, inclination and azimuthal parameter distribution for Bea...
SelectionProperty< DistributionItem * > m_distribution
static QVector< Type > symmetricTypes()
Types of symmetric distributions.
virtual void setLimits(const RealLimits &limits)
virtual void initDistribution(double)
virtual void setUnit(const variant< QString, Unit > &unit)=0
Set the unit of the distributed value.
Abstract base class for instrument-specific item classes.
Item for non-uniform axis with specified coordinates.
void initWithInitializer(const QString &label, const QString &tooltip, const QString &persistentTag, std::function< void(T newItem, const T oldItem)> initializer)
Initialize by means of a catalog class and an initializer function.
SessionItem & setToolTip(const QString &tooltip)
SessionItem & setLimits(const RealLimits &value)
const InstrumentItem * m_owningInstrument
double scaleFactor() const override
bool m_currentAxisIsUniformAxis
void initUniformAxis(const IAxis &axis)
bool uniformAlphaAxisSelected() const
True if uniform axis is selected.
void selectPointwiseAxis()
BasicAxisItem * alphaAxis() const
The currently selected axis.
bool pointwiseAlphaAxisDefined() const
True if a pointwise axis was defined.
std::unique_ptr< BasicAxisItem > m_uniformAlphaAxis
bool pointwiseAlphaAxisSelected() const
True if pointwise axis is selected.
SpecularBeamInclinationItem(const InstrumentItem *owningInstrument)
void serialize(Streamer &s) override
std::unique_ptr< PointwiseAxisItem > m_pointwiseAlphaAxis
void initPointwiseAxis(const IAxis &axis, QString units)
Supports serialization to or deserialization from QXmlStream.
QXmlStreamReader * xmlReader()
Returns stream reader or nullptr.
void assertVersion(unsigned expectedVersion) const
As reader, throws DeserializationException unless the expected version is read. As writer,...
void rwValue(Streamer &s, const QString &tag, bool &val)