BornAgain  1.19.79
Simulate and fit neutron and x-ray scattering at grazing incidence
Profile2DItem Class Referenceabstract

Description

Definition at line 85 of file ProfileItems.h.

Inheritance diagram for Profile2DItem:
[legend]
Collaboration diagram for Profile2DItem:
[legend]

Public Member Functions

virtual ~Profile2DItem ()=default
 
virtual std::unique_ptr< IProfile2D > createProfile () const =0
 
DoubleDescriptor gamma () const
 
DoubleDescriptor omegaX () const
 
DoubleDescriptor omegaY () const
 
virtual void serialize (Streamer &s)
 
void setGamma (double gamma)
 
void setOmegaX (double omega_x)
 
void setOmegaY (double omega_y)
 
virtual DoubleDescriptors valueDescriptors () const
 

Protected Member Functions

 Profile2DItem ()
 

Protected Attributes

DoubleProperty m_gamma
 
DoubleProperty m_omegaX
 
DoubleProperty m_omegaY
 

Constructor & Destructor Documentation

◆ ~Profile2DItem()

virtual Profile2DItem::~Profile2DItem ( )
virtualdefault

◆ Profile2DItem()

Profile2DItem::Profile2DItem ( )
protected

Definition at line 107 of file ProfileItems.cpp.

108 {
109  m_omegaX.init("OmegaX", "Half-width of the distribution along its x-axis", 1.0, Unit::nanometer,
110  "omegaX");
111  m_omegaY.init("OmegaY", "Half-width of the distribution along its y-axis", 1.0, Unit::nanometer,
112  "omegaY");
113  m_gamma.init(
114  "Gamma",
115  "Angle in direct space between first lattice vector and x-axis of the distribution", 0.0,
116  Unit::degree, "gamma");
117 }
@ nanometer
@ degree
void init(const QString &label, const QString &tooltip, double value, const variant< QString, Unit > &unit, const QString &persistentTag)
DoubleProperty m_omegaX
Definition: ProfileItems.h:104
DoubleProperty m_omegaY
Definition: ProfileItems.h:105
DoubleProperty m_gamma
Definition: ProfileItems.h:106

References degree, DoubleProperty::init(), m_gamma, m_omegaX, m_omegaY, and nanometer.

Here is the call graph for this function:

Member Function Documentation

◆ createProfile()

virtual std::unique_ptr<IProfile2D> Profile2DItem::createProfile ( ) const
pure virtual

◆ gamma()

◆ omegaX()

◆ omegaY()

◆ serialize()

void Profile2DItem::serialize ( Streamer s)
virtual

Reimplemented in Profile2DVoigtItem.

Definition at line 119 of file ProfileItems.cpp.

120 {
121  s.assertVersion(0);
125 }
void assertVersion(unsigned expectedVersion) const
As reader, throws DeserializationException unless the expected version is read. As writer,...
Definition: Streamer.cpp:26
void rwProperty(Streamer &s, DoubleProperty &d)

References Streamer::assertVersion(), m_gamma, m_omegaX, m_omegaY, and Serialize::rwProperty().

Here is the call graph for this function:

◆ setGamma()

void Profile2DItem::setGamma ( double  gamma)

Definition at line 152 of file ProfileItems.cpp.

153 {
154  m_gamma.set(gamma);
155 }
void set(double d)
Set the contained value.
DoubleDescriptor gamma() const

References gamma(), m_gamma, and DoubleProperty::set().

Here is the call graph for this function:

◆ setOmegaX()

void Profile2DItem::setOmegaX ( double  omega_x)

Definition at line 132 of file ProfileItems.cpp.

133 {
134  m_omegaX.set(omega_x);
135 }

References m_omegaX, and DoubleProperty::set().

Here is the call graph for this function:

◆ setOmegaY()

void Profile2DItem::setOmegaY ( double  omega_y)

Definition at line 142 of file ProfileItems.cpp.

143 {
144  m_omegaY.set(omega_y);
145 }

References m_omegaY, and DoubleProperty::set().

Here is the call graph for this function:

◆ valueDescriptors()

DoubleDescriptors Profile2DItem::valueDescriptors ( ) const
virtual

Reimplemented in Profile2DVoigtItem.

Definition at line 157 of file ProfileItems.cpp.

158 {
159  return {omegaX(), omegaY(), gamma()};
160 }
DoubleDescriptor omegaX() const
DoubleDescriptor omegaY() const

References gamma(), omegaX(), and omegaY().

Referenced by LayerEditorUtils::doubleDescriptorsOfItem().

Here is the call graph for this function:

Member Data Documentation

◆ m_gamma

DoubleProperty Profile2DItem::m_gamma
protected

◆ m_omegaX

DoubleProperty Profile2DItem::m_omegaX
protected

◆ m_omegaY

DoubleProperty Profile2DItem::m_omegaY
protected

The documentation for this class was generated from the following files: