openDAQ
Open data acquisition platform
ISampleReader Struct Referenceabstract

A basic signal reader that simplifies reading the signals's samples. More...

+ Inheritance diagram for ISampleReader:
+ Collaboration diagram for ISampleReader:

Detailed Description

A basic signal reader that simplifies reading the signals's samples.

Public Member Functions

virtual ErrCode INTERFACE_FUNC getValueReadType (SampleType *sampleType)=0
 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...
 
virtual ErrCode INTERFACE_FUNC getDomainReadType (SampleType *sampleType)=0
 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...
 
virtual ErrCode INTERFACE_FUNC setValueTransformFunction (IFunction *transform)=0
 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...
 
virtual ErrCode INTERFACE_FUNC setDomainTransformFunction (IFunction *transform)=0
 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...
 
virtual ErrCode INTERFACE_FUNC getReadMode (ReadMode *mode)=0
 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 IReader
virtual ErrCode INTERFACE_FUNC getAvailableCount (SizeT *count)=0
 Gets the number of segments available to read. More...
 
virtual ErrCode INTERFACE_FUNC setOnDataAvailable (IProcedure *callback)=0
 Sets the specified callback function to be called when there is available data in the reader. Pass nullptr to unset the callback. The callback should take no arguments. More...
 
virtual ErrCode INTERFACE_FUNC getEmpty (Bool *empty)=0
 Checks if there is data to read. More...
 
- Public Member Functions inherited from IBaseObject
virtual ErrCode INTERFACE_FUNC borrowInterface (const IntfID &intfID, void **obj) const =0
 Returns another interface which is supported by the object without incrementing the reference count. More...
 
virtual ErrCode INTERFACE_FUNC dispose ()=0
 Disposes all references held by the object. More...
 
virtual ErrCode INTERFACE_FUNC getHashCode (SizeT *hashCode)=0
 Returns hash code of the object. More...
 
virtual ErrCode INTERFACE_FUNC equals (IBaseObject *other, Bool *equal) const =0
 Compares object to another object for equality. More...
 
virtual ErrCode INTERFACE_FUNC toString (CharPtr *str)=0
 Returns a string representation of the object. More...
 
- Public Member Functions inherited from IUnknown
virtual ErrCode INTERFACE_FUNC queryInterface (const IntfID &intfID, void **obj)=0
 Returns another interface which is supported by the object and increments the reference count. More...
 
virtual int INTERFACE_FUNC addRef ()=0
 Increments the reference count for an interface on an object. More...
 
virtual int INTERFACE_FUNC releaseRef ()=0
 Decrements the reference count for an interface on an object. More...
 

Member Function Documentation

◆ getDomainReadType()

virtual ErrCode INTERFACE_FUNC getDomainReadType ( SampleType *  sampleType)
pure virtual

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.

Parameters
[out]sampleTypeThe sample-type type of the read samples otherwise SampleType::Invalid.

◆ getReadMode()

virtual ErrCode INTERFACE_FUNC getReadMode ( ReadMode *  mode)
pure virtual

Gets the reader's read mode which determines if the reader will also scale the read data or not.

Parameters
[out]modeThe mode the reader is in (either Raw or Scaled)

◆ getValueReadType()

virtual ErrCode INTERFACE_FUNC getValueReadType ( SampleType *  sampleType)
pure virtual

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.

Parameters
[out]sampleTypeThe sample-type type of the read samples otherwise SampleType::Invalid.

◆ setDomainTransformFunction()

virtual ErrCode INTERFACE_FUNC setDomainTransformFunction ( IFunction transform)
pure virtual

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:

transform(Int inputBuffer, Int outputBuffer, SizeT toRead, IDataDescriptor* descriptor)
Parameters
transformThe function performing the post-processing.

◆ setValueTransformFunction()

virtual ErrCode INTERFACE_FUNC setValueTransformFunction ( IFunction transform)
pure virtual

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:

transform(Int inputBuffer, Int outputBuffer, SizeT toRead, IDataDescriptor* descriptor)
Parameters
transformThe function performing the post-processing.
IDataDescriptor
Describes the data sent by a signal, defining how they are to be interpreted by anyone receiving the ...
Definition: data_descriptor.h:124