Skip to main content
Version: 4.0.0-beta.3

Autonomous Selector

initialize()​

Initializes the autonomous selector. If an SD card is plugged in, the current page will set to what's on the SD card.

void initialize();

limit_switch_lcd_initialize()​

Sets external buttons to increase/decrease the current autonomous page.

The library never takes ownership of the pointers you pass in and will never delete them, but it keeps using them after this call returns, so the switches must stay alive for the whole program. Make them global, not locals inside initialize(). Passing nullptr for both disables the limit switches.

right_limit a button to go forward a page left_limit a button to go backwards a page

void limit_switch_lcd_initialize(pros::adi::DigitalIn* right_limit, pros::adi::DigitalIn* left_limit = nullptr);

shutdown()​

Wrapper for pros::lcd::shutdown() found here.

void shutdown();

autons_add();​

Appends autonomous routines to the autonomous selector's list. Calling this more than once keeps the routines you've already added, and the selector goes back to the first page. Uses ez::screen_print() to display to the brain.

autons accepts an object of a string and a function

void autons_add(std::vector<Auton> autons);

selected_auton_print();​

Prints the current autonomous mode to the screen.

void selected_auton_print();

page_down()​

Decreases the page number. Best used with the lcd callback functions.

void page_down();

page_up()​

Increases the page number. Best used with the lcd callback functions

void page_up();

selected_auton_call()​

Runs the current autonomous that's selected. If the selector is on a blank page instead of an autonomous, it runs the last autonomous page you were on.

void selected_auton_call();

enabled()​

Returns true if the auton selector is enabled and false if it isn't.

bool enabled();

page_blank_is_on()​

Checks if this blank page is open. If this page doesn't exist, this will create it.

page blank page index

bool page_blank_is_on(int page);

page_blank_remove_all()​

Removes all blank pages.

void page_blank_remove_all();

The next page_blank_is_on() call creates its page again, so stop calling it once you have removed the pages (for example, only call it while pros::competition::is_connected() is false, as the Blank Pages tutorial does).