embedded-software
reusable software modules for embedded systems
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
buffer.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include "library.h"
Include dependency graph for buffer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  buffer_t
 

Macros

#define BUFFER_ALLOCATE(buffer_name,max_size)
 
#define BUFFER_INIT(buffer_name, max_size)   Buffer_Init(&buffer_name, &CAT2(buffer_name, _array)[0], max_size)
 
#define BUFFER_ENQUEUE_FAILED   1
 enqueue failed (return value of Buffer_EnqueueData() ) More...
 
#define BUFFER_ENQUEUE_SUCCEEDED   0
 enqueue succeeded (return value of Buffer_EnqueueData() ) More...
 

Functions

void Buffer_Enqueue (buffer_t *buffer, uint8_t data)
 
uint8_t Buffer_Dequeue (buffer_t *buffer)
 
uint16_t Buffer_GetSize (buffer_t *buffer)
 
void Buffer_Init (buffer_t *buffer, uint8_t *data_array, uint16_t max_size)
 
void Buffer_SetCallback (buffer_t *buffer, void(*Callback)(buffer_t *buffer))
 
void Buffer_ClearCallback (buffer_t *buffer)
 
uint8_t Buffer_EnqueueData (buffer_t *buffer, uint8_t *data, uint16_t length)