/// Identifies axes in a virtual controller
#[derive(Clone, Copy, Debug, PartialEq, Hash, Eq)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
pub enum AxisId {
    X,
    Y,
    Z,
    RX,
    RY,
    RZ,
    Pitch,
    Roll,
    Throttle,
}

/// Identifies buttons in a virtual controller
#[derive(Clone, Copy, Debug, PartialEq, Hash, Eq)]
#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
pub enum ButtonId {
    Cross,
    Square,
    Circle,
    Triangle,
    L1,
    R1,
    L2,
    R2,
    L3,
    R3,
    #[cfg_attr(feature = "serde", serde(rename = "Option"))]
    Opt,
    Share,
    Mic,
    TouchClick,
    Ps,
}
