extend ring buffer indexes from uint16 to uint32

This commit is contained in:
Milanka Ringwald 2016-10-19 10:47:02 +02:00 committed by Matthias Ringwald
parent e270cb7d03
commit 5a99111061
2 changed files with 9 additions and 9 deletions

View File

@ -49,7 +49,7 @@
// init ring buffer // init ring buffer
void btstack_ring_buffer_init(btstack_ring_buffer_t * ring_buffer, uint8_t * storage, uint16_t storage_size){ void btstack_ring_buffer_init(btstack_ring_buffer_t * ring_buffer, uint8_t * storage, uint32_t storage_size){
ring_buffer->storage = storage; ring_buffer->storage = storage;
ring_buffer->size = storage_size; ring_buffer->size = storage_size;
ring_buffer->last_read_index = 0; ring_buffer->last_read_index = 0;
@ -75,7 +75,7 @@ int btstack_ring_buffer_bytes_free(btstack_ring_buffer_t * ring_buffer){
} }
// add byte block to ring buffer, // add byte block to ring buffer,
int btstack_ring_buffer_write(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint16_t data_length){ int btstack_ring_buffer_write(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint32_t data_length){
if (btstack_ring_buffer_bytes_free(ring_buffer) < data_length){ if (btstack_ring_buffer_bytes_free(ring_buffer) < data_length){
return ERROR_CODE_MEMORY_CAPACITY_EXCEEDED; return ERROR_CODE_MEMORY_CAPACITY_EXCEEDED;
} }
@ -95,7 +95,7 @@ int btstack_ring_buffer_write(btstack_ring_buffer_t * ring_buffer, uint8_t * dat
} }
// fetch data_length bytes from ring buffer // fetch data_length bytes from ring buffer
void btstack_ring_buffer_read(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint16_t data_length, uint16_t * number_of_bytes_read){ void btstack_ring_buffer_read(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint32_t data_length, uint32_t * number_of_bytes_read){
uint32_t count = 0; uint32_t count = 0;
while (count < data_length && btstack_ring_buffer_bytes_available(ring_buffer)){ while (count < data_length && btstack_ring_buffer_bytes_available(ring_buffer)){
if (ring_buffer->last_read_index < ring_buffer->last_written_index ) { if (ring_buffer->last_read_index < ring_buffer->last_written_index ) {

View File

@ -48,14 +48,14 @@ extern "C" {
typedef struct btstack_ring_buffer { typedef struct btstack_ring_buffer {
uint8_t * storage; uint8_t * storage;
uint16_t size; uint32_t size;
uint16_t last_read_index; uint32_t last_read_index;
uint16_t last_written_index; uint32_t last_written_index;
uint8_t full; uint8_t full;
} btstack_ring_buffer_t; } btstack_ring_buffer_t;
// init ring buffer // init ring buffer
void btstack_ring_buffer_init(btstack_ring_buffer_t * ring_buffer, uint8_t * storage, uint16_t storage_size); void btstack_ring_buffer_init(btstack_ring_buffer_t * ring_buffer, uint8_t * storage, uint32_t storage_size);
// test if ring buffer is empty // test if ring buffer is empty
int btstack_ring_buffer_empty(btstack_ring_buffer_t * ring_buffer); int btstack_ring_buffer_empty(btstack_ring_buffer_t * ring_buffer);
@ -67,10 +67,10 @@ int btstack_ring_buffer_bytes_available(btstack_ring_buffer_t * ring_buffer);
int btstack_ring_buffer_bytes_free(btstack_ring_buffer_t * ring_buffer); int btstack_ring_buffer_bytes_free(btstack_ring_buffer_t * ring_buffer);
// add byte block to ring buffer, // add byte block to ring buffer,
int btstack_ring_buffer_write(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint16_t data_length); int btstack_ring_buffer_write(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint32_t data_length);
// fetch data_length bytes from ring buffer // fetch data_length bytes from ring buffer
void btstack_ring_buffer_read(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint16_t data_length, uint16_t * number_of_bytes_read); void btstack_ring_buffer_read(btstack_ring_buffer_t * ring_buffer, uint8_t * data, uint32_t data_length, uint32_t * number_of_bytes_read);
#if defined __cplusplus #if defined __cplusplus