DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExp::ConfiguratorBase Class Referenceabstract

The configurator classes have the task to generate parameter objects (refer to DynExp::ParamsBase) of the corresponding type for DynExp objects DynExp::Object. For each class derived from DynExp::Object, there must be a respective configurator derived from ConfiguratorBase. More...

+ Inheritance diagram for DynExp::ConfiguratorBase:

Classes

struct  UpdateConfigFromDialogResult
 Return type of ConfiguratorBase::UpdateConfigFromDialog() indicating the result of the configurator dialog shown to the user to configure an Object's parameters. More...
 

Public Types

using ObjectType = Object
 
using ParamsType = ParamsBase
 

Public Member Functions

 ConfiguratorBase ()=default
 
virtual ~ConfiguratorBase ()=0
 
ParamsBasePtrType MakeConfigFromDialog (ItemIDType ID, const DynExpCore &Core, QWidget *const DialogParent) const
 Sets up and displays a configuration dialog. The user input is used to create an instance of the related Object's parameter class. More...
 
ParamsBasePtrType MakeConfigFromXML (ItemIDType ID, const DynExpCore &Core, const QDomElement &XMLElement) const
 Retrieves the configuration from an XML node to create an instance of the related Object's parameter class. Refer to ParamsBase::ConfigFromXM(). More...
 
UpdateConfigFromDialogResult UpdateConfigFromDialog (Object *Obj, const DynExpCore &Core, QWidget *const DialogParent) const
 Updates an Object's Obj parameters from a configuration dialog. Sets up and displays this dialog. More...
 

Private Member Functions

virtual ParamsBasePtrType MakeParams (ItemIDType ID, const DynExpCore &Core) const =0
 Override to make derived classes call DynExp::MakeParams with the correct configurator type derived from ConfiguratorBase. This lets this factory function create an instance of the correct parameter class. More...
 

Detailed Description

The configurator classes have the task to generate parameter objects (refer to DynExp::ParamsBase) of the corresponding type for DynExp objects DynExp::Object. For each class derived from DynExp::Object, there must be a respective configurator derived from ConfiguratorBase.

Definition at line 1878 of file Object.h.

Member Typedef Documentation

◆ ObjectType

Definition at line 1881 of file Object.h.

◆ ParamsType

Definition at line 1882 of file Object.h.

Constructor & Destructor Documentation

◆ ConfiguratorBase()

DynExp::ConfiguratorBase::ConfiguratorBase ( )
default

◆ ~ConfiguratorBase()

DynExp::ConfiguratorBase::~ConfiguratorBase ( )
pure virtual

Definition at line 310 of file Object.cpp.

Member Function Documentation

◆ MakeConfigFromDialog()

ParamsBasePtrType DynExp::ConfiguratorBase::MakeConfigFromDialog ( ItemIDType  ID,
const DynExpCore Core,
QWidget *const  DialogParent 
) const

Sets up and displays a configuration dialog. The user input is used to create an instance of the related Object's parameter class.

Parameters
IDID to assign to the new Object this configurator class instance belongs to
CoreReference to DynExp's core
DialogParentQt QWidget acting as a parent of the modal configuration dialog
Returns
Pointer to the created parameter class instance

Definition at line 314 of file Object.cpp.

◆ MakeConfigFromXML()

ParamsBasePtrType DynExp::ConfiguratorBase::MakeConfigFromXML ( ItemIDType  ID,
const DynExpCore Core,
const QDomElement &  XMLElement 
) const

Retrieves the configuration from an XML node to create an instance of the related Object's parameter class. Refer to ParamsBase::ConfigFromXM().

Parameters
IDID to assign to the new Object this configurator class instance belongs to
CoreReference to DynExp's core
XMLElementRefer to ParamsBase::ConfigFromXML().
Returns
Pointer to the created parameter class instance

Definition at line 324 of file Object.cpp.

◆ MakeParams()

virtual ParamsBasePtrType DynExp::ConfiguratorBase::MakeParams ( ItemIDType  ID,
const DynExpCore Core 
) const
privatepure virtual

