#include "scs_fp_queue.h"
Defines | |
#define | CIRCULAR_INDEX(I) (I)%SCS_FP_Q_SIZE |
Implementacion de cola FIFO circular version 1.0. | |
#define | INC_CIRC_INDEX(I) I=(++(I))%SCS_FP_Q_SIZE |
Functions | |
void | scs_init_fp_queue (scs_fp_queue_t *queue) |
Inicializa la cola. | |
void | scs_add_fp_element (scs_fp_queue_t *queue, scs_fptr e) |
Agrega un elemento en la cola. | |
scs_fptr | scs_remove_fp_element (scs_fp_queue_t *queue) |
Extrae un elemento del principio de la cola. | |
int | scs_is_fp_empty (scs_fp_queue_t *queue) |
Retorna verdadero si la cola esta vacia. | |
int | scs_is_fp_full (scs_fp_queue_t *queue) |
Retorna verdadero si la cola esta llena. |
#define CIRCULAR_INDEX | ( | I | ) | (I)%SCS_FP_Q_SIZE |
Implementacion de cola FIFO circular version 1.0.
|<-rd_idx->|<-------num_e--------------->| _0____1____2____3_____ ______________________Q_SIZE-1 | X | X | A | B | | J | K | L | X | X | |____|____|____|____|__ _|____|____|____|____|____| >-------| ^ | |<-----------------------------------------------------------| | queue->elments
abril 2008 - Juan Pablo Gonzalez Sistemas Embebidos de Tiempo Real - IIE - Facultad de Ingenieria - UdelaR
#define INC_CIRC_INDEX | ( | I | ) | I=(++(I))%SCS_FP_Q_SIZE |
void scs_add_fp_element | ( | scs_fp_queue_t * | queue, | |
scs_fptr | e | |||
) |
Agrega un elemento en la cola.
queue | Cola donde se guarda el elemento | |
e | Entero a guardar |
No se controlan limites de la cola, se deja al usuario del modulo;
void scs_init_fp_queue | ( | scs_fp_queue_t * | queue | ) |
Inicializa la cola.
queue | Puntero a la estructura de cola |
int scs_is_fp_empty | ( | scs_fp_queue_t * | queue | ) |
Retorna verdadero si la cola esta vacia.
queue | Cola por la cual se pregunta su estado |
int scs_is_fp_full | ( | scs_fp_queue_t * | queue | ) |
Retorna verdadero si la cola esta llena.
queue | Cola por la cual se pregunta su estado |
scs_fptr scs_remove_fp_element | ( | scs_fp_queue_t * | queue | ) |
Extrae un elemento del principio de la cola.
queue | Cola de la cual se extrae el elemento |
No se controlan limites de la cola, se deja al usuario del modulo;