BornAgain  1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
ISpecularScan Class Referenceabstract
Inheritance diagram for ISpecularScan:
Collaboration diagram for ISpecularScan:

Public Member Functions

ISpecularScanclone () const override=0
 
virtual std::vector< SpecularSimulationElementgenerateSimulationElements () const =0
 
virtual const IAxiscoordinateAxis () const =0
 
virtual const IFootprintFactorfootprintFactor () const =0
 
virtual std::vector< double > footprint (size_t i, size_t n_elements) const =0
 
virtual size_t numberOfSimulationElements () const =0
 
virtual std::vector< double > createIntensities (const std::vector< SpecularSimulationElement > &sim_elements) const =0
 
virtual std::string print () const =0
 
virtual void transferToCPP ()
 

Detailed Description

Pure virtual base class for all types of specular scans.

Definition at line 30 of file ISpecularScan.h.

Member Function Documentation

◆ clone()

ISpecularScan* ISpecularScan::clone ( ) const
overridepure virtual

Implements ICloneable.

Implemented in QSpecScan, and AngularSpecScan.

Referenced by SpecularSimulation::setScan().

◆ generateSimulationElements()

virtual std::vector<SpecularSimulationElement> ISpecularScan::generateSimulationElements ( ) const
pure virtual

Generates simulation elements for specular simulations.

Implemented in QSpecScan, and AngularSpecScan.

Referenced by anonymous_namespace{SpecularSimulation.cpp}::generateSimulationElements().

◆ coordinateAxis()

virtual const IAxis* ISpecularScan::coordinateAxis ( ) const
pure virtual

Returns coordinate axis assigned to the data holder.

Implemented in QSpecScan, and AngularSpecScan.

Referenced by SpecularSimulation::setScan().

◆ footprintFactor()

virtual const IFootprintFactor* ISpecularScan::footprintFactor ( ) const
pure virtual

Returns IFootprintFactor object pointer.

Implemented in QSpecScan, and AngularSpecScan.

◆ footprint()

virtual std::vector<double> ISpecularScan::footprint ( size_t  i,
size_t  n_elements 
) const
pure virtual

Returns footprint correction factor for a range of simulation elements of size n_elements and starting from element with index i.

Implemented in QSpecScan, and AngularSpecScan.

◆ numberOfSimulationElements()

virtual size_t ISpecularScan::numberOfSimulationElements ( ) const
pure virtual

Returns the number of simulation elements.

Implemented in QSpecScan, and AngularSpecScan.

◆ createIntensities()

virtual std::vector<double> ISpecularScan::createIntensities ( const std::vector< SpecularSimulationElement > &  sim_elements) const
pure virtual

Returns intensity vector corresponding to convolution of given simulation elements.

Implemented in QSpecScan, and AngularSpecScan.

◆ print()

virtual std::string ISpecularScan::print ( ) const
pure virtual

Print scan definition in python format.

Implemented in QSpecScan, and AngularSpecScan.

Referenced by operator<<().

◆ transferToCPP()

virtual void ICloneable::transferToCPP ( )
inlinevirtualinherited

Used for Python overriding of clone (see swig/tweaks.py)

Definition at line 34 of file ICloneable.h.


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