globus_fifo.h(3)

πŸ“¦
version 18.15 Β· 6 versions
, in epel 10, fedora 43, fedora 44, ubuntu resolute, ubuntu stonking

✨ globus_fifo.h ✨

okay bestie, welcome to the globus_fifo.h page from the Library Functions Manual πŸ’– this is the Globus FIFO situation and honestly? it's giving queue energy and we are obsessed πŸŽ€


🌸 NAME 🌸

globus_fifo.h β€” Globus FIFO πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

#include 'globus_list.h'

(yes bestie, that include is written with single quotes in the source, we do not touch it, we do not "fix" it, periodt πŸ’€)

πŸŽ€ Typedefs

  • typedef struct globus_fifo_s * globus_fifo_t β€” this is the FIFO handle type, the little main character pointer you pass around everywhere ✨

🫢 Functions

  • int globus_fifo_init (globus_fifo_t *fifo) β€” sets up the fifo structure, gets it ready for its moment πŸ‘‘
  • void globus_fifo_destroy (globus_fifo_t *fifo) β€” tears the fifo down πŸ’€
  • void globus_fifo_destroy_all (globus_fifo_t *fifo, void(*datum_free)(void *)) β€” takes the fifo out and calls a datum_free function on the data inside, so nothing leaks, we love a responsible queen 🌈
  • int globus_fifo_empty (const globus_fifo_t *fifo) β€” is it empty or not, the vibe check 🧚
  • int globus_fifo_size (const globus_fifo_t *fifo) β€” how many things are in there πŸ”₯
  • int globus_fifo_enqueue (globus_fifo_t *fifo, void *datum) β€” adds a datum to the fifo, join the line bestie πŸ“
  • globus_fifo_t * globus_fifo_copy (const globus_fifo_t *fifo) β€” makes a whole copy of the fifo, twin behavior πŸ’œ
  • void * globus_fifo_peek (globus_fifo_t *fifo) β€” sneaky little look at the front, no removal, just observing πŸ‘€
  • void * globus_fifo_tail_peek (globus_fifo_t *fifo) β€” same vibe but from the tail end πŸ™ˆ
  • void * globus_fifo_remove (globus_fifo_t *headp, void *datum) β€” removes a datum, taking that headp too 😭
  • void * globus_fifo_dequeue (globus_fifo_t *fifo) β€” pops the front one off and hands it to you, iconic behavior ✨
  • int globus_fifo_move (globus_fifo_t *fifo_dest, globus_fifo_t *fifo_src) β€” moves everything from fifo_src into fifo_dest, we are relocating 🌸
  • globus_list_t * globus_fifo_convert_to_list (globus_fifo_t *fifo) β€” turns your fifo into a globus_list_t *, a full glow-up transformation πŸ’…

πŸ‘‘ Detailed Description πŸ‘‘

Globus FIFO.

This file defines the globus_fifo_t type useful for queuing arbitrary data (via void-pointer) πŸŽ€

ngl, "arbitrary data via void-pointer" is the whole point β€” you can shove literally any pointer in there, it does not care, it does not judge, it just queues 🫢

πŸ’– Author πŸ’–

Generated automatically by Doxygen for globus_common from the source code. (not a human author, just a robot doing its little thing πŸ€–βœ¨)


and that's the whole page bestie, no cap, every flag, type, and function accounted for πŸ’œ

sending you off with the footer tea: this is from globus_common, Version 18.15 πŸŽ€ mwah, go queue something πŸ’