8
\author Satofumi KAMIMURA
10
$Id: ring_buffer.h 1557 2009-12-01 12:38:06Z satofumi $
14
//! �����O�o�b�t�@�̊Ǘ����
17
char *buffer; //!< �o�b�t�@�ւ̃|�C���^
18
int buffer_size; //!< �o�b�t�@�T�C�Y
19
int first; //!< �o�b�t�@�̐擪�ʒu
20
int last; //!< �o�b�t�@�̍ŏI�ʒu
27
\param[in] ring �����O�o�b�t�@�̍\����
28
\param[in] buffer ���蓖�Ă�o�b�t�@
29
\param[in] shift_length �o�b�t�@�T�C�Y�� 2 �̏搔
31
extern void ring_initialize(ringBuffer_t *ring,
32
char *buffer, const int shift_length);
36
\brief �����O�o�b�t�@�̃N���A
38
\param[in] ring �����O�o�b�t�@�̍\����
40
extern void ring_clear(ringBuffer_t *ring);
44
\brief �i�[�f�[�^����Ԃ�
46
\param[in] ring �����O�o�b�t�@�̍\����
48
extern int ring_size(const ringBuffer_t *ring);
52
\brief �ő�̊i�[�f�[�^����Ԃ�
54
\param[in] ring �����O�o�b�t�@�̍\����
56
extern int ring_capacity(const ringBuffer_t *ring);
62
\param[in] ring �����O�o�b�t�@�̍\����
63
\param[in] data �f�[�^
64
\param[in] size �f�[�^�T�C�Y
66
\return �i�[�����f�[�^��
68
extern int ring_write(ringBuffer_t *ring, const char *data, int size);
74
\param[in] ring �����O�o�b�t�@�̍\����
75
\param[out] buffer �f�[�^
76
\param[in] size �ő�̃f�[�^�T�C�Y
78
\return ���o�����f�[�^��
80
extern int ring_read(ringBuffer_t *ring, char *buffer, int size);
82
#endif /* ! RING_BUFFER_H */