Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

queue.h File Reference

#include <volume_io/arrays.h>

Include dependency graph for queue.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Defines

#define SHIFT_QUEUE_AT   100
#define SHIFT_QUEUE_RATIO   1
#define QUEUE_STRUCT(type)
#define INITIALIZE_QUEUE(q)
#define INSERT_IN_QUEUE(q, entry)
#define NUMBER_IN_QUEUE(q)   ((q).head - (q).tail)
#define IS_QUEUE_EMPTY(q)   ((q).tail >= (q).head)
#define REMOVE_FROM_QUEUE(q, entry)
#define DELETE_QUEUE(q)


Define Documentation

#define DELETE_QUEUE  ) 
 

Value:

{ \ if( (q).n_queue_alloced > 0 ) \ { \ FREE( (q).queue ); \ } \ }

Definition at line 184 of file queue.h.

Referenced by fill_connected_voxels().

#define INITIALIZE_QUEUE  ) 
 

Value:

{ \ (q).head = 0; \ (q).tail = 0; \ (q).n_queue_alloced = 0; \ (q).queue = 0; \ }

Definition at line 71 of file queue.h.

Referenced by fill_connected_voxels().

#define INSERT_IN_QUEUE q,
entry   ) 
 

Value:

{ \ ADD_ELEMENT_TO_ARRAY_WITH_SIZE( (q).queue, (q).n_queue_alloced, \ (q).head, entry, DEFAULT_CHUNK_SIZE ) \ }

Definition at line 93 of file queue.h.

Referenced by fill_connected_voxels().

#define IS_QUEUE_EMPTY  )     ((q).tail >= (q).head)
 

Definition at line 127 of file queue.h.

Referenced by fill_connected_voxels().

#define NUMBER_IN_QUEUE  )     ((q).head - (q).tail)
 

Definition at line 112 of file queue.h.

#define QUEUE_STRUCT type   ) 
 

Value:

struct \ { \ int head, tail; \ int n_queue_alloced; \ type *queue; \ }

Definition at line 50 of file queue.h.

Referenced by fill_connected_voxels().

#define REMOVE_FROM_QUEUE q,
entry   ) 
 

Value:

{ \ if( !IS_QUEUE_EMPTY(q) ) \ { \ entry = (q).queue[(q).tail]; \ ++(q).tail; \ \ if( (q).tail == (q).head ) \ { \ (q).head = 0; \ (q).tail = 0; \ } \ else if( (q).tail > SHIFT_QUEUE_AT && \ (q).tail/((q).head - (q).tail) > SHIFT_QUEUE_RATIO )\ { \ int _i_; \ for_less( _i_, (q).tail, (q).head ) \ { \ (q).queue[_i_-(q).tail] = (q).queue[_i_]; \ } \ (q).head -= (q).tail; \ (q).tail = 0; \ } \ } \ }

Definition at line 145 of file queue.h.

Referenced by fill_connected_voxels().

#define SHIFT_QUEUE_AT   100
 

Definition at line 34 of file queue.h.

#define SHIFT_QUEUE_RATIO   1
 

Definition at line 35 of file queue.h.


Generated on Wed Jul 28 09:11:16 2004 for BICPL by doxygen 1.3.7