158ec469eSopenharmony_ci/* 258ec469eSopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd. 358ec469eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 458ec469eSopenharmony_ci * you may not use this file except in compliance with the License. 558ec469eSopenharmony_ci * You may obtain a copy of the License at 658ec469eSopenharmony_ci * 758ec469eSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 858ec469eSopenharmony_ci * 958ec469eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1058ec469eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1158ec469eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1258ec469eSopenharmony_ci * See the License for the specific language governing permissions and 1358ec469eSopenharmony_ci * limitations under the License. 1458ec469eSopenharmony_ci */ 1558ec469eSopenharmony_ci 1658ec469eSopenharmony_ci/** 1758ec469eSopenharmony_ci * @file light_agent.h 1858ec469eSopenharmony_ci * 1958ec469eSopenharmony_ci * @brief Declares the functions for starting or stopping a light. 2058ec469eSopenharmony_ci * @since 10 2158ec469eSopenharmony_ci */ 2258ec469eSopenharmony_ci 2358ec469eSopenharmony_ci#ifndef LIGHT_AGENT_H 2458ec469eSopenharmony_ci#define LIGHT_AGENT_H 2558ec469eSopenharmony_ci 2658ec469eSopenharmony_ci#include "light_agent_type.h" 2758ec469eSopenharmony_ci 2858ec469eSopenharmony_ci#ifdef __cplusplus 2958ec469eSopenharmony_ciextern "C" { 3058ec469eSopenharmony_ci#endif 3158ec469eSopenharmony_ci 3258ec469eSopenharmony_cinamespace OHOS { 3358ec469eSopenharmony_cinamespace Sensors { 3458ec469eSopenharmony_ci/** 3558ec469eSopenharmony_ci * @brief Obtains information about all the lights in the system. 3658ec469eSopenharmony_ci * 3758ec469eSopenharmony_ci * @param lightInfo Indicates the list of the light information. 3858ec469eSopenharmony_ci * @param count Indicates the count of all the lights in the system. 3958ec469eSopenharmony_ci * @return Returns <b>0</b> if the operation is successful. 4058ec469eSopenharmony_ci * @return Returns a negative value if the operation fails. 4158ec469eSopenharmony_ci * @since 10 4258ec469eSopenharmony_ci */ 4358ec469eSopenharmony_ciint32_t GetLightList(LightInfo **lightInfo, int32_t &count); 4458ec469eSopenharmony_ci 4558ec469eSopenharmony_ci/** 4658ec469eSopenharmony_ci * @brief Turns on available lights in the list based on the specified light id. 4758ec469eSopenharmony_ci * 4858ec469eSopenharmony_ci * @param lightId Indicates the light id. 4958ec469eSopenharmony_ci * @param color:Color corresponding to the light. 5058ec469eSopenharmony_ci * @param animation Indicates the blinking parameters. 5158ec469eSopenharmony_ci * @return Returns <b>0</b> if the operation is successful. 5258ec469eSopenharmony_ci * @return Returns a negative value if the operation fails. 5358ec469eSopenharmony_ci * @since 10 5458ec469eSopenharmony_ci */ 5558ec469eSopenharmony_ciint32_t TurnOn(int32_t lightId, const LightColor &color, const LightAnimation &animation); 5658ec469eSopenharmony_ci 5758ec469eSopenharmony_ci/** 5858ec469eSopenharmony_ci * @brief Turns off available lights in the list based on the specified light id. 5958ec469eSopenharmony_ci * 6058ec469eSopenharmony_ci * @param lightId Indicates the light id. 6158ec469eSopenharmony_ci * @return Returns <b>0</b> if the operation is successful. 6258ec469eSopenharmony_ci * @return Returns a negative value if the operation fails. 6358ec469eSopenharmony_ci * @since 10 6458ec469eSopenharmony_ci */ 6558ec469eSopenharmony_ciint32_t TurnOff(int32_t lightId); 6658ec469eSopenharmony_ci} // namespace Sensors 6758ec469eSopenharmony_ci} // namespace OHOS 6858ec469eSopenharmony_ci#ifdef __cplusplus 6958ec469eSopenharmony_ci}; 7058ec469eSopenharmony_ci#endif 7158ec469eSopenharmony_ci/** @} */ 7258ec469eSopenharmony_ci#endif // endif LIGHT_AGENT_H 73