Skip to content

PlatformCapabilities

#include "crosspad/platform/PlatformCapabilities.hpp"

Generated from crosspad/platform/PlatformCapabilities.hpp in crosspad-core. Edit the header’s doxygen comments to change this page.

Platform capability flags — query what the current platform supports.

inline Capability operator|(Capability a, Capability b)

Declared in crosspad/platform/PlatformCapabilities.hpp:44.

inline Capability operator&(Capability a, Capability b)

Declared in crosspad/platform/PlatformCapabilities.hpp:48.

inline Capability operator~(Capability a)

Declared in crosspad/platform/PlatformCapabilities.hpp:52.

inline Capability & operator|=(Capability &a, Capability b)

Declared in crosspad/platform/PlatformCapabilities.hpp:56.

inline Capability & operator&=(Capability &a, Capability b)

Declared in crosspad/platform/PlatformCapabilities.hpp:61.

void setPlatformCapabilities(Capability caps)

Set the platform’s capability flags (call once during init)

Declared in crosspad/platform/PlatformCapabilities.hpp:67.

void addPlatformCapability(Capability cap)

Add capability flag(s) at runtime (e.g., when MIDI connects after init)

Declared in crosspad/platform/PlatformCapabilities.hpp:70.

void removePlatformCapability(Capability cap)

Remove capability flag(s) at runtime (e.g., when a device disconnects)

Declared in crosspad/platform/PlatformCapabilities.hpp:73.

bool hasCapability(Capability cap)

Query whether ALL specified capabilities are present.

Declared in crosspad/platform/PlatformCapabilities.hpp:76.

bool hasAnyCapability(Capability caps)

Query whether ANY of the specified capabilities are present.

Declared in crosspad/platform/PlatformCapabilities.hpp:79.

Capability getPlatformCapabilities()

Get the raw capability flags.

Declared in crosspad/platform/PlatformCapabilities.hpp:82.

Flags describing hardware/software capabilities of the current platform.

Multiple flags can be OR-ed together. Platforms call setPlatformCapabilities() at init time and addPlatformCapability() as devices connect at runtime.

ValueValueDescription
None0
Midi1 << 0MIDI I/O available.
AudioOut1 << 1Audio output available.
AudioIn1 << 2Audio input available.
Synth1 << 3Synth engine available.
Pads1 << 4Pad grid available (physical or emulated)
Leds1 << 5LED strip available.
Encoder1 << 6Rotary encoder available.
Display1 << 7LCD/display available.
Persistence1 << 8Settings persistence (NVS, filesystem, etc.)
Vibration1 << 9Haptic/vibration motor available.
WiFi1 << 10WiFi connectivity.
Bluetooth1 << 11Bluetooth connectivity.
Usb1 << 12USB host/device available.
Imu1 << 13IMU/accelerometer available.
Stm321 << 14STM32 co-processor available.
Sequencer1 << 15Sequencer engine available.
Http1 << 16HTTP client available.

Declared in crosspad/platform/PlatformCapabilities.hpp:22.