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

Public Types

using ParamsType = NetworkAnalogInParams< BaseInstr, 0, gRPCStubs... >
 
using ConfigType = NetworkAnalogInConfigurator< BaseInstr, 0, gRPCStubs... >
 
using InstrumentDataType = NetworkAnalogInData< BaseInstr, 0, gRPCStubs... >
 
using StubType = DynExpProto::NetworkAnalogIn::NetworkAnalogIn
 
- Public Types inherited from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >
using ParamsType = NetworkDataStreamInstrumentParams< BaseInstr, 0, gRPCStubs... >
 
using ConfigType = NetworkDataStreamInstrumentConfigurator< BaseInstr, 0, gRPCStubs... >
 
using InstrumentDataType = NetworkDataStreamInstrumentData< BaseInstr, 0, gRPCStubs... >
 
- Public Types inherited from DynExpInstr::gRPCInstrument< BaseInstr, 0, gRPCStubs... >
using ParamsType = gRPCInstrumentParams< BaseInstr, 0, gRPCStubs... >
 Type of the parameter class belonging to this Object type. Declare this alias in every derived class with the respective parameter class accompanying the derived Object. More...
 
using ConfigType = gRPCInstrumentConfigurator< BaseInstr, 0, gRPCStubs... >
 Type of the configurator class belonging to this Object type. Declare this alias in every derived class with the respective configurator class accompanying the derived Object. More...
 
using InstrumentDataType = gRPCInstrumentData< BaseInstr, 0, gRPCStubs... >
 Type of the data class belonging to this InstrumentBase type. Declare this alias in every derived class with the respective data class accompanying the derived InstrumentBase. More...
 

Public Member Functions

 NetworkAnalogInT (const std::thread::id OwnerThreadID, DynExp::ParamsBasePtrType &&Params)
 
virtual ~NetworkAnalogInT ()
 
virtual std::string GetName () const override
 Returns the name of this Object type. More...
 
virtual DataStreamInstrumentData::ValueType GetHardwareMinValue () const override
 
virtual DataStreamInstrumentData::ValueType GetHardwareMaxValue () const override
 
virtual DataStreamInstrumentData::ValueType GetHardwareResolution () const override final
 
virtual DataStreamInstrumentData::UnitType GetValueUnit () const override
 