Override to make derived classes call DynExp::MakeParams with the correct configurator type derived from ConfiguratorBase. This lets this factory function create an instance of the correct parameter class.

Parameters
IDID to assign to the new Object this configurator class instance belongs to
CoreReference to DynExp's core
Returns
Pointer to the created parameter class instance

Implemented in DynExp::HardwareAdapterSerialPortConfigurator, DynExp::HardwareAdapterTcpSocketConfigurator, DynExpModule::Widefield::WidefieldMicroscopeConfigurator, DynExpModule::Trajectory1DConfigurator, DynExpModule::StreamManipulatorConfigurator, DynExpModule::Stage1DConfigurator, DynExpModule::SpectrumViewer::SpectrumViewerConfigurator, DynExpModule::SignalPlotterConfigurator, DynExpModule::SignalDesignerConfigurator, DynExpModule::OutputPortWriterConfigurator, DynExpModule::ODMR::ODMRConfigurator, DynExpModule::LockinAmplifierControlConfigurator, DynExpModule::InputPortReaderConfigurator, DynExpModule::ImageViewer::ImageViewerConfigurator, DynExpModule::ArbitraryFunctionFromCSVConfigurator, DynExpModule::NetworkTimeTaggerConfigurator< gRPCServices >, DynExpModule::NetworkDigitalOutConfigurator< gRPCServices >, DynExpModule::NetworkDigitalInConfigurator< gRPCServices >, DynExpModule::NetworkDataStreamInstrumentConfigurator< gRPCServices >, DynExpModule::NetworkDataStreamInstrumentConfigurator< gRPCServices... >, DynExpModule::NetworkAnalogOutConfigurator< gRPCServices >, DynExpModule::NetworkAnalogInConfigurator< gRPCServices >, DynExpInstr::ZI_MFLIConfigurator, DynExpInstr::SwabianInstrumentsPulseStreamerConfigurator, DynExpInstr::SmarActConfigurator, DynExpInstr::RS_SMC100AConfigurator, DynExpInstr::RS_SMB100BConfigurator, DynExpInstr::QutoolsQuTAGConfigurator, DynExpInstr::PVCamConfigurator, DynExpInstr::PI_C_862_Configurator, DynExpInstr::NIDAQDigitalOutConfigurator, DynExpInstr::NIDAQDigitalInConfigurator, DynExpInstr::NIDAQAnalogOutConfigurator, DynExpInstr::NIDAQAnalogInConfigurator, DynExpInstr::NenionLeakvalveF3Configurator, DynExpInstr::InterModuleCommunicatorConfigurator, DynExpInstr::DummyDataStreamInstrumentConfigurator, DynExpInstr::DummyCameraConfigurator, DynExpHardware::ZILabOneHardwareAdapterConfigurator, DynExpHardware::SIPulseStreamerHardwareAdapterConfigurator, DynExpHardware::SmarActHardwareAdapterConfigurator, DynExpHardware::QutoolsTDCHardwareAdapterConfigurator, DynExpHardware::PVCamHardwareAdapterConfigurator, DynExpHardware::NIDAQHardwareAdapterConfigurator, DynExpHardware::gRPCHardwareAdapterConfigurator< gRPCStub >, and DynExpHardware::gRPCHardwareAdapterConfigurator< pulse_streamer::PulseStreamer >.

◆ UpdateConfigFromDialog()

ConfiguratorBase::UpdateConfigFromDialogResult DynExp::ConfiguratorBase::UpdateConfigFromDialog ( Object Obj,
const DynExpCore Core,
QWidget *const  DialogParent 
) const

Updates an Object's Obj parameters from a configuration dialog. Sets up and displays this dialog.

Parameters
ObjObject whose parameters are to be reconfigured
CoreReference to DynExp's core
DialogParentQt QWidget acting as a parent of the modal configuration dialog
Returns
Refer to ConfiguratorBase::UpdateConfigFromDialogResult.

Definition at line 333 of file Object.cpp.


The documentation for this class was generated from the following files: