blob: 8171275c22128d6f5107398798ce2f5935973d45 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "device/gamepad/gamepad_haptics_manager.h"
#include <utility>
#include "base/memory/ptr_util.h"
#include "device/gamepad/gamepad_service.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
namespace device {
GamepadHapticsManager::GamepadHapticsManager() = default;
GamepadHapticsManager::~GamepadHapticsManager() = default;
// static
void GamepadHapticsManager::Create(
mojom::GamepadHapticsManagerRequest request) {
mojo::MakeStrongBinding(std::make_unique<GamepadHapticsManager>(),
std::move(request));
}
void GamepadHapticsManager::PlayVibrationEffectOnce(
uint32_t pad_index,
mojom::GamepadHapticEffectType type,
mojom::GamepadEffectParametersPtr params,
PlayVibrationEffectOnceCallback callback) {
GamepadService::GetInstance()->PlayVibrationEffectOnce(
pad_index, type, std::move(params), std::move(callback));
}
void GamepadHapticsManager::ResetVibrationActuator(
uint32_t pad_index,
ResetVibrationActuatorCallback callback) {
GamepadService::GetInstance()->ResetVibrationActuator(pad_index,
std::move(callback));
}
} // namespace device