/* * Copyright (c) 2022 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef SENSOR_INFO_CONFIG_H #define SENSOR_INFO_CONFIG_H #include #include #include namespace OHOS { namespace HDI { namespace Thermal { namespace V1_1 { struct XMLThermalZoneInfo { std::string type; std::string replace; bool isReplace = false; bool operator == (const std::string &sensorType) { return (this->type == sensorType); } }; struct XMLThermalNodeInfo { std::string type; std::string path; bool operator == (const std::string &sensorType) { return (this->type == sensorType); } }; struct ReportedThermalData { std::string type; std::string tempPath; }; class SensorInfoConfig { public: SensorInfoConfig() = default; ~SensorInfoConfig() = default; void SetXMLThermalZoneInfo(std::vector &vXmlTz); void SetXMLThermalNodeInfo(std::vector &vXmlTn); void SetGroupName(const std::string &groupName); void SetGroupInterval(int32_t interval); std::vector GetXMLThermalZoneInfo(); std::vector GetXMLThermalNodeInfo(); int32_t GetInterval(); std::string GetGroupName(); int32_t multiple_; std::list thermalDataList_; private: std::string groupName_; std::int32_t interval_; std::vector xmlTzInfoList_; std::vector xmlTnInfoList_; }; } // V1_1 } // Thermal } // HDI } // OHOS #endif