リングバッファ [詳細]
データ構造 | |
struct | ring_buffer_t |
リングバッファの管理情報 [詳細] | |
関数 | |
void | ring_initialize (ring_buffer_t *ring, char *buffer, const int shift_length) |
初期化 | |
void | ring_clear (ring_buffer_t *ring) |
リングバッファのクリア | |
int | ring_size (const ring_buffer_t *ring) |
格納データ数を返す | |
int | ring_capacity (const ring_buffer_t *ring) |
最大の格納データ数を返す | |
int | ring_write (ring_buffer_t *ring, const char *data, int size) |
データの格納 | |
int | ring_read (ring_buffer_t *ring, char *buffer, int size) |
データの取り出し |
リングバッファ
int ring_capacity | ( | const ring_buffer_t * | ring | ) |
最大の格納データ数を返す
[in] | ring | リングバッファの構造体 |
void ring_clear | ( | ring_buffer_t * | ring | ) |
リングバッファのクリア
[in] | ring | リングバッファの構造体 |
void ring_initialize | ( | ring_buffer_t * | ring, |
char * | buffer, | ||
const int | shift_length | ||
) |
初期化
[in] | ring | リングバッファの構造体 |
[in] | buffer | 割り当てるバッファ |
[in] | shift_length | バッファサイズの 2 の乗数 |
int ring_read | ( | ring_buffer_t * | ring, |
char * | buffer, | ||
int | size | ||
) |
データの取り出し
[in] | ring | リングバッファの構造体 |
[out] | buffer | データ |
[in] | size | 最大のデータサイズ |
int ring_size | ( | const ring_buffer_t * | ring | ) |
格納データ数を返す
[in] | ring | リングバッファの構造体 |
int ring_write | ( | ring_buffer_t * | ring, |
const char * | data, | ||
int | size | ||
) |
データの格納
[in] | ring | リングバッファの構造体 |
[in] | data | データ |
[in] | size | データサイズ |