DynExp
Highly flexible laboratory automation for dynamically changing experiments.
Loading...
Searching...
No Matches
Laser.cpp
Go to the documentation of this file.
1// This file is part of DynExp.
2
3#include "stdafx.h"
4#include "Laser.h"
5
6namespace DynExpInstr
7{
9 {
10 switch (Unit)
11 {
12 case FrequencyUnitType::Hz: return "Hz";
13 case FrequencyUnitType::nm: return "nm";
14 default: return "<unknown unit>";
15 }
16 }
17
19 {
20 switch (Unit)
21 {
22 case IntensityUnitType::Power_W: return "W";
23 default: return "<unknown unit>";
24 }
25 }
26
36
40
44
46 {
47 }
48
53
58
63}
Defines a meta instrument for a laser source.
static const char * IntensityUnitTypeToStr(const IntensityUnitType &Unit)
Returns a descriptive string of a respective intensity unit to be e.g. used in the UI.
Definition Laser.cpp:18
double ScanRate
Current scan rate.
Definition Laser.h:146
FrequencyUnitType
Supported laser frequency units.
Definition Laser.h:74
double Frequency
Current frequency.
Definition Laser.h:143
void ResetImpl(dispatch_tag< InstrumentDataBase >) override final
Definition Laser.cpp:27
double Intensity
Current intensity.
Definition Laser.h:144
IntensityUnitType
Supported laser intensity units.
Definition Laser.h:85
static const char * FrequencyUnitTypeToStr(const FrequencyUnitType &Unit)
Returns a descriptive string of a respective frequency unit to be e.g. used in the UI.
Definition Laser.cpp:8
double ScanRange
Current scan range.
Definition Laser.h:145
virtual ~LaserParams()=0
Definition Laser.cpp:37
virtual void ScanContinuously(DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Enables emission in scan mode.
Definition Laser.cpp:49
void ResetImpl(dispatch_tag< InstrumentBase >) override final
Definition Laser.cpp:59
virtual void DisableScan(DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Disables scan and changes to constant emission mode.
Definition Laser.cpp:54
virtual ~Laser()=0
Definition Laser.cpp:45
Refer to ParamsBase::dispatch_tag.
Definition Instrument.h:146
Refer to ParamsBase::dispatch_tag.
Definition Object.h:2018
Type owning a callback function which is invoked when a task has finished, failed,...
Definition Instrument.h:978
Thrown when a requested feature is either under development and thus not implemented yet or when a sp...
Definition Exception.h:300
DynExp's instrument namespace contains the implementation of DynExp instruments which extend DynExp's...
Accumulates include statements to provide a precompiled header.