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

Public Types

using ParamsType = NetworkDigitalOutParams< BaseInstr, 0, gRPCStubs... >
 
using ConfigType = NetworkDigitalOutConfigurator< BaseInstr, 0, gRPCStubs... >
 
using InstrumentDataType = NetworkDigitalOutData< BaseInstr, 0, gRPCStubs... >
 
using StubType = DynExpProto::NetworkDigitalOut::NetworkDigitalOut
 
- 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

 NetworkDigitalOutT (const std::thread::id OwnerThreadID, DynExp::ParamsBasePtrType &&Params)
 
virtual ~NetworkDigitalOutT ()
 
virtual std::string GetName () const override
 Returns the name of this Object type. More...
 
virtual void ReadData (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void Set (DigitalOutData::SampleStreamType::SampleType Sample, DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void SetDefault (DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const override
 
virtual void SetSync (DigitalOutData::SampleStreamType::SampleType Sample) const override
 
- 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 WriteData (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< NetworkDigitalOutT >)
 
virtual Util::FeatureTester< FunctionGenerator::WaveformCapsTypeGetWaveformCapsChild () const override
 
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< DigitalOut, BaseInstr >, int >, typename... gRPCStubs>
class DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >

Definition at line 162 of file NetworkDigitalOutInstr.h.

Member Typedef Documentation

◆ ConfigType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::ConfigType = NetworkDigitalOutConfigurator<BaseInstr, 0, gRPCStubs...>

Definition at line 166 of file NetworkDigitalOutInstr.h.

◆ InstrumentDataType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::InstrumentDataType = NetworkDigitalOutData<BaseInstr, 0, gRPCStubs...>

Definition at line 167 of file NetworkDigitalOutInstr.h.

◆ ParamsType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::ParamsType = NetworkDigitalOutParams<BaseInstr, 0, gRPCStubs...>

Definition at line 165 of file NetworkDigitalOutInstr.h.

◆ StubType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::StubType = DynExpProto::NetworkDigitalOut::NetworkDigitalOut

Definition at line 168 of file NetworkDigitalOutInstr.h.

Constructor & Destructor Documentation

◆ NetworkDigitalOutT()

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

Definition at line 172 of file NetworkDigitalOutInstr.h.

◆ ~NetworkDigitalOutT()

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

Definition at line 174 of file NetworkDigitalOutInstr.h.

Member Function Documentation

◆ GetName()

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

Returns the name of this Object type.

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

Definition at line 176 of file NetworkDigitalOutInstr.h.

◆ GetWaveformCapsChild()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual Util::FeatureTester<FunctionGenerator::WaveformCapsType> DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::GetWaveformCapsChild ( ) const
inlineoverrideprivatevirtual

Definition at line 206 of file NetworkDigitalOutInstr.h.

◆ MakeExitTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::ExitTaskBase> DynExpInstr::NetworkDigitalOutT< 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 209 of file NetworkDigitalOutInstr.h.

◆ MakeInitTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::InitTaskBase> DynExpInstr::NetworkDigitalOutT< 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 208 of file NetworkDigitalOutInstr.h.

◆ MakeUpdateTask()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual std::unique_ptr<DynExp::UpdateTaskBase> DynExpInstr::NetworkDigitalOutT< 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 210 of file NetworkDigitalOutInstr.h.

◆ Name()

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

Definition at line 170 of file NetworkDigitalOutInstr.h.

◆ ReadData()

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

◆ ResetImpl() [1/2]

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

Definition at line 199 of file NetworkDigitalOutInstr.h.

◆ ResetImpl() [2/2]

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

Definition at line 204 of file NetworkDigitalOutInstr.h.

◆ Set()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual void DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::Set ( DigitalOutData::SampleStreamType::SampleType  Sample,
DynExp::TaskBase::CallbackType  CallbackFunc = nullptr 
) const
inlineoverridevirtual

Definition at line 181 of file NetworkDigitalOutInstr.h.

◆ SetDefault()

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

Definition at line 182 of file NetworkDigitalOutInstr.h.

◆ SetSync()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< DigitalOut, BaseInstr >, int > , typename... gRPCStubs>
virtual void DynExpInstr::NetworkDigitalOutT< BaseInstr,, gRPCStubs >::SetSync ( DigitalOutData::SampleStreamType::SampleType  Sample) const
inlineoverridevirtual

Definition at line 184 of file NetworkDigitalOutInstr.h.


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