libgui 3.00
libgui is a GUI library for the GameCube, Wii, and Wii U
 
Loading...
Searching...
No Matches
WiiInputDriver.h
1/****************************************************************************
2 * Platform Abstraction Layer (Wii driver)
3 * Daryl Borth 2026
4 * WiiInputDriver.h
5 *
6 * The Wii's input: everything on a GameCube (OgcInputDriver) plus the
7 * Wiimote and its extensions, the Wii U GamePad (as a Wii U's vWii/Wii VC
8 * sees it), and the console's power/reset buttons.
9 ***************************************************************************/
10#pragma once
11
12#include "../OgcInputDriver.h"
13
18class WiiInputDriver : public OgcInputDriver
19{
20 public:
21 ~WiiInputDriver() override;
22
23 protected:
24 void initHardware() override;
25 void scanHardware() override;
26 void readChannel(int channel, InputPadData & pad) override;
27 bool isSystemRumbleAllowed() const override;
28 void driveRumble(int channel, bool on) override;
29
30 private:
31 void readWiimote(int channel, InputPadData & pad);
32 void readGamePad(InputPadData & pad);
33
34};
Wii InputDriver: a GameCube's PAD input (OgcInputDriver) plus WPAD (Wiimote, Nunchuk,...
void driveRumble(int channel, bool on) override
Drives the rumble motor of any controller other than the GameCube pad on channel; called every frame ...
void readChannel(int channel, InputPadData &pad) override
Called once per channel per frame: add the extra hardware's state for channel to pad (each device in ...
void scanHardware() override
Called once per frame before the channels are read: poll the extra hardware.
void initHardware() override
Extension points for a console with more input hardware than GameCube pads.
bool isSystemRumbleAllowed() const override
False if the console's own settings disable controller rumble.
The universal input payload for UI elements.
Definition InputData.h:57