oveRTOS C API
Embedded RTOS framework — build system, configuration, and portable C API
Loading...
Searching...
No Matches
Functions
stream.h File Reference
#include "ove/types.h"
#include "ove_config.h"
#include "ove/storage.h"
#include "ove/time.h"
Include dependency graph for stream.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

int ove_stream_init (ove_stream_t *stream, ove_stream_storage_t *storage, void *buffer, size_t size, size_t trigger)
 Initialise a stream using caller-provided static storage.
 
void ove_stream_deinit (ove_stream_t stream)
 Deinitialise a statically-allocated stream.
 
int ove_stream_create (ove_stream_t *stream, size_t size, size_t trigger)
 Allocate and initialise a heap-backed stream.
 
void ove_stream_destroy (ove_stream_t stream)
 Destroy a heap-allocated stream.
 
int ove_stream_send (ove_stream_t stream, const void *data, size_t len, uint64_t timeout_ns, size_t *bytes_sent)
 Send bytes into the stream from task context.
 
static int ove_stream_send_until (ove_stream_t stream, const void *data, size_t len, uint64_t deadline_ns, size_t *bytes_sent)
 Deadline-based variant of ove_stream_send.
 
int ove_stream_receive (ove_stream_t stream, void *buf, size_t len, uint64_t timeout_ns, size_t *bytes_received)
 Receive bytes from the stream in task context.
 
static int ove_stream_receive_until (ove_stream_t stream, void *buf, size_t len, uint64_t deadline_ns, size_t *bytes_received)
 Deadline-based variant of ove_stream_receive.
 
int ove_stream_send_from_isr (ove_stream_t stream, const void *data, size_t len, size_t *bytes_sent)
 Send bytes into the stream from an ISR.
 
int ove_stream_receive_from_isr (ove_stream_t stream, void *buf, size_t len, size_t *bytes_received)
 Receive bytes from the stream from an ISR.
 
int ove_stream_reset (ove_stream_t stream)
 Discard all bytes currently held in the stream.
 
size_t ove_stream_bytes_available (ove_stream_t stream)
 Query the number of bytes currently available in the stream.
 
int ove_stream_set_notify (ove_stream_t stream, ove_notify_cb cb, void *user_data)
 Register a notify callback fired after every successful send.