Function Reference

This section provides a comprehensive reference of all functions organized by module.

Main Application Functions

Warning

doxygenfunction: Cannot find function “main” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “demonstrate_regular_queue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “demonstrate_circular_queue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “demonstrate_priority_queue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “demonstrate_linked_list” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Initialization Functions

Functions for initializing data structures:

Warning

doxygenfunction: Cannot find function “queue_init” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_init” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_init” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “ll_init” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Enqueue/Insert Functions

Functions for adding elements to data structures:

Warning

doxygenfunction: Cannot find function “queue_enqueue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_enqueue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_enqueue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “ll_insert_at_head” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “ll_insert_at_tail” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Dequeue/Remove Functions

Functions for removing elements from data structures:

Warning

doxygenfunction: Cannot find function “queue_dequeue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_dequeue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_dequeue” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “ll_delete_at_head” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “ll_delete_at_tail” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Peek Functions

Functions for examining elements without removing them:

Warning

doxygenfunction: Cannot find function “queue_peek” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_peek” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_peek” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

State Query Functions

Functions for checking the state of data structures:

Warning

doxygenfunction: Cannot find function “queue_is_empty” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “queue_is_full” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “queue_size” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_is_empty” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_is_full” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “circular_queue_size” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_is_empty” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_is_full” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Warning

doxygenfunction: Cannot find function “priority_queue_size” in doxygen xml output for project “STM32DevOpsTemplate” from directory: ./doxygen/xml

Function Categories

Initialization Functions

Functions that initialize data structures to a valid initial state.

Insertion Functions

Functions that add new elements to data structures.

Removal Functions

Functions that remove elements from data structures.

Query Functions

Functions that retrieve information about data structures without modifying them.

State Functions

Functions that check the current state (empty, full, size) of data structures.

Error Handling

All functions follow consistent error handling patterns:

  • Return SUCCESS (0) for successful operations

  • Return FAILURE (-1) for failed operations

  • Validate input parameters (NULL pointer checks)

  • Check preconditions (empty/full state) before operations

Common Error Conditions:

  • NULL pointer parameters

  • Operations on full data structures (enqueue/insert)

  • Operations on empty data structures (dequeue/remove/peek)

  • Invalid state transitions