1a339c2d4Sopenharmony_ci/* 2a339c2d4Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd. 3a339c2d4Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4a339c2d4Sopenharmony_ci * you may not use this file except in compliance with the License. 5a339c2d4Sopenharmony_ci * You may obtain a copy of the License at 6a339c2d4Sopenharmony_ci * 7a339c2d4Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8a339c2d4Sopenharmony_ci * 9a339c2d4Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10a339c2d4Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11a339c2d4Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12a339c2d4Sopenharmony_ci * See the License for the specific language governing permissions and 13a339c2d4Sopenharmony_ci * limitations under the License. 14a339c2d4Sopenharmony_ci */ 15a339c2d4Sopenharmony_ci 16a339c2d4Sopenharmony_ci/** 17a339c2d4Sopenharmony_ci * @file i_inputer_data.h 18a339c2d4Sopenharmony_ci * 19a339c2d4Sopenharmony_ci * @brief The definition of pinAuth's inputer data. 20a339c2d4Sopenharmony_ci * @since 3.1 21a339c2d4Sopenharmony_ci * @version 3.2 22a339c2d4Sopenharmony_ci */ 23a339c2d4Sopenharmony_ci 24a339c2d4Sopenharmony_ci#ifndef PINAUTH_IINPUTERDATA_H 25a339c2d4Sopenharmony_ci#define PINAUTH_IINPUTERDATA_H 26a339c2d4Sopenharmony_ci 27a339c2d4Sopenharmony_ci#include <memory> 28a339c2d4Sopenharmony_ci#include <vector> 29a339c2d4Sopenharmony_ci#include "nocopyable.h" 30a339c2d4Sopenharmony_ci 31a339c2d4Sopenharmony_cinamespace OHOS { 32a339c2d4Sopenharmony_cinamespace UserIam { 33a339c2d4Sopenharmony_cinamespace PinAuth { 34a339c2d4Sopenharmony_ciclass IInputerData : public NoCopyable { 35a339c2d4Sopenharmony_cipublic: 36a339c2d4Sopenharmony_ci /** 37a339c2d4Sopenharmony_ci * @brief Get IInputerData's instance. 38a339c2d4Sopenharmony_ci * 39a339c2d4Sopenharmony_ci * @return IInputerData's instance. 40a339c2d4Sopenharmony_ci */ 41a339c2d4Sopenharmony_ci IInputerData() = default; 42a339c2d4Sopenharmony_ci 43a339c2d4Sopenharmony_ci /** 44a339c2d4Sopenharmony_ci * @brief Deconstructor. 45a339c2d4Sopenharmony_ci */ 46a339c2d4Sopenharmony_ci ~IInputerData() override = default; 47a339c2d4Sopenharmony_ci 48a339c2d4Sopenharmony_ci /** 49a339c2d4Sopenharmony_ci * @brief Transfers the pin data from the pin input dialog box to the pin auth service ability. 50a339c2d4Sopenharmony_ci * 51a339c2d4Sopenharmony_ci * @param authSubType PinAuth sub type. 52a339c2d4Sopenharmony_ci * @param data Pin data. 53a339c2d4Sopenharmony_ci */ 54a339c2d4Sopenharmony_ci virtual void OnSetData(int32_t authSubType, std::vector<uint8_t> data) = 0 ; 55a339c2d4Sopenharmony_ci}; 56a339c2d4Sopenharmony_ci} // namespace PinAuth 57a339c2d4Sopenharmony_ci} // namespace UserIam 58a339c2d4Sopenharmony_ci} // namespace OHOS 59a339c2d4Sopenharmony_ci 60a339c2d4Sopenharmony_ci#endif // PINAUTH_IINPUTERDATA_H 61