complex container

class complex_container_t : public wt::spectrum::spectrum_t

Complex-valued spectrum. Uses a pair of (real-valued) spectra: one for the real part and one for the imaginary part.

Public Functions

inline complex_container_t(std::string id, std::shared_ptr<spectrum_real_t> real, std::shared_ptr<spectrum_real_t> imag)
complex_container_t(const complex_container_t&) = default
complex_container_t(complex_container_t&&) = default
virtual ~complex_container_t() noexcept = default
inline virtual range_t<wavenumber_t> wavenumber_range() const noexcept override

Returns the range of wavenumbers for which this spectrum is defined. Querying the spectrum with wavenumber<range.min or wavenumber>range.max will always be 0.

inline virtual c_t value(const wavenumber_t wavenumber) const noexcept override

Query the spectrum. Returns the spectral power for the given wavenumber ‘wavenumber’.

inline c_t f(const wavenumber_t wavenumber) const noexcept

Query the spectrum. Returns the spectral power for the given wavenumber ‘wavenumber’.

virtual scene::element::info_t description() const override

Public Static Functions

static std::unique_ptr<spectrum_t> load(std::string id, scene::loader::loader_t *loader, const scene::loader::node_t &node, const wt::wt_context_t &context)