lib/include/queue.h File Reference

Small circular queue library. More...

#include <inttypes.h>

Go to the source code of this file.

Data Structures

struct  queue_t
 Queue data structure. More...

Defines

#define Q_OK   0
#define Q_FULL   1
#define Q_UNDERFLOW   2
#define Q_EMPTY   3

Functions

void mos_queue_init (queue_t *q, uint8_t *buffer, uint8_t size)
 Init the queue.
uint8_t mos_queue_add (queue_t *q, uint8_t byte)
 Add a new byte to the tail of the queue.
uint8_t mos_queue_length (queue_t *q)
 Return the length of a given queue.
uint8_t mos_queue_remove (queue_t *q, uint8_t *byte)
 Remove the first byte from the head of the queue.
uint8_t mos_queue_dump (queue_t *q, uint8_t dumpNum)
 Dump specific number of bytes out from the buffer.
uint8_t mos_queue_peek (queue_t *q, uint8_t index, uint8_t *byte)
 "peek" one byte from the queue.
void mos_queue_cleanup (queue_t *q)
 Empty the queue.


Detailed Description

Definition in file queue.h.


Function Documentation

uint8_t mos_queue_add queue_t q,
uint8_t  byte
 

Parameters:
q Queue to add a byte to
byte Byte to add
Returns:
Q_OK or Q_UNDERFLOW

void mos_queue_cleanup queue_t q  ) 
 

Parameters:
q Queue to empty

uint8_t mos_queue_dump queue_t q,
uint8_t  dumpNum
 

These bytes are removed from the buffer

Parameters:
q Queue to dump bytes from
dumpNum Number of bytes to dump
Returns:
Number of dumped bytes

void mos_queue_init queue_t q,
uint8_t *  buffer,
uint8_t  size
 

Inits a new byte queue. The elements of the queue will be stored in buffer.

Parameters:
q Queue to init
buffer A byte array
size Size of buffer

uint8_t mos_queue_length queue_t q  ) 
 

Parameters:
q Queue to check length of
Returns:
Length of the queue

uint8_t mos_queue_peek queue_t q,
uint8_t  index,
uint8_t *  byte
 

Doesn't delete the byte, just looks

Parameters:
q Queue to peek
index Index to peek at
byte Peeked byte
Returns:
Q_OK, Q_EMPTY

uint8_t mos_queue_remove queue_t q,
uint8_t *  byte
 

Parameters:
q Queue to remove a byte from
byte Byte that was removed
Returns:
Q_OK or Q_UNDERFLOW


Generated on Mon Nov 23 06:25:59 2009 for MANTIS by  doxygen 1.4.6