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

Public Types

using InstrumentType = NetworkTimeTaggerT< BaseInstr, 0, gRPCStubs... >
 
- Public Types inherited from DynExpInstr::NetworkDataStreamInstrumentData< BaseInstr, 0, gRPCStubs... >
using SampleStreamType = NetworkDataStreamInstrumentDataSampleStreamType
 
using InstrumentType = NetworkDataStreamInstrumentT< BaseInstr, 0, gRPCStubs... >
 

Public Member Functions

 NetworkTimeTaggerData (size_t BufferSizeInSamples=1)
 
virtual ~NetworkTimeTaggerData ()=default
 
auto GetMinThresholdInVolts () const noexcept
 
auto GetMaxThresholdInVolts () const noexcept
 
auto GetResolution () const noexcept
 
auto GetBufferSizeInSamples () const noexcept
 
- Public Member Functions inherited from DynExpInstr::NetworkDataStreamInstrumentData< BaseInstr, 0, gRPCStubs... >
 NetworkDataStreamInstrumentData (size_t BufferSizeInSamples=1)
 
virtual ~NetworkDataStreamInstrumentData ()=default
 
const auto & GetRemoteStreamInfo () const noexcept
 
auto HasFinished () const noexcept
 
auto IsRunning () const noexcept
 
auto GetLastReadRemoteSampleID () const noexcept
 
void SetLastReadRemoteSampleID (size_t SampleID) noexcept
 
auto GetLastWrittenSampleID () const noexcept
 
void SetLastWrittenSampleID (size_t SampleID) noexcept
 
- Public Member Functions inherited from DynExpInstr::gRPCInstrumentData< BaseInstr, 0, gRPCStubs... >
 gRPCInstrumentData (ArgTs &&...Args)
 Constructs a gRPCInstrumentData instance and forwards all arguments passed to the constructor to the constructor of the instrument data type of BaseInstr. More...
 
virtual ~gRPCInstrumentData ()=default
 
auto GetStub () const noexcept
 Returns a stub pointer this gRPCInstrument uses selected by the stub index in the gRPCStubs list of gRPCInstrument. More...
 
auto GetStub () const noexcept
 Returns a stub pointer this gRPCInstrument uses selected by the stub type T. More...
 

Private Member Functions

void ResetImpl (DynExp::InstrumentDataBase::dispatch_tag< NetworkDataStreamInstrumentData< BaseInstr, 0, gRPCStubs... >>) override final
 
virtual void ResetImpl (DynExp::InstrumentDataBase::dispatch_tag< NetworkTimeTaggerData >)
 

Private Attributes

double MinThresholdInVolts
 
double MaxThresholdInVolts
 
Util::picoseconds Resolution
 
size_t BufferSizeInSamples
 

Friends

class NetworkTimeTaggerTasks::InitTask< BaseInstr, 0, gRPCStubs... >
 
class NetworkTimeTaggerTasks::UpdateTask< BaseInstr, 0, gRPCStubs... >
 

Detailed Description

template<typename BaseInstr, typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int >, typename... gRPCStubs>
class DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >

Definition at line 357 of file NetworkTimeTagger.h.

Member Typedef Documentation

◆ InstrumentType

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
using DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::InstrumentType = NetworkTimeTaggerT<BaseInstr, 0, gRPCStubs...>

Definition at line 363 of file NetworkTimeTagger.h.

Constructor & Destructor Documentation

◆ NetworkTimeTaggerData()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::NetworkTimeTaggerData ( size_t  BufferSizeInSamples = 1)
inline

Definition at line 365 of file NetworkTimeTagger.h.

◆ ~NetworkTimeTaggerData()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
virtual DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::~NetworkTimeTaggerData ( )
virtualdefault

Member Function Documentation

◆ GetBufferSizeInSamples()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
auto DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::GetBufferSizeInSamples ( ) const
inlinenoexcept

Definition at line 372 of file NetworkTimeTagger.h.

◆ GetMaxThresholdInVolts()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
auto DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::GetMaxThresholdInVolts ( ) const
inlinenoexcept

Definition at line 370 of file NetworkTimeTagger.h.

◆ GetMinThresholdInVolts()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
auto DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::GetMinThresholdInVolts ( ) const
inlinenoexcept

Definition at line 369 of file NetworkTimeTagger.h.

◆ GetResolution()

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
auto DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::GetResolution ( ) const
inlinenoexcept

Definition at line 371 of file NetworkTimeTagger.h.

◆ ResetImpl() [1/2]

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
void DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::ResetImpl ( DynExp::InstrumentDataBase::dispatch_tag< NetworkDataStreamInstrumentData< BaseInstr, 0, gRPCStubs... >>  )
inlinefinaloverrideprivate

Definition at line 375 of file NetworkTimeTagger.h.

◆ ResetImpl() [2/2]

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
virtual void DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::ResetImpl ( DynExp::InstrumentDataBase::dispatch_tag< NetworkTimeTaggerData< BaseInstr,, gRPCStubs > >  )
inlineprivatevirtual

Definition at line 385 of file NetworkTimeTagger.h.

Friends And Related Function Documentation

◆ NetworkTimeTaggerTasks::InitTask< BaseInstr, 0, gRPCStubs... >

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
friend class NetworkTimeTaggerTasks::InitTask< BaseInstr, 0, gRPCStubs... >
friend

Definition at line 341 of file NetworkTimeTagger.h.

◆ NetworkTimeTaggerTasks::UpdateTask< BaseInstr, 0, gRPCStubs... >

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
friend class NetworkTimeTaggerTasks::UpdateTask< BaseInstr, 0, gRPCStubs... >
friend

Definition at line 341 of file NetworkTimeTagger.h.

Member Data Documentation

◆ BufferSizeInSamples

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
size_t DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::BufferSizeInSamples
private

Definition at line 390 of file NetworkTimeTagger.h.

◆ MaxThresholdInVolts

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
double DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::MaxThresholdInVolts
private

Definition at line 388 of file NetworkTimeTagger.h.

◆ MinThresholdInVolts

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
double DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::MinThresholdInVolts
private

Definition at line 387 of file NetworkTimeTagger.h.

◆ Resolution

template<typename BaseInstr , typename std::enable_if_t< std::is_base_of_v< TimeTagger, BaseInstr >, int > , typename... gRPCStubs>
Util::picoseconds DynExpInstr::NetworkTimeTaggerData< BaseInstr,, gRPCStubs >::Resolution
private

Definition at line 389 of file NetworkTimeTagger.h.


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