18 const double phi_i_0 = 0.0;
20 DepthProbeElement::DepthProbeElement(
double wavelength,
double alpha_i,
const IAxis* z_positions)
21 : m_wavelength(wavelength), m_alpha_i(alpha_i), m_z_positions(z_positions),
22 m_calculation_flag(true)
25 throw std::runtime_error(
26 "Error in DepthProbeElement::DepthProbeElement: z positions are not specified");
27 m_intensities.resize(z_positions->
size(), 0.0);
31 : m_wavelength(other.m_wavelength), m_alpha_i(other.m_alpha_i),
32 m_intensities(other.m_intensities), m_z_positions(other.m_z_positions),
33 m_calculation_flag(other.m_calculation_flag)
38 : m_wavelength(other.m_wavelength), m_alpha_i(other.m_alpha_i),
39 m_intensities(std::move(other.m_intensities)), m_z_positions(other.m_z_positions),
40 m_calculation_flag(other.m_calculation_flag)
44 DepthProbeElement::~DepthProbeElement() =
default;
50 tmp.swapContent(*
this);
55 kvector_t DepthProbeElement::getKi()
const
62 std::swap(m_wavelength, other.m_wavelength);
64 m_intensities.swap(other.m_intensities);
65 std::swap(m_z_positions, other.m_z_positions);
66 std::swap(m_calculation_flag, other.m_calculation_flag);
BasicVector3D< double > vecOfLambdaAlphaPhi(double _lambda, double _alpha, double _phi)
Creates a vector<double> as a wavevector with given wavelength and angles.
Defines class DepthProbeElement.
void swap(OutputDataIterator< TValue, TContainer > &left, OutputDataIterator< TValue, TContainer > &right)
make Swappable
Interface for one-dimensional axes.
virtual size_t size() const =0
retrieve the number of bins