Base module

basic::Decoder

Abstract interface for stream decoders.

Decoder

#include <icy/interface.h>

class Decoder

Defined in src/base/include/icy/interface.h:33

Subclassed by
Decoder, Decoder

Public Methods

ReturnNameDescription
DecoderDefaulted constructor.
~Decoder virtualDefaulted destructor.
ssize_tdecode virtualDecodes nread bytes from inbuf and writes decoded output to outbuf.
ssize_tfinalize virtual inlineFlushes any buffered state and writes final output to outbuf.

Decoder

Decoder() = default

Defined in src/base/include/icy/interface.h:36

Defaulted constructor.


~Decoder

virtual

virtual ~Decoder() = default

Defined in src/base/include/icy/interface.h:37

Reimplemented by

Defaulted destructor.


decode

virtual

virtual ssize_t decode(const char * inbuf, size_t nread, char * outbuf)

Defined in src/base/include/icy/interface.h:44

Decodes nread bytes from inbuf and writes decoded output to outbuf.

Returns

Number of bytes written to outbuf, or -1 on error.

Reimplemented by

Parameters

ParameterTypeDescription
inbufconst char *Encoded input buffer.
nreadsize_tNumber of bytes to decode from inbuf.
outbufchar *Destination buffer for decoded output.

finalize

virtual inline

virtual inline ssize_t finalize(char * outbuf)

Defined in src/base/include/icy/interface.h:49

Flushes any buffered state and writes final output to outbuf.

Returns

Number of bytes written, or 0 if nothing to flush.

Reimplemented by

Parameters

ParameterTypeDescription
outbufchar *Destination buffer for any remaining output.