extend ring buffer indexes from uint16 to uint32

This commit is contained in:
Milanka Ringwald 2016-10-19 10:47:02 +02:00
parent 2af9447338
commit 44e9e4014d
4 changed files with 11 additions and 11 deletions

View File

@ -49,7 +49,7 @@
// 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->size = storage_size;
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,
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){
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
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;
while (count < data_length && btstack_ring_buffer_bytes_available(ring_buffer)){
if (ring_buffer->last_read_index < ring_buffer->last_written_index ) {

View File

@ -48,14 +48,14 @@ extern "C" {
typedef struct btstack_ring_buffer {
uint8_t * storage;
uint16_t size;
uint16_t last_read_index;
uint16_t last_written_index;
uint32_t size;
uint32_t last_read_index;
uint32_t last_written_index;
uint8_t full;
} btstack_ring_buffer_t;
// 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
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);
// 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
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

View File

@ -83,7 +83,7 @@ static int patestCallback( const void *inputBuffer, void *outputBuffer,
(void) statusFlags;
(void) inputBuffer;
uint16_t bytes_read = 0;
uint32_t bytes_read = 0;
int bytes_per_buffer = framesPerBuffer * BYTES_PER_FRAME;
if (btstack_ring_buffer_bytes_available(&ring_buffer) >= bytes_per_buffer){

View File

@ -106,7 +106,7 @@ static int patestCallback( const void *inputBuffer, void *outputBuffer,
(void) statusFlags;
(void) inputBuffer;
uint16_t bytes_read = 0;
uint32_t bytes_read = 0;
int bytes_per_buffer = framesPerBuffer * BYTES_PER_FRAME;
if (btstack_ring_buffer_bytes_available(&ring_buffer) >= bytes_per_buffer){