| /* |
| * |
| * Copyright (c) 2022 Project CHIP Authors |
| * |
| * 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. |
| */ |
| |
| // THIS FILE IS GENERATED BY ZAP |
| // This file is generated from clusters-Enums-Check.h.zapt |
| |
| #pragma once |
| |
| #include <clusters/PowerSource/Enums.h> |
| |
| namespace chip { |
| namespace app { |
| namespace Clusters { |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatApprovedChemistryEnum val) |
| { |
| using EnumType = PowerSource::BatApprovedChemistryEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kAlkaline: |
| case EnumType::kLithiumCarbonFluoride: |
| case EnumType::kLithiumChromiumOxide: |
| case EnumType::kLithiumCopperOxide: |
| case EnumType::kLithiumIronDisulfide: |
| case EnumType::kLithiumManganeseDioxide: |
| case EnumType::kLithiumThionylChloride: |
| case EnumType::kMagnesium: |
| case EnumType::kMercuryOxide: |
| case EnumType::kNickelOxyhydride: |
| case EnumType::kSilverOxide: |
| case EnumType::kZincAir: |
| case EnumType::kZincCarbon: |
| case EnumType::kZincChloride: |
| case EnumType::kZincManganeseDioxide: |
| case EnumType::kLeadAcid: |
| case EnumType::kLithiumCobaltOxide: |
| case EnumType::kLithiumIon: |
| case EnumType::kLithiumIonPolymer: |
| case EnumType::kLithiumIronPhosphate: |
| case EnumType::kLithiumSulfur: |
| case EnumType::kLithiumTitanate: |
| case EnumType::kNickelCadmium: |
| case EnumType::kNickelHydrogen: |
| case EnumType::kNickelIron: |
| case EnumType::kNickelMetalHydride: |
| case EnumType::kNickelZinc: |
| case EnumType::kSilverZinc: |
| case EnumType::kSodiumIon: |
| case EnumType::kSodiumSulfur: |
| case EnumType::kZincBromide: |
| case EnumType::kZincCerium: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatChargeFaultEnum val) |
| { |
| using EnumType = PowerSource::BatChargeFaultEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kAmbientTooHot: |
| case EnumType::kAmbientTooCold: |
| case EnumType::kBatteryTooHot: |
| case EnumType::kBatteryTooCold: |
| case EnumType::kBatteryAbsent: |
| case EnumType::kBatteryOverVoltage: |
| case EnumType::kBatteryUnderVoltage: |
| case EnumType::kChargerOverVoltage: |
| case EnumType::kChargerUnderVoltage: |
| case EnumType::kSafetyTimeout: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatChargeLevelEnum val) |
| { |
| using EnumType = PowerSource::BatChargeLevelEnum; |
| switch (val) |
| { |
| case EnumType::kOk: |
| case EnumType::kWarning: |
| case EnumType::kCritical: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatChargeStateEnum val) |
| { |
| using EnumType = PowerSource::BatChargeStateEnum; |
| switch (val) |
| { |
| case EnumType::kUnknown: |
| case EnumType::kIsCharging: |
| case EnumType::kIsAtFullCharge: |
| case EnumType::kIsNotCharging: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatCommonDesignationEnum val) |
| { |
| using EnumType = PowerSource::BatCommonDesignationEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kAaa: |
| case EnumType::kAa: |
| case EnumType::kC: |
| case EnumType::kD: |
| case EnumType::k4v5: |
| case EnumType::k6v0: |
| case EnumType::k9v0: |
| case EnumType::k12aa: |
| case EnumType::kAaaa: |
| case EnumType::kA: |
| case EnumType::kB: |
| case EnumType::kF: |
| case EnumType::kN: |
| case EnumType::kNo6: |
| case EnumType::kSubC: |
| case EnumType::kA23: |
| case EnumType::kA27: |
| case EnumType::kBa5800: |
| case EnumType::kDuplex: |
| case EnumType::k4sr44: |
| case EnumType::k523: |
| case EnumType::k531: |
| case EnumType::k15v0: |
| case EnumType::k22v5: |
| case EnumType::k30v0: |
| case EnumType::k45v0: |
| case EnumType::k67v5: |
| case EnumType::kJ: |
| case EnumType::kCr123a: |
| case EnumType::kCr2: |
| case EnumType::k2cr5: |
| case EnumType::kCrP2: |
| case EnumType::kCrV3: |
| case EnumType::kSr41: |
| case EnumType::kSr43: |
| case EnumType::kSr44: |
| case EnumType::kSr45: |
| case EnumType::kSr48: |
| case EnumType::kSr54: |
| case EnumType::kSr55: |
| case EnumType::kSr57: |
| case EnumType::kSr58: |
| case EnumType::kSr59: |
| case EnumType::kSr60: |
| case EnumType::kSr63: |
| case EnumType::kSr64: |
| case EnumType::kSr65: |
| case EnumType::kSr66: |
| case EnumType::kSr67: |
| case EnumType::kSr68: |
| case EnumType::kSr69: |
| case EnumType::kSr516: |
| case EnumType::kSr731: |
| case EnumType::kSr712: |
| case EnumType::kLr932: |
| case EnumType::kA5: |
| case EnumType::kA10: |
| case EnumType::kA13: |
| case EnumType::kA312: |
| case EnumType::kA675: |
| case EnumType::kAc41e: |
| case EnumType::k10180: |
| case EnumType::k10280: |
| case EnumType::k10440: |
| case EnumType::k14250: |
| case EnumType::k14430: |
| case EnumType::k14500: |
| case EnumType::k14650: |
| case EnumType::k15270: |
| case EnumType::k16340: |
| case EnumType::kRcr123a: |
| case EnumType::k17500: |
| case EnumType::k17670: |
| case EnumType::k18350: |
| case EnumType::k18500: |
| case EnumType::k18650: |
| case EnumType::k19670: |
| case EnumType::k25500: |
| case EnumType::k26650: |
| case EnumType::k32600: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatFaultEnum val) |
| { |
| using EnumType = PowerSource::BatFaultEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kOverTemp: |
| case EnumType::kUnderTemp: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::BatReplaceabilityEnum val) |
| { |
| using EnumType = PowerSource::BatReplaceabilityEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kNotReplaceable: |
| case EnumType::kUserReplaceable: |
| case EnumType::kFactoryReplaceable: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::PowerSourceStatusEnum val) |
| { |
| using EnumType = PowerSource::PowerSourceStatusEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kActive: |
| case EnumType::kStandby: |
| case EnumType::kUnavailable: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::WiredCurrentTypeEnum val) |
| { |
| using EnumType = PowerSource::WiredCurrentTypeEnum; |
| switch (val) |
| { |
| case EnumType::kAc: |
| case EnumType::kDc: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| static auto __attribute__((unused)) EnsureKnownEnumValue(PowerSource::WiredFaultEnum val) |
| { |
| using EnumType = PowerSource::WiredFaultEnum; |
| switch (val) |
| { |
| case EnumType::kUnspecified: |
| case EnumType::kOverVoltage: |
| case EnumType::kUnderVoltage: |
| return val; |
| default: |
| return EnumType::kUnknownEnumValue; |
| } |
| } |
| } // namespace Clusters |
| } // namespace app |
| } // namespace chip |