#ifndef MOSSROSE_CHANNEL_H #define MOSSROSE_CHANNEL_H #include #include "mutex.h" struct mossrose_channel_t { mossrose_mutex_t mutex; float *left; float *right; size_t n_samples; size_t pos; }; void mossrose_channel_init(struct mossrose_channel_t *chan); int mossrose_channel_set(struct mossrose_channel_t *chan, float *left, float *right, size_t len, int force); void mossrose_channel_reset(struct mossrose_channel_t *chan); int mossrose_channel_advance(float *left, float *right, struct mossrose_channel_t *chan); void mossrose_channel_destroy(struct mossrose_channel_t *chan); #endif