urg_ring_buffer.h
Go to the documentation of this file.
1 #ifndef URG_RING_BUFFER_H
2 #define URG_RING_BUFFER_H
3 
14 typedef struct
16 {
17  char *buffer;
19  int first;
20  int last;
22 
23 
31 extern void ring_initialize(ring_buffer_t *ring,
32  char *buffer, const int shift_length);
33 
34 
40 extern void ring_clear(ring_buffer_t *ring);
41 
42 
48 extern int ring_size(const ring_buffer_t *ring);
49 
50 
56 extern int ring_capacity(const ring_buffer_t *ring);
57 
58 
68 extern int ring_write(ring_buffer_t *ring, const char *data, int size);
69 
70 
80 extern int ring_read(ring_buffer_t *ring, char *buffer, int size);
81 
82 #endif /* ! RING_BUFFER_H */
int last
バッファの最終位置
int first
バッファの先頭位置
int ring_capacity(const ring_buffer_t *ring)
最大の格納データ数を返す
int ring_write(ring_buffer_t *ring, const char *data, int size)
データの格納
void ring_clear(ring_buffer_t *ring)
リングバッファのクリア
int buffer_size
バッファサイズ
int ring_read(ring_buffer_t *ring, char *buffer, int size)
データの取り出し
char * buffer
バッファへのポインタ
リングバッファの管理情報
void ring_initialize(ring_buffer_t *ring, char *buffer, const int shift_length)
初期化
int ring_size(const ring_buffer_t *ring)
格納データ数を返す


urg_c
Author(s): Satofumi Kamimura , Katsumi Kimoto, Adrian Boeing
autogenerated on Thu Jun 6 2019 19:27:49