diff --git a/config.toml b/config.toml index 7c6c5d7..9d46fb7 100644 --- a/config.toml +++ b/config.toml @@ -2,6 +2,7 @@ baseURL = 'https://nerdcult.net/' languageCode = 'en-us' title = 'NerdCult' theme = 'terminal' +paginate = 16 [params] themeColor = 'pink' diff --git a/content/projects/noxos/docs/codebase/utils/stream.h.md b/content/projects/noxos/docs/codebase/utils/stream.h.md new file mode 100644 index 0000000..5b5ca41 --- /dev/null +++ b/content/projects/noxos/docs/codebase/utils/stream.h.md @@ -0,0 +1,31 @@ +--- +title: "stream.h" +date: 2023-04-20T22:15:05+02:00 +summary: "Streams are cycled buffers, that have __one__ input and __one__ output." +--- + +Streams are cycled buffers, that have __one__ input and __one__ output. + +# `stream_T` - struct + +| Name | Type | Description | +|--------------|----------|----------------------------------------------------------------------------------| +| buffer | uint8_t* | The buffer where all the streams data is stored in. | +| size | uint32_t | The size of _buffer_ in bytes. | +| pos_sender | uint32_t | The senders (input) position in the buffer. | +| pos_receiver | uint32_t | The receivers (output) position in the buffer. This is always behind the sender. | + + +# `stream_alloc(size)` - function (stream_T*) +Allocates and returns a new stream, with a buffer of size **_size_**. + +# `stream_destruct(stream)` - function (void) +Frees the resources of a stream. + +# `stream_write(stream, buffer_in, n)` - function (uint32_t) +Writes at most **_n_** bytes from **_buffer_in_** into **_stream_**. +Returns the amount of bytes, that where actually written into the stream. + +# `stream_read(stream, buffer_out, n)` - function (uint32_t) +Reads at most **_n_** bytes from **_stream_** into **_buffer_out_**. +Returns the amount of bytes, that where actually read from the stream. \ No newline at end of file