BornAgain
1.19.79
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Definition at line 27 of file DistributionItems.h.
Public Member Functions | |
DistributionItem () | |
virtual | ~DistributionItem ()=default |
virtual std::unique_ptr< IDistribution1D > | createDistribution (double scale=1.0) const =0 |
virtual DoubleDescriptors | distributionValues (bool withMean=true) const =0 |
DOUBLE_PROPERTY (sigmaFactor, SigmaFactor) | |
bool | hasSigmaFactor () const |
virtual void | initDistribution (double) |
template<typename T > | |
bool | is () const |
RealLimits | limits () const |
void | serialize (Streamer &s) |
Serialization of contents. More... | |
virtual void | setLimits (const RealLimits &limits) |
virtual void | setUnit (const variant< QString, Unit > &unit)=0 |
Set the unit of the distributed value. More... | |
UINT_PROPERTY (numberOfSamples, NumberOfSamples) | |
Protected Member Functions | |
void | addToSerialization (DoubleProperty *d) |
void | initSigmaFactor () |
Protected Attributes | |
RealLimits | m_limits |
Private Attributes | |
QVector< DoubleProperty * > | m_serializationProperties |
|
virtualdefault |
DistributionItem::DistributionItem | ( | ) |
Definition at line 23 of file DistributionItems.cpp.
|
protected |
Definition at line 40 of file DistributionItems.cpp.
References m_serializationProperties.
Referenced by DistributionCosineItem::DistributionCosineItem(), DistributionGateItem::DistributionGateItem(), DistributionGaussianItem::DistributionGaussianItem(), DistributionLogNormalItem::DistributionLogNormalItem(), DistributionLorentzItem::DistributionLorentzItem(), DistributionTrapezoidItem::DistributionTrapezoidItem(), SymmetricResolutionItem::SymmetricResolutionItem(), and initSigmaFactor().
|
pure virtual |
|
pure virtual |
DistributionItem::DOUBLE_PROPERTY | ( | sigmaFactor | , |
SigmaFactor | |||
) |
bool DistributionItem::hasSigmaFactor | ( | ) | const |
Definition at line 45 of file DistributionItems.cpp.
Referenced by DistributionPlot::plot_multiple_values().
|
inlinevirtual |
Reimplemented in DistributionTrapezoidItem, DistributionCosineItem, DistributionLogNormalItem, DistributionGaussianItem, DistributionLorentzItem, DistributionGateItem, and DistributionNoneItem.
Definition at line 40 of file DistributionItems.h.
Referenced by BeamAzimuthalAngleItem::initDistribution(), and BeamInclinationAngleItem::initDistribution().
|
protected |
Definition at line 34 of file DistributionItems.cpp.
References addToSerialization(), and unitless.
Referenced by DistributionCosineItem::DistributionCosineItem(), DistributionGaussianItem::DistributionGaussianItem(), DistributionLogNormalItem::DistributionLogNormalItem(), and DistributionLorentzItem::DistributionLorentzItem().
|
inline |
Definition at line 33 of file DistributionItems.h.
Referenced by DistributionPlot::plot_distributions(), DistributionPlot::plot_multiple_values(), and DistributionPlot::plot_single_value().
RealLimits DistributionItem::limits | ( | ) | const |
Definition at line 62 of file DistributionItems.cpp.
References m_limits.
Referenced by DistributionPlot::plot_multiple_values(), setLimits(), and SymmetricResolutionItem::setLimits().
void DistributionItem::serialize | ( | Streamer & | s | ) |
Serialization of contents.
Important: limits and a changed unit (with setUnit) will not be serialized here. They have to be set again by the owner of DistributionItem after reading it
Definition at line 50 of file DistributionItems.cpp.
References Streamer::assertVersion(), m_serializationProperties, and Serialize::rwProperty().
|
virtual |
Reimplemented in SymmetricResolutionItem.
Definition at line 29 of file DistributionItems.cpp.
References limits(), and m_limits.
Referenced by BeamAzimuthalAngleItem::initDistribution(), BeamInclinationAngleItem::initDistribution(), BeamAzimuthalAngleItem::serialize(), BeamInclinationAngleItem::serialize(), BeamWavelengthItem::serialize(), SpecularBeamInclinationItem::serialize(), and SymmetricResolutionItem::setLimits().
|
pure virtual |
Set the unit of the distributed value.
Implemented in DistributionTrapezoidItem, DistributionCosineItem, DistributionLogNormalItem, DistributionGaussianItem, DistributionLorentzItem, DistributionGateItem, and SymmetricResolutionItem.
Referenced by BeamAzimuthalAngleItem::initDistribution(), BeamInclinationAngleItem::initDistribution(), BeamAzimuthalAngleItem::serialize(), BeamInclinationAngleItem::serialize(), BeamWavelengthItem::serialize(), and SpecularBeamInclinationItem::serialize().
DistributionItem::UINT_PROPERTY | ( | numberOfSamples | , |
NumberOfSamples | |||
) |
|
protected |
Definition at line 64 of file DistributionItems.h.
Referenced by DistributionLorentzItem::createIRangedDistribution(), DistributionGaussianItem::createIRangedDistribution(), DistributionCosineItem::createIRangedDistribution(), limits(), and setLimits().
|
private |
Definition at line 67 of file DistributionItems.h.
Referenced by addToSerialization(), and serialize().