|
HARDT - The Ham Radio DSP Toolkit
|
#include <hreader.h>


Public Member Functions | |
| virtual | ~HReader ()=default |
| virtual int | Read (T *dest, size_t blocksize)=0 |
| virtual bool | Start () |
| virtual bool | Stop () |
| HReader< T > * | Reader () |
| virtual bool | Command (HCommand *command)=0 |
Public Member Functions inherited from HObject | |
| HObject () | |
The base class for any reader type. It provides a pure virtual Read() function which must be implemented by the specific reader.
It further provides two virtual methods Start() and Stop() which is used by specifik readers to do any initialization/clean-up when reading starts and stops.
If you implement types that uses a HReader, you must implement Start() and Stop() so that they call Start() and Stop() on the reader the use.
Ex: You implement a mp3 file decoder based on the HFileReader class. The processor will read from your decoder class by calling Start() and then Read() untill you return 0 (zero). Then Stop() will be called. If your decoder class do not call Start() and Stop() on the base HFilerReader, the file will never be opened and the first Read() will return 0 (zero).
Always cascade Start() and Stop() to any HReader you implement or use.!
Virtual destructor enabling delete on derived objects
Receive, handle and propagate command
Returns: True if the command was executed correctly False otherwise. Errors is written to the error log
Implemented in HConverter< Tin, Tout >, HConverter< std::complex< T >, T >, HConverter< T, std::complex< T > >, HConverter< T, T >, HFilter< T >, HFilter< std::complex< T > >, HInterpolator< T >, HFirDecimator< T >, HIqFirDecimator< T >, HDecimator< T >, HIqDecimator< T >, HSwitch< T >, HRtl2832Reader< T >, HCollector< T >, HCascadedBiQuadFilter< T >, HSoundcardReader< T >, HMux< T >, HMultiplier< T >, HFileReader< T >, HDeMux< T >, HIqMultiplier< T >, HSubtracter< T >, HLinearMixer< T >, HGenerator< T >, HMemoryReader< T >, HNetworkReader< T >, HVfo< T >, HNullReader< T >, HWavReader< T >, and HLocalOscillator< T >.
|
pure virtual |
Read a block of samples
Implemented in HConverter< Tin, Tout >, HInterpolator< T >, HConverter< std::complex< T >, T >, HConverter< T, T >, HFirDecimator< T >, HIqFirDecimator< T >, HFilter< T >, HDecimator< T >, HIqDecimator< T >, HRtl2832Reader< T >, HCollector< T >, HSwitch< T >, HMux< T >, HSoundcardReader< T >, HCascadedBiQuadFilter< T >, HMultiplier< T >, HGenerator< T >, HBreaker< T >, HSubtracter< T >, HDeMux< T >, HIqMultiplier< T >, HLinearMixer< T >, HMemoryReader< T >, HFileReader< T >, HNetworkReader< T >, HNullReader< T >, HConverter< T, std::complex< T > >, and HFilter< std::complex< T > >.
|
inlinevirtual |
Initialize before first read
Reimplemented in HFilter< T >, HFilter< std::complex< T > >, HInterpolator< T >, HFirDecimator< T >, HIqFirDecimator< T >, HMux< T >, HDecimator< T >, HIqDecimator< T >, HSwitch< T >, HCollector< T >, HDeMux< T >, HCascadedBiQuadFilter< T >, HMultiplier< T >, HIqMultiplier< T >, HSubtracter< T >, HLinearMixer< T >, HFileReader< T >, HMute< T >, HBreaker< T >, HConverter< Tin, Tout >, HConverter< std::complex< T >, T >, HConverter< T, std::complex< T > >, HConverter< T, T >, and HWavReader< T >.
|
inlinevirtual |
Cleanup after last read
Reimplemented in HFilter< T >, HFilter< std::complex< T > >, HInterpolator< T >, HFirDecimator< T >, HIqFirDecimator< T >, HMux< T >, HDecimator< T >, HIqDecimator< T >, HSwitch< T >, HCollector< T >, HDeMux< T >, HCascadedBiQuadFilter< T >, HMultiplier< T >, HFileReader< T >, HIqMultiplier< T >, HSubtracter< T >, HLinearMixer< T >, HMute< T >, HBreaker< T >, HConverter< Tin, Tout >, HConverter< std::complex< T >, T >, HConverter< T, std::complex< T > >, and HConverter< T, T >.
1.8.17