gqueue.inc 1.8 KB

123456789101112131415161718192021222324252627282930313233343536
  1. // included by glib2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. PGQueue = ^TGQueue;
  7. TGQueue = record
  8. head : PGList;
  9. tail : PGList;
  10. length : guint;
  11. end;
  12. {$ENDIF read_interface_types}
  13. //------------------------------------------------------------------------------
  14. {$IFDEF read_interface_rest}
  15. { Queues }
  16. function g_queue_new:PGQueue;cdecl;external gliblib name 'g_queue_new';
  17. procedure g_queue_free(queue:PGQueue);cdecl;external gliblib name 'g_queue_free';
  18. procedure g_queue_push_head(queue:PGQueue; data:gpointer);cdecl;external gliblib name 'g_queue_push_head';
  19. procedure g_queue_push_tail(queue:PGQueue; data:gpointer);cdecl;external gliblib name 'g_queue_push_tail';
  20. function g_queue_pop_head(queue:PGQueue):gpointer;cdecl;external gliblib name 'g_queue_pop_head';
  21. function g_queue_pop_tail(queue:PGQueue):gpointer;cdecl;external gliblib name 'g_queue_pop_tail';
  22. function g_queue_is_empty(queue:PGQueue):gboolean;cdecl;external gliblib name 'g_queue_is_empty';
  23. function g_queue_peek_head(queue:PGQueue):gpointer;cdecl;external gliblib name 'g_queue_peek_head';
  24. function g_queue_peek_tail(queue:PGQueue):gpointer;cdecl;external gliblib name 'g_queue_peek_tail';
  25. procedure g_queue_push_head_link(queue:PGQueue; link:PGList);cdecl;external gliblib name 'g_queue_push_head_link';
  26. procedure g_queue_push_tail_link(queue:PGQueue; link:PGList);cdecl;external gliblib name 'g_queue_push_tail_link';
  27. function g_queue_pop_head_link(queue:PGQueue):PGList;cdecl;external gliblib name 'g_queue_pop_head_link';
  28. function g_queue_pop_tail_link(queue:PGQueue):PGList;cdecl;external gliblib name 'g_queue_pop_tail_link';
  29. {$ENDIF read_interface_rest}
  30. // included by glib2.pas