9 : FrequencyUnit(Other.FrequencyUnit), IntensityUnit(Other.IntensityUnit), Samples(std::move(Other.Samples))
26 IntensityUnit = Other.IntensityUnit;
27 Samples = std::move(Other.Samples);
Defines a meta instrument for a spectrometer.
virtual ~SpectrometerConfigurator()=0
Type describing a spectrum as acquired by the Spectrometer instrument.
SpectrumType & operator=(const SpectrumType &Other)
Copies a SpectrumType instance's content to this instance.
std::map< double, double > Samples
Samples of the spectrum as tuples in units (FrequencyUnit, IntensityUnit)
SpectrumType()
Constructs a SpectrumType instance with FrequencyUnit set to DynExp::Units::UnitType::Freq_Hz and Int...
DynExp::Units::UnitType FrequencyUnit
The spectrum's frequency (x-axis) unit.
DynExp::Units::UnitType IntensityUnit
The spectrum's intensity (y-axis) unit.
void Reset()
Removes all samples from the spectrum (clears Samples).
SpectrumType GetSpectrumCopy() const
Copying getter for CurrentSpectrum. This function is more expensive than GetSpectrum().
double CurrentUpperFrequency
Current upper frequency limit where the spectrum acquisition ends.
TimeType MaxExposureTime
Maximal exposure time the spectrometer supports.
SpectrumType CurrentSpectrum
Current spectrum acquired by the spectrometer. Logical const-ness: allow const member function GetSpe...
void SetSpectrum(SpectrumType &&Other)
Setter for CurrentSpectrum.
void ClearSpectrum() const
Resets CurrentSpectrum by calling SpectrumType::Reset().
void ResetImpl(dispatch_tag< InstrumentDataBase >) override final
SpectrumType GetSpectrum() const
Moving getter for CurrentSpectrum.
TimeType MinExposureTime
Minimal exposure time the spectrometer supports.
std::chrono::milliseconds TimeType
Time type describing the spectrometer's times like its exposure time.
double CurrentLowerFrequency
Current lower frequency limit where the spectrum acquisition begins.
TimeType CurrentExposureTime
Current exposure time of the spectrometer.
bool SilentModeEnabled
Indicates whether the spectrometer's silent mode is turned on, i.e. the spectrometer's fans are turne...
virtual ~SpectrometerParams()=0
virtual void SetSilentMode(bool Enable, DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Enables or disables the spectrometer's silent mode, i.e. disables or enables e.g. the spectrometer's ...
void ResetImpl(dispatch_tag< InstrumentBase >) override final
virtual ~Spectrometer()=0
virtual void Abort(DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Aborts a currently running spectrum acquisition.
Refer to ParamsBase::dispatch_tag.
Refer to ParamsBase::dispatch_tag.
Type owning a callback function which is invoked when a task has finished, failed,...
Thrown when a requested feature is either under development and thus not implemented yet or when a sp...
DynExp's instrument namespace contains the implementation of DynExp instruments which extend DynExp's...
Accumulates include statements to provide a precompiled header.