15 #ifndef BORNAGAIN_CORE_INSTRUMENT_INSTRUMENT_H
16 #define BORNAGAIN_CORE_INSTRUMENT_INSTRUMENT_H
44 Beam& getBeam() {
return m_beam; }
45 const Beam& getBeam()
const {
return m_beam; }
46 void setBeam(
const Beam& beam);
51 void setBeamIntensity(
double intensity);
56 double getBeamIntensity()
const;
67 const IAxis& getDetectorAxis(
size_t index)
const;
69 size_t getDetectorDimension()
const;
82 double total_transmission);
93 std::unique_ptr<IDetector> m_detector;
Beam defined by wavelength, direction and intensity.
Collection of detector masks.
Two dimensional histogram.
Interface for one-dimensional axes.
Abstract 2D detector interface.
Abstract detector interface.
Visitor interface to visit ISample objects.
Base class for tree-like structures containing parameterized objects.
Interface providing two-dimensional resolution function.
Assembles beam, detector and their relative positions with respect to the sample.
void applyDetectorResolution(OutputData< double > *p_intensity_map) const
apply the detector resolution to the given intensity map
void setAnalyzerProperties(const kvector_t direction, double efficiency, double total_transmission)
Sets the polarization analyzer characteristics of the detector.
void setBeamParameters(double wavelength, double alpha_i, double phi_i)
Sets the beam wavelength and incoming angles.
void setDetector(const IDetector &detector)
Sets the detector (axes can be overwritten later)
void accept(INodeVisitor *visitor) const final
Calls the INodeVisitor's visit method.
void setDetectorResolutionFunction(const IResolutionFunction2D &p_resolution_function)
Sets detector resolution function.
void initDetector()
init detector with beam settings
void removeDetectorResolution()
Removes detector resolution function.
std::vector< const INode * > getChildren() const
Returns a vector of children (const).
void setBeamPolarization(const kvector_t bloch_vector)
Sets the beam's polarization according to the given Bloch vector.
Template class to store data of any type in multi-dimensional space.
Data stucture containing both input and output of a single detector cell.