HARDT - The Ham Radio DSP Toolkit
Public Member Functions | List of all members
HMemoryWriter< T > Class Template Reference

#include <hmemorywriter.h>

Inheritance diagram for HMemoryWriter< T >:
Inheritance graph
[legend]
Collaboration diagram for HMemoryWriter< T >:
Collaboration graph
[legend]

Public Member Functions

 HMemoryWriter (T *buffer, size_t size, bool infinite=false)
 
 HMemoryWriter (HWriterConsumer< T > *consumer, T *buffer, size_t size, bool infinite=false)
 
int Write (T *src, size_t blocksize)
 
void SetWriter (HWriter< T > *writer)
 
bool Command (HCommand *command)
 
void Reset ()
 
int GetPosition ()
 
int GetSize ()
 
- Public Member Functions inherited from HWriter< T >
virtual ~HWriter ()=default
 
virtual bool Start ()
 
virtual bool Stop ()
 
HWriter< T > * Writer ()
 
- Public Member Functions inherited from HObject
 HObject ()
 
- Public Member Functions inherited from HWriterConsumer< T >
HWriterConsumer< T > * Consumer ()
 

Detailed Description

template<class T>
class HMemoryWriter< T >

Write into a fixed buffer

Will write a finite number of samples to a fixed buffer, then return 0 on subsequent writes.

Most usefull while your are building or testing an application and need to write a single block of samples to a buffer for examination or custom handling.

Constructor & Destructor Documentation

◆ HMemoryWriter() [1/2]

template<class T >
HMemoryWriter< T >::HMemoryWriter ( T *  buffer,
size_t  size,
bool  infinite = false 
)
inline

Construct a new HMemoryWriter

◆ HMemoryWriter() [2/2]

template<class T >
HMemoryWriter< T >::HMemoryWriter ( HWriterConsumer< T > *  consumer,
T *  buffer,
size_t  size,
bool  infinite = false 
)
inline

Construct a new HMemoryWriter that registers with the upstream writer

Member Function Documentation

◆ Command()

template<class T >
bool HMemoryWriter< T >::Command ( HCommand command)
inlinevirtual

Execute or carry through a command

Implements HWriter< T >.

◆ GetPosition()

template<class T >
int HMemoryWriter< T >::GetPosition ( )
inline

Get the current buffer position (index of next write start)

◆ GetSize()

template<class T >
int HMemoryWriter< T >::GetSize ( )
inline

Get the size of the buffer

◆ Reset()

template<class T >
void HMemoryWriter< T >::Reset ( )
inline

Reset the buffer position so next write is to the start of the buffer

◆ SetWriter()

template<class T >
void HMemoryWriter< T >::SetWriter ( HWriter< T > *  writer)
inlinevirtual

◆ Write()

template<class T >
int HMemoryWriter< T >::Write ( T *  src,
size_t  blocksize 
)
inlinevirtual

Write a block of samples

Implements HWriter< T >.


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