#include "device/gamepad/gamepad_id_list.h"
#include <algorithm>
#include <iterator>
#include "base/containers/fixed_flat_map.h"
#include "base/containers/fixed_flat_set.h"
namespace device {
namespace {
static base::LazyInstance<GamepadIdList>::Leaky g_singleton = …;
constexpr auto kGamepadInfo = …;
}
GamepadIdList& GamepadIdList::Get() { … }
XInputType GamepadIdList::GetXInputType(uint16_t vendor_id,
uint16_t product_id) const { … }
GamepadId GamepadIdList::GetGamepadId(std::string_view product_name,
uint16_t vendor_id,
uint16_t product_id) const { … }
std::pair<uint16_t, uint16_t> GamepadIdList::GetDeviceIdsFromGamepadId(
GamepadId gamepad_id) const { … }
bool GamepadIdList::HasTriggerRumbleSupport(GamepadId gamepad_id) const { … }
std::vector<std::tuple<uint16_t, uint16_t, XInputType>>
GamepadIdList::GetGamepadListForTesting() const { … }
}