openDAQ
Open data acquisition platform
MultiReaderPtr Class Reference

Reads multiple Signals at once. More...

+ Inheritance diagram for MultiReaderPtr:
+ Collaboration diagram for MultiReaderPtr:

Detailed Description

Reads multiple Signals at once.

Public Member Functions

daq::MultiReaderStatusPtr read (void *samples, daq::SizeT *count, daq::SizeT timeoutMs=0) const
 Copies at maximum the next count unread samples to the values buffer. The amount actually read is returned through the count parameter. More...
 
daq::MultiReaderStatusPtr readWithDomain (void *samples, void *domain, daq::SizeT *count, daq::SizeT timeoutMs=0) const
 Copies at maximum the next count unread samples and clock-stamps to the samples and domain buffers. The amount actually read is returned through the count parameter. More...
 
daq::MultiReaderStatusPtr skipSamples (daq::SizeT *count) const
 Skips the specified amount of samples. More...
 
daq::RatioPtr getTickResolution () const
 Gets the resolution the reader aligned all the signals to. This is the highest resolution (lowest value) of all the signals to not loose the precision. More...
 
daq::StringPtr getOrigin () const
 Gets the origin the reader aligned all the signals to. This is usually the earliest (lowest value) from all the signals. More...
 
void getOffset (void *domainStart) const
 Gets the domain value (offset) from the aligned origin at the point the reader starts to provide synchronized samples. More...
 
daq::Bool getIsSynchronized () const
 Gets the synchronization status of the reader. More...
 
daq::Int getCommonSampleRate () const
 Gets the common sample rate in case input signal have different rates. The value of common sample rate is such that sample rate of any individual signal can be represented as commonSampleRate / Div, where Div is an integer. Unless the required common sample rate is specified in the MultiReader constructor, common sample rate is lowest common multiple of individual signal's sample rates. The number of samples to be read is specified in common sample rate. More...
 
void setActive (daq::Bool isActive) const
 Sets active or inactive MultiReader state. In inactive state MultiReader will receive only event packets. More...
 
daq::Bool getActive () const
 Gets active or inactive MultiReader state. In inactive state MultiReader will receive only event packets.
 
- Public Member Functions inherited from GenericSampleReaderPtr< IMultiReader >
daq::SampleType getValueReadType () const
 Gets the sample-type the signal value samples will be converted to when read or SampleType::Invalid if read-type has not been determined yet. More...
 
daq::SampleType getDomainReadType () const
 Gets the sample-type the signal domain samples will be converted to when read or SampleType::Invalid if read-type has not been determined yet. More...
 
void setValueTransformFunction (const daq::FunctionPtr &transform) const
 Sets the transform function that will be called with the read value-data and currently valid Signal-Descriptor giving the user the chance add a custom post-processing step. The function should have a signature compatible with: More...
 
void setDomainTransformFunction (const daq::FunctionPtr &transform) const
 Sets the transform function that will be called with the read domain-data and currently valid Signal-Descriptor giving the user the chance add a custom post-processing step. The function should have a signature compatible with: More...
 
daq::ReadMode getReadMode () const
 Gets the reader's read mode which determines if the reader will also scale the read data or not. More...