virtual void WriteData (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual AnalogInData::SampleStreamType::SampleType Get (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
 
virtual AnalogInData::SampleStreamType::SampleType GetSync () const
 
- Public Member Functions inherited from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >
 NetworkDataStreamInstrumentT (const std::thread::id OwnerThreadID, DynExp::ParamsBasePtrType &&Params)
 
virtual ~NetworkDataStreamInstrumentT ()
 
virtual std::chrono::milliseconds GetTaskQueueDelay () const
 Read remote instrument's state periodically. More...
 
virtual Util::OptionalBool HasFinished () const override
 
virtual Util::OptionalBool IsRunning () const override
 
virtual void ReadData (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void ClearData (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void Start (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void Stop (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void Restart (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void SetStreamSize (size_t BufferSizeInSamples, DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void ResetStreamSize (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
- Public Member Functions inherited from DynExpInstr::gRPCInstrument< BaseInstr, 0, gRPCStubs... >
virtual ~gRPCInstrument ()
 
virtual std::string GetCategory () const override
 Returns the category of this Object type. More...
 

Static Public Member Functions

constexpr static auto Name () noexcept
 
- Static Public Member Functions inherited from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >
constexpr static auto Name () noexcept
 
- Static Public Member Functions inherited from DynExpInstr::gRPCInstrument< BaseInstr, 0, gRPCStubs... >
constexpr static auto Name () noexcept
 Every derived class has to redefine this function. More...
 
constexpr static auto Category () noexcept
 Every derived class has to redefine this function. More...
 

Private Member Functions

void ResetImpl (DynExp::Object::dispatch_tag< NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >>) override final
 
virtual void ResetImpl (DynExp::Object::dispatch_tag< NetworkAnalogInT >)
 
virtual std::unique_ptr< DynExp::InitTaskBaseMakeInitTask () const override
 Factory function for an init task (InitTaskBase). Override to define the desired initialization task in derived classes only if the respective task really does something and if it has no pure virtual function. More...
 
virtual std::unique_ptr< DynExp::ExitTaskBaseMakeExitTask () const override
 Factory function for an exit task (ExitTaskBase). Override to define the desired deinitialization task in derived classes only if the respective task really does something and if it has no pure virtual function. More...
 
virtual std::unique_ptr< DynExp::UpdateTaskBaseMakeUpdateTask () const override
 Factory function for an update task (UpdateTaskBase). Override to define the desired update task in derived classes only if the respective task really does something and if it has no pure virtual function. More...
 

Additional Inherited Members

- Protected Member Functions inherited from DynExpInstr::gRPCInstrument< BaseInstr, 0, gRPCStubs... >
 gRPCInstrument (const std::thread::id OwnerThreadID, DynExp::ParamsBasePtrType &&Params)
 Constructs an instrument instance. More...
 

Detailed Description

template<typename BaseInstr, typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int >, typename... gRPCStubs>
class DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >

Definition at line 115 of file NetworkAnalogInInstr.h.

Member Typedef Documentation

◆ ConfigType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::ConfigType = NetworkAnalogInConfigurator<BaseInstr, 0, gRPCStubs...>

Definition at line 119 of file NetworkAnalogInInstr.h.

◆ InstrumentDataType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::InstrumentDataType = NetworkAnalogInData<BaseInstr, 0, gRPCStubs...>

Definition at line 120 of file NetworkAnalogInInstr.h.

◆ ParamsType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::ParamsType = NetworkAnalogInParams<BaseInstr, 0, gRPCStubs...>

Definition at line 118 of file NetworkAnalogInInstr.h.

◆ StubType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::StubType = DynExpProto::NetworkAnalogIn::NetworkAnalogIn

Definition at line 121 of file NetworkAnalogInInstr.h.

Constructor & Destructor Documentation

◆ NetworkAnalogInT()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::NetworkAnalogInT ( const std::thread::id  OwnerThreadID,
DynExp::ParamsBasePtrType &&  Params 
)
inline

Definition at line 125 of file NetworkAnalogInInstr.h.

◆ ~NetworkAnalogInT()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::~NetworkAnalogInT ( )
inlinevirtual

Definition at line 127 of file NetworkAnalogInInstr.h.

Member Function Documentation

◆ Get()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual AnalogInData::SampleStreamType::SampleType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::Get ( DynExp::TaskBase::CallbackType  CallbackFunc = nullptr) const
inlinevirtual

Definition at line 186 of file NetworkAnalogInInstr.h.

◆ GetHardwareMaxValue()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual DataStreamInstrumentData::ValueType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetHardwareMaxValue ( ) const
inlineoverridevirtual

Definition at line 144 of file NetworkAnalogInInstr.h.

◆ GetHardwareMinValue()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual DataStreamInstrumentData::ValueType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetHardwareMinValue ( ) const
inlineoverridevirtual

Definition at line 131 of file NetworkAnalogInInstr.h.

◆ GetHardwareResolution()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual DataStreamInstrumentData::ValueType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetHardwareResolution ( ) const
inlinefinaloverridevirtual

Definition at line 157 of file NetworkAnalogInInstr.h.

◆ GetName()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual std::string DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetName ( ) const
inlineoverridevirtual

Returns the name of this Object type.

Reimplemented from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >.

Definition at line 129 of file NetworkAnalogInInstr.h.

◆ GetSync()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual AnalogInData::SampleStreamType::SampleType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetSync ( ) const
inlinevirtual

Definition at line 199 of file NetworkAnalogInInstr.h.

◆ GetValueUnit()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual DataStreamInstrumentData::UnitType DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::GetValueUnit ( ) const
inlineoverridevirtual

Definition at line 170 of file NetworkAnalogInInstr.h.

◆ MakeExitTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::ExitTaskBase> DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::MakeExitTask ( ) const
inlineoverrideprivatevirtual

Factory function for an exit task (ExitTaskBase). Override to define the desired deinitialization task in derived classes only if the respective task really does something and if it has no pure virtual function.

Returns
Pointer to the task (transferring ownership) or nullptr if no exit task is required. A task can be created with MakeTask().

Reimplemented from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >.

Definition at line 221 of file NetworkAnalogInInstr.h.

◆ MakeInitTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::InitTaskBase> DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::MakeInitTask ( ) const
inlineoverrideprivatevirtual

Factory function for an init task (InitTaskBase). Override to define the desired initialization task in derived classes only if the respective task really does something and if it has no pure virtual function.

Returns
Pointer to the task (transferring ownership) or nullptr if no init task is required. A task can be created with MakeTask().

Reimplemented from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >.

Definition at line 220 of file NetworkAnalogInInstr.h.

◆ MakeUpdateTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::UpdateTaskBase> DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::MakeUpdateTask ( ) const
inlineoverrideprivatevirtual

Factory function for an update task (UpdateTaskBase). Override to define the desired update task in derived classes only if the respective task really does something and if it has no pure virtual function.

Returns
Pointer to the task (transferring ownership) or nullptr if no update task is required. A task can be created with MakeTask().

Reimplemented from DynExpInstr::NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >.

Definition at line 222 of file NetworkAnalogInInstr.h.

◆ Name()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
constexpr static auto DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::Name ( )
inlinestaticconstexprnoexcept

Definition at line 123 of file NetworkAnalogInInstr.h.

◆ ResetImpl() [1/2]

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual void DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::ResetImpl ( DynExp::Object::dispatch_tag< NetworkAnalogInT< BaseInstr,, gRPCStubs > >  )
inlineprivatevirtual

Definition at line 218 of file NetworkAnalogInInstr.h.

◆ ResetImpl() [2/2]

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
void DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::ResetImpl ( DynExp::Object::dispatch_tag< NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >>  )
inlinefinaloverrideprivate

Definition at line 213 of file NetworkAnalogInInstr.h.

◆ WriteData()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< AnalogIn, BaseInstr >, int > , typename... gRPCStubs>
virtual void DynExpInstr::NetworkAnalogInT< BaseInstr,, gRPCStubs >::WriteData ( DynExp::TaskBase::CallbackType  CallbackFunc = nullptr) const
inlineoverridevirtual

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