rpcsx/rpcs3/Emu/Io/turntable_config.h

57 lines
2.2 KiB
C++

#pragma once
#include "emulated_pad_config.h"
#include <array>
enum class turntable_btn
{
red,
green,
blue,
dpad_up,
dpad_down,
dpad_left,
dpad_right,
start,
select,
square,
circle,
cross,
triangle,
right_turntable,
crossfader,
effects_dial,
count
};
struct cfg_turntable final : public emulated_pad_config<turntable_btn>
{
cfg_turntable(node* owner, const std::string& name) : emulated_pad_config(owner, name) {}
cfg_pad_btn<turntable_btn> blue{ this, "Blue", turntable_btn::blue, pad_button::square };
cfg_pad_btn<turntable_btn> green{ this, "Green", turntable_btn::green, pad_button::cross };
cfg_pad_btn<turntable_btn> red{ this, "Red", turntable_btn::red, pad_button::circle };
cfg_pad_btn<turntable_btn> dpad_up{ this, "D-Pad Up", turntable_btn::dpad_up, pad_button::dpad_up };
cfg_pad_btn<turntable_btn> dpad_down{ this, "D-Pad Down", turntable_btn::dpad_down, pad_button::dpad_down };
cfg_pad_btn<turntable_btn> dpad_left{ this, "D-Pad Left", turntable_btn::dpad_left, pad_button::dpad_left };
cfg_pad_btn<turntable_btn> dpad_right{ this, "D-Pad Right", turntable_btn::dpad_right, pad_button::dpad_right };
cfg_pad_btn<turntable_btn> start{ this, "Start", turntable_btn::start, pad_button::start };
cfg_pad_btn<turntable_btn> select{ this, "Select", turntable_btn::select, pad_button::select };
cfg_pad_btn<turntable_btn> square{ this, "Square", turntable_btn::square, pad_button::R2 };
cfg_pad_btn<turntable_btn> circle{ this, "Circle", turntable_btn::circle, pad_button::L1 };
cfg_pad_btn<turntable_btn> cross{ this, "Cross", turntable_btn::cross, pad_button::R1 };
cfg_pad_btn<turntable_btn> triangle{ this, "Triangle", turntable_btn::triangle, pad_button::triangle };
cfg_pad_btn<turntable_btn> right_turntable{ this, "Right Turntable", turntable_btn::right_turntable, pad_button::ls_y };
cfg_pad_btn<turntable_btn> crossfader{ this, "Crossfader", turntable_btn::crossfader, pad_button::rs_y };
cfg_pad_btn<turntable_btn> effects_dial{ this, "Effects Dial", turntable_btn::effects_dial, pad_button::rs_x };
};
struct cfg_turntables final : public emulated_pads_config<cfg_turntable, 2>
{
cfg_turntables() : emulated_pads_config<cfg_turntable, 2>("turntable") {};
};
extern cfg_turntables g_cfg_turntable;