Gomb#
Bevezetés#
A button osztály a brain alaposztályból származik, és hozzáférést biztosít az EXP Brain gombjaihoz, lehetővé téve a robot számára, hogy érzékelje a gombjainak lenyomását és elengedését.
Hozzáférés#
A button osztály három gomb objektumot biztosít. Minden objektum a button osztály egy példánya, és egy agypéldányon keresztül érhető el.
Objektum |
Példahasználat |
Leírás |
|---|---|---|
|
|
Ellenőrzés gomb |
|
|
Bal gomb |
|
|
Jobb gomb |
Tagfüggvények#
A button osztály a következő tagfüggvényeket tartalmazza:
pressing— Visszaadja, hogy a megadott gomb megnyomás alatt van-e.pressed— Regisztrál egy függvényt, amely a megadott gomb megnyomásakor hívódik meg.released— Regisztrál egy függvényt, amely a megadott gomb elengedésekor hívódik meg.
Bármely button tagfüggvény meghívása előtt létre kell hozni egy brain példányt, az alábbiak szerint:
// Create the EXP Brain
brain Brain = brain();
pressing#
Visszaadja, hogy egy adott agygombot jelenleg lenyomva tartunk-e.
Available Functionsbool pressing() const;
Ez a függvény nem fogad el paramétereket.
Return ValuesEgy logikai értéket ad vissza, amely jelzi, hogy a megadott gomb megnyomásra kerül-e:
true— A gombot megnyomják.false— A gombot nem nyomják meg.
Ez a függvény bármely gomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while the check button is pressed
while (true) {
if (Brain.buttonCheck.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}
pressed#
Egy visszahívó függvényt regisztrál, amely egy adott agygomb megnyomásakor fut le.
Available Functionsvoid pressed(
void (* callback)(void) ) const;
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely akkor hívódik meg, amikor a megadott gombot megnyomják. |
Ez a függvény nem ad vissza értéket.
ExamplesEz a függvény bármely agygomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiáljuk a visszahívó függvényt (
int main())// Drive forward when the right button is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Regisztrálja a visszahívást a
int main()függvényen belül.int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call driveForward when the right button is pressed Brain.buttonRight.pressed(driveForward); }
released#
Egy visszahívó függvényt regisztrál, amely egy adott agygomb elengedésekor fut le.
Available Functionsvoid released(
void (* callback)(void) ) const;
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely akkor hívódik meg, amikor a megadott gombot elengedjük. |
Ez a függvény nem ad vissza értéket.
ExamplesEz a függvény bármely agygomb objektumon meghívható, például:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Definiáljuk a visszahívó függvényt (
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Regisztrálja a visszahívást a
int main()függvényen belül.int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call backUp when the left button is released Brain.buttonLeft.released(backUp); }