blob: 0d4cbb0c962665608dad01d4b0caea56354fb01f [file] [log] [blame]
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -07001/*
Siarhei Vishniakou34d6fef2022-02-01 19:03:45 -08002 * Copyright (C) 2022 The Android Open Source Project
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -07003 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
Siarhei Vishniakou34d6fef2022-02-01 19:03:45 -080017#pragma once
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -070018
Prabir Pradhan9a9897d2024-03-21 21:52:57 +000019#include "InputListener.h"
20
Siarhei Vishniakou34d6fef2022-02-01 19:03:45 -080021#include <aidl/android/hardware/input/common/Axis.h>
22#include <aidl/android/hardware/input/common/MotionEvent.h>
Prabir Pradhan9a9897d2024-03-21 21:52:57 +000023#include <input/Input.h>
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -070024
25namespace android {
26
Prabir Pradhan9a9897d2024-03-21 21:52:57 +000027/** Convert from framework's NotifyMotionArgs to hidl's common::MotionEvent. */
Siarhei Vishniakou34d6fef2022-02-01 19:03:45 -080028::aidl::android::hardware::input::common::MotionEvent notifyMotionArgsToHalMotionEvent(
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -070029 const NotifyMotionArgs& args);
30
Prabir Pradhan9a9897d2024-03-21 21:52:57 +000031/** Convert from NotifyMotionArgs to MotionEvent. */
32MotionEvent toMotionEvent(const NotifyMotionArgs&, const ui::Transform* transform = nullptr,
33 const ui::Transform* rawTransform = nullptr,
34 const std::array<uint8_t, 32>* hmac = nullptr);
35
36/** Convert from NotifyKeyArgs to KeyEvent. */
37KeyEvent toKeyEvent(const NotifyKeyArgs&, int32_t repeatCount = 0,
38 const std::array<uint8_t, 32>* hmac = nullptr);
39
Siarhei Vishniakoua47a4d42019-05-06 17:14:11 -070040} // namespace android