DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs > Class Template Reference

Configurator class for gRPCInstrument. More...

+ Inheritance diagram for DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >:

Public Types

using ObjectType = gRPCInstrument< BaseInstr, 0, gRPCStubs... >
 
using ParamsType = gRPCInstrumentParams< BaseInstr, 0, gRPCStubs... >
 

Public Member Functions

 gRPCInstrumentConfigurator ()=default
 
virtual ~gRPCInstrumentConfigurator ()=default
 

Private Member Functions

virtual DynExp::ParamsBasePtrType MakeParams (DynExp::ItemIDType ID, const DynExp::DynExpCore &Core) const override
 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

template<typename BaseInstr, typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int >, typename... gRPCStubs>
class DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >

Configurator class for gRPCInstrument.

Template Parameters
BaseInstrMeta instrument this class derives from.
enable_if_tInternal check whether BaseInstr is derived from DynExp::InstrumentBase. Pass 0.
...gRPCStubsgRPC stub types which this gRPC client expects from the server to be provided. The order of stub types should match the order of service types in the gRPCServices list of the respective DynExpModule::gRPCModule gRPC server.

Definition at line 261 of file gRPCInstrument.h.

Member Typedef Documentation

◆ ObjectType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >::ObjectType = gRPCInstrument<BaseInstr, 0, gRPCStubs...>

Definition at line 264 of file gRPCInstrument.h.

◆ ParamsType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >::ParamsType = gRPCInstrumentParams<BaseInstr, 0, gRPCStubs...>

Definition at line 265 of file gRPCInstrument.h.

Constructor & Destructor Documentation

◆ gRPCInstrumentConfigurator()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int > , typename... gRPCStubs>
DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >::gRPCInstrumentConfigurator ( )
default

◆ ~gRPCInstrumentConfigurator()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int > , typename... gRPCStubs>
virtual DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >::~gRPCInstrumentConfigurator ( )
virtualdefault

Member Function Documentation

◆ MakeParams()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DynExp::InstrumentBase, BaseInstr >, int > , typename... gRPCStubs>
virtual DynExp::ParamsBasePtrType DynExpInstr::gRPCInstrumentConfigurator< BaseInstr,, gRPCStubs >::MakeParams ( DynExp::ItemIDType  ID,
const DynExp::DynExpCore Core 
) const
inlineoverrideprivatevirtual

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

Reimplemented in DynExpInstr::WidefieldLocalizationConfigurator, DynExpInstr::NetworkTimeTaggerConfigurator< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkSpectrometerConfigurator, DynExpInstr::NetworkDigitalOutConfigurator< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDigitalInConfigurator< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentConfigurator< BaseInstr,, gRPCStubs >, DynExpInstr::NetworkDataStreamInstrumentConfigurator< BaseInstr, 0, gRPCStubs... >, DynExpInstr::NetworkAnalogOutConfigurator< BaseInstr,, gRPCStubs >, and DynExpInstr::NetworkAnalogInConfigurator< BaseInstr,, gRPCStubs >.

Definition at line 274 of file gRPCInstrument.h.


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