tsrb.h¶
Thread-safe ringbuffer interface definition.
-
TSRB_INIT( BUF)¶ Static initializer.
1
{ (BUF), sizeof (BUF), 0, 0 }
-
void
tsrb_init(tsrb.h::tsrb_t* rb, char * buffer, unsigned bufsize)¶ Initialize a tsrb.
Parameters
rb: Datum to initialize. buffer: Buffer to use by tsrb. bufsize: sizeof (buffer), must be power of 2.
-
int
tsrb_empty(consttsrb.h::tsrb_t* rb)¶ Test if the tsrb is empty.
Parameters
rb: Ringbuffer to operate on Return values
- 0 if not empty
- 1 otherwise
-
unsigned int
tsrb_avail(consttsrb.h::tsrb_t* rb)¶ Get number of bytes available for reading.
Parameters
rb: Ringbuffer to operate on Return values
- nr of available bytes
-
int
tsrb_full(consttsrb.h::tsrb_t* rb)¶ Test if the tsrb is full.
Parameters
rb: Ringbuffer to operate on Return values
- 0 if not full
- 1 otherwise
-
unsigned int
tsrb_free(consttsrb.h::tsrb_t* rb)¶ Get free space in ringbuffer.
Parameters
rb: Ringbuffer to operate on Return values
- nr of available bytes
-
int
tsrb_get_one(tsrb.h::tsrb_t* rb)¶ Get a byte from ringbuffer.
Parameters
rb: Ringbuffer to operate on Return values
- >=0 byte that has been read
- -1 if no byte available
-
int
tsrb_get(tsrb.h::tsrb_t* rb, char * dst,msp430_types.h::size_tn)¶ Get bytes from ringbuffer.
Parameters
rb: Ringbuffer to operate on dst: buffer to write to n: max number of bytes to write to dstReturn values
- nr of bytes written to
dst
- nr of bytes written to
-
int
tsrb_drop(tsrb.h::tsrb_t* rb,msp430_types.h::size_tn)¶ Drop bytes from ringbuffer.
Parameters
rb: Ringbuffer to operate on n: max number of bytes to drop Return values
- nr of bytes dropped
-
int
tsrb_add_one(tsrb.h::tsrb_t* rb, char c)¶ Add a byte to ringbuffer.
Parameters
rb: Ringbuffer to operate on c: Character to add to ringbuffer Return values
- 0 on success
- -1 if no space available
-
int
tsrb_add(tsrb.h::tsrb_t* rb, const char * src,msp430_types.h::size_tn)¶ Add bytes to ringbuffer.
Parameters
rb: Ringbuffer to operate on src: buffer to read from n: max number of bytes to read from srcReturn values
- nr of bytes read from
src
- nr of bytes read from