/* * Copyright(C)2006 Sugimoto,Shigetoshi * All rights reserved. */ /* * queueの各要素 */ typedef struct general_queue_item { struct general_queue_item *prev; struct general_queue_item *next; void *data; } general_queue_item_t; /* * queueの管理構造体 */ typedef struct general_queue_info { general_queue_item_t *head; general_queue_item_t *tail; general_queue_item_t *free; int (*push_item)(struct general_queue_info *info, void *data); void *(*get_item)(struct general_queue_info *info); void (*print_queue)(struct general_queue_info *info); } general_queue_info_t; /* queueの初期化関数 */ extern general_queue_info_t *init_general_queue(int size); #ifndef NULL #define NULL ((void*)0) #endif #ifndef TRUE #define TRUE (1) #endif #ifndef FALSE #define FALSE (0) #endif // end of file