openDAQ
Open data acquisition platform
TimeReader< TailReaderPtr > Class Referencefinal

A reader wrapper that can convert domain clock-ticks to time-points when the domain is time. More...

+ Inheritance diagram for TimeReader< TailReaderPtr >:
+ Collaboration diagram for TimeReader< TailReaderPtr >:

Detailed Description

A reader wrapper that can convert domain clock-ticks to time-points when the domain is time.

Public Member Functions

void readWithDomain (void *values, std::chrono::system_clock::time_point *domain, daq::SizeT *count, IReaderStatusType **status=nullptr) const
 Copies at maximum the next count unread samples and time-points to the values and stamps buffers. The amount actually read is returned through the count parameter. More...
 
- Public Member Functions inherited from TailReaderPtr
daq::TailReaderStatusPtr read (void *values, daq::SizeT *count) 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::TailReaderStatusPtr readWithDomain (void *values, void *domain, daq::SizeT *count) const
 Copies at maximum the next count unread samples and clock-stamps to the values and stamps buffers. The amount actually read is returned through the count parameter. More...
 
daq::SizeT getHistorySize () const
 The maximum amount of samples in history to keep. More...
 
- Public Member Functions inherited from GenericSampleReaderPtr< ITailReader >
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...
 
- Public Member Functions inherited from GenericReaderPtr< InterfaceType >
daq::SizeT getAvailableCount () const
 Gets the number of segments available to read. More...
 
void setOnDataAvailable (const daq::ProcedurePtr &callback) const
 Sets the specified callback function to be called when there is available data in the reader. More...
 
void setExternalListener (const daq::InputPortNotificationsPtr &listener) const
 Sets an external listener to the reader. More...
 
daq::Bool getEmpty () const
 Checks if there is data to read. More...
 

Member Function Documentation

◆ readWithDomain()

void readWithDomain ( void *  values,
std::chrono::system_clock::time_point *  domain,
daq::SizeT *  count,
IReaderStatusType **  status = nullptr 
) const
inline

Copies at maximum the next count unread samples and time-points to the values and stamps buffers. The amount actually read is returned through the count parameter.

Parameters
[in]valuesThe buffer that the data values will be copied to. The buffer must be a contiguous memory big enough to receive count amount of samples.
[in]domainThe buffer that the time-points will be copied to. The buffer must be a contiguous memory big enough to receive count amount of time-points.
[in,out]countThe maximum amount of samples to be read. If the count is less than available the parameter value is set to the actual amount and only the available samples are returned. The rest of the buffer is not modified or cleared.