DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpInstr::FunctionGeneratorDefs::ModulationDescType Struct Reference

Type describing modulation parameters for a waveform. More...

Public Types

enum class  ModulationType { Disabled , Amplitude , Frequency , Phase }
 Type to determine the modulation type. More...
 
enum class  ModulationShapeType { Sine , Pulse }
 Type to determine the shape of the modulation. More...
 

Public Member Functions

 ModulationDescType () noexcept=default
 
 ModulationDescType (ModulationType Type, double Depth, double FrequencyInHz, ModulationShapeType Shape=ModulationShapeType::Sine, double PulseDutyCycle=.5) noexcept
 Constructs a ModulationDescType instance. More...
 

Public Attributes

ModulationType Type = ModulationType::Disabled
 Type of the modulation. More...
 
double Depth {}
 Depth (amplitude) of the modulation. More...
 
double FrequencyInHz {}
 Frequency of the modulation in Hz. More...
 
ModulationShapeType Shape = ModulationShapeType::Sine
 Shape of the modulation. More...
 
double PulseDutyCycle {}
 Duty cycle (in between 0 and 1) of the pulses in case of binary modulation (Shape is ModulationShapeType::Pulse) More...
 

Detailed Description

Type describing modulation parameters for a waveform.

Definition at line 202 of file FunctionGenerator.h.

Member Enumeration Documentation

◆ ModulationShapeType

Type to determine the shape of the modulation.

Enumerator
Sine 

Sinusoidally modulate the affected quantity.

Pulse 

Pulse (binary) modulation switching the affected quantity between two values.

Definition at line 217 of file FunctionGenerator.h.

◆ ModulationType

Type to determine the modulation type.

Enumerator
Disabled 

No modulation.

Amplitude 

Modulation affecting the waveform's amplitude.

Frequency 

Modulation affecting the waveform's frequency.

Phase 

Modulation affecting the waveform's phase.

Definition at line 207 of file FunctionGenerator.h.

Constructor & Destructor Documentation

◆ ModulationDescType() [1/2]

DynExpInstr::FunctionGeneratorDefs::ModulationDescType::ModulationDescType ( )
defaultnoexcept

◆ ModulationDescType() [2/2]

DynExpInstr::FunctionGeneratorDefs::ModulationDescType::ModulationDescType ( ModulationType  Type,
double  Depth,
double  FrequencyInHz,
ModulationShapeType  Shape = ModulationShapeType::Sine,
double  PulseDutyCycle = .5 
)
inlinenoexcept

Constructs a ModulationDescType instance.

Parameters
TypeType of the modulation.
DepthDepth (amplitude) of the modulation.
FrequencyInHzFrequency of the modulation in Hz.
ShapeShape of the modulation.
PulseDutyCycleDuty cycle (in between 0 and 1) of the pulses in case of binary modulation (Shape is ModulationShapeType::Pulse)

Definition at line 232 of file FunctionGenerator.h.

Member Data Documentation

◆ Depth

double DynExpInstr::FunctionGeneratorDefs::ModulationDescType::Depth {}

Depth (amplitude) of the modulation.

Definition at line 238 of file FunctionGenerator.h.

◆ FrequencyInHz

double DynExpInstr::FunctionGeneratorDefs::ModulationDescType::FrequencyInHz {}

Frequency of the modulation in Hz.

Definition at line 239 of file FunctionGenerator.h.

◆ PulseDutyCycle

double DynExpInstr::FunctionGeneratorDefs::ModulationDescType::PulseDutyCycle {}

Duty cycle (in between 0 and 1) of the pulses in case of binary modulation (Shape is ModulationShapeType::Pulse)

Definition at line 241 of file FunctionGenerator.h.

◆ Shape

ModulationShapeType DynExpInstr::FunctionGeneratorDefs::ModulationDescType::Shape = ModulationShapeType::Sine

Shape of the modulation.

Definition at line 240 of file FunctionGenerator.h.

◆ Type

ModulationType DynExpInstr::FunctionGeneratorDefs::ModulationDescType::Type = ModulationType::Disabled

Type of the modulation.

Definition at line 237 of file FunctionGenerator.h.


The documentation for this struct was generated from the following file: