Base module

basic::Encoder

Abstract interface for stream encoders.

Encoder

#include <icy/interface.h>

class Encoder

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

Subclassed by
Encoder, Encoder

Public Methods

ReturnNameDescription
EncoderDefaulted constructor.
~Encoder virtualDefaulted destructor.
ssize_tencode virtualEncodes nread bytes from inbuf and writes encoded output to outbuf.
ssize_tfinalize virtual inlineFlushes any buffered state and writes final output to outbuf.

Encoder

Encoder() = default

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

Defaulted constructor.


~Encoder

virtual

virtual ~Encoder() = default

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

Defaulted destructor.


encode

virtual

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

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

Encodes nread bytes from inbuf and writes encoded output to outbuf.

Returns

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

Reimplemented by

Parameters

ParameterTypeDescription
inbufconst char *Raw input buffer to encode.
nreadsize_tNumber of bytes to encode from inbuf.
outbufchar *Destination buffer for encoded output.

finalize

virtual inline

virtual inline ssize_t finalize(char * outbuf)

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

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.