Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/0x1abin/MultiButton
/ functions
Functions
83 in github.com/0x1abin/MultiButton
⨍
Functions
83
◇
Types & classes
1
↓ 34 callers
Function
button_attach
* @brief Attach the button event callback function * @param handle: the button handle struct * @param event: trigger event type * @param cb:
multi_button.c:48
↓ 34 callers
Function
tick_n
---- Helper: advance N ticks ---- */
tests/test_button.c:41
↓ 21 callers
Function
has_event
tests/test_button.c:63
↓ 13 callers
Function
setup_button
tests/test_button.c:83
↓ 13 callers
Function
teardown_button
tests/test_button.c:98
↓ 11 callers
Function
button_start
* @brief Start the button work, add the handle into work list * @param handle: target handle struct * @retval 0: succeed, -1: already exist, -2:
multi_button.c:252
↓ 10 callers
Function
button_get_repeat_count
* @brief Get the repeat count of button presses * @param handle: the button handle struct * @retval repeat count */
multi_button.c:83
↓ 9 callers
Function
button_init
* @brief Initialize the button struct handle * @param handle: the button handle struct * @param pin_level: read the HAL GPIO of the connected b
multi_button.c:26
↓ 9 callers
Function
simulate_button_press
Simulate button press
examples/advanced_example.c:146
↓ 8 callers
Function
button_stop
* @brief Stop the button work, remove the handle from work list * @param handle: target handle struct * @retval None */
multi_button.c:277
↓ 7 callers
Function
button_is_pressed
* @brief Check if button is currently pressed * @param handle: the button handle struct * @retval 1: pressed, 0: not pressed, -1: error */
multi_button.c:109
↓ 7 callers
Function
button_ticks
* @brief Background ticks, timer repeat invoking interval 5ms * Callbacks are executed outside the lock so they may safely * call
multi_button.c:304
↓ 7 callers
Function
generic_event_handler
Generic event handler that shows button info
examples/advanced_example.c:43
↓ 5 callers
Function
button_get_event
* @brief Get the button event that happened * @param handle: the button handle struct * @retval button event */
multi_button.c:72
↓ 5 callers
Function
count_event
tests/test_button.c:71
↓ 5 callers
Function
simulate_button_press
Simulate button press for demonstration
examples/basic_example.c:127
↓ 4 callers
Function
button_detach
* @brief Detach the button event callback function * @param handle: the button handle struct * @param event: trigger event type * @retval Non
multi_button.c:61
↓ 4 callers
Function
button_reset
* @brief Reset button state to idle * @param handle: the button handle struct * @retval None */
multi_button.c:94
↓ 4 callers
Function
init_button
Initialize a single button with all event handlers
examples/advanced_example.c:97
↓ 4 callers
Function
reset_event_log
tests/test_button.c:53
↓ 1 callers
Function
button_handler
* @brief Button driver core function, driver state machine * @param handle: the button handle struct * @retval None */
multi_button.c:130
↓ 1 callers
Function
button_init_polling
Initialize button without callbacks (polling mode)
examples/poll_example.c:59
↓ 1 callers
Function
button_read_level
* @brief Read button level with inline optimization * @param handle: the button handle struct * @retval button level */
multi_button.c:120
↓ 1 callers
Function
buttons_init
Initialize all buttons
examples/advanced_example.c:120
↓ 1 callers
Function
buttons_init
Initialize buttons
examples/basic_example.c:100
↓ 1 callers
Function
dynamic_config_demo
Dynamic configuration demo
examples/advanced_example.c:170
↓ 1 callers
Function
poll_and_handle_events
Poll button events and handle them
examples/poll_example.c:73
↓ 1 callers
Function
print_button_status
Print button status
examples/advanced_example.c:238
↓ 1 callers
Function
print_status
Print periodic status
examples/poll_example.c:122
↓ 1 callers
Function
run_demo_sequence
Interactive demo sequence
examples/advanced_example.c:202
Function
btn1_double_click_handler
examples/basic_example.c:50
Function
btn1_long_press_hold_handler
examples/basic_example.c:62
Function
btn1_long_press_start_handler
examples/basic_example.c:56
Function
btn1_press_repeat_handler
examples/basic_example.c:68
Function
btn1_single_click_handler
Callback functions for button 1
examples/basic_example.c:44
Function
btn2_double_click_handler
examples/basic_example.c:81
Function
btn2_press_down_handler
examples/basic_example.c:87
Function
btn2_press_up_handler
examples/basic_example.c:93
Function
btn2_single_click_handler
Callback functions for button 2
examples/basic_example.c:75
Function
cb_check_user_data
tests/test_button.c:415
Function
cb_stop_self
tests/test_button.c:326
Function
log_double_click
tests/test_button.c:58
Function
log_long_hold
tests/test_button.c:60
Function
log_long_start
tests/test_button.c:59
Function
log_press_down
tests/test_button.c:55
Function
log_press_up
tests/test_button.c:56
Function
log_repeat
tests/test_button.c:61
Function
log_single_click
tests/test_button.c:57
Function
main
tests/test_button.c:492
Function
main
Main function
examples/advanced_example.c:252
Function
main
Main function
examples/basic_example.c:158
Function
main
Main function
examples/poll_example.c:137
Function
mock_read_gpio
tests/test_button.c:34
Function
on_config_button_click
Special handler for button configuration
examples/advanced_example.c:65
Function
on_double_click
examples/advanced_example.c:59
Function
on_long_press_hold
examples/advanced_example.c:61
Function
on_long_press_start
examples/advanced_example.c:60
Function
on_press_down
Event handlers
examples/advanced_example.c:56
Function
on_press_repeat
examples/advanced_example.c:62
Function
on_press_up
examples/advanced_example.c:57
Function
on_single_click
examples/advanced_example.c:58
Function
read_button_gpio
Hardware abstraction layer function
examples/advanced_example.c:34
Function
read_button_gpio
Hardware abstraction layer function This simulates reading GPIO states
examples/basic_example.c:31
Function
read_button_gpio
Hardware abstraction layer function
examples/poll_example.c:26
Function
signal_handler
Signal handler for graceful exit
examples/advanced_example.c:25
Function
signal_handler
Signal handler for graceful exit
examples/basic_example.c:21
Function
signal_handler
Signal handler for graceful exit
examples/poll_example.c:17
Function
test_debounce
Test 5: Debounce rejects noise */
tests/test_button.c:199
Function
test_debounce_boundary
Test 15: Boundary - DEBOUNCE_TICKS edge behavior */
tests/test_button.c:449
Function
test_double_click
Test 2: Double click */
tests/test_button.c:131
Function
test_long_press
Test 3: Long press */
tests/test_button.c:155
Function
test_null_handle
Test 9: NULL handle safety */
tests/test_button.c:286
Function
test_rapid_press_release
Test 16: Stress test - rapid alternating press/release */
tests/test_button.c:468
Function
test_repeat_press
Test 4: Repeat press count */
tests/test_button.c:177
Function
test_repeat_to_press_transition
Test 6: REPEAT->PRESS transition resets ticks (bug fix verification) */
tests/test_button.c:219
Function
test_reset
Test 10: button_reset clears state properly */
tests/test_button.c:304
Function
test_single_click
Test 1: Single click */
tests/test_button.c:109
Function
test_start_duplicate
Test 7: button_start duplicate returns -1 */
tests/test_button.c:246
Function
test_stop_and_restart
Test 8: button_stop then restart works cleanly */
tests/test_button.c:256
Function
test_stop_in_callback
tests/test_button.c:333
Function
test_ticks_saturation
Test 12: ticks counter saturation (no overflow) */
tests/test_button.c:363
Function
test_triple_click
Test 13: Triple click via repeat count */
tests/test_button.c:385
Function
test_user_data
tests/test_button.c:422