| /* | 
 |  * | 
 |  *    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.h.zapt | 
 |  | 
 | #pragma once | 
 |  | 
 | #include <clusters/shared/Enums.h> | 
 | #include <cstdint> | 
 |  | 
 | namespace chip { | 
 | namespace app { | 
 | namespace Clusters { | 
 | namespace PowerSource { | 
 |  | 
 | // Enum for BatApprovedChemistryEnum | 
 | enum class BatApprovedChemistryEnum : uint16_t | 
 | { | 
 |     kUnspecified             = 0x00, | 
 |     kAlkaline                = 0x01, | 
 |     kLithiumCarbonFluoride   = 0x02, | 
 |     kLithiumChromiumOxide    = 0x03, | 
 |     kLithiumCopperOxide      = 0x04, | 
 |     kLithiumIronDisulfide    = 0x05, | 
 |     kLithiumManganeseDioxide = 0x06, | 
 |     kLithiumThionylChloride  = 0x07, | 
 |     kMagnesium               = 0x08, | 
 |     kMercuryOxide            = 0x09, | 
 |     kNickelOxyhydride        = 0x0A, | 
 |     kSilverOxide             = 0x0B, | 
 |     kZincAir                 = 0x0C, | 
 |     kZincCarbon              = 0x0D, | 
 |     kZincChloride            = 0x0E, | 
 |     kZincManganeseDioxide    = 0x0F, | 
 |     kLeadAcid                = 0x10, | 
 |     kLithiumCobaltOxide      = 0x11, | 
 |     kLithiumIon              = 0x12, | 
 |     kLithiumIonPolymer       = 0x13, | 
 |     kLithiumIronPhosphate    = 0x14, | 
 |     kLithiumSulfur           = 0x15, | 
 |     kLithiumTitanate         = 0x16, | 
 |     kNickelCadmium           = 0x17, | 
 |     kNickelHydrogen          = 0x18, | 
 |     kNickelIron              = 0x19, | 
 |     kNickelMetalHydride      = 0x1A, | 
 |     kNickelZinc              = 0x1B, | 
 |     kSilverZinc              = 0x1C, | 
 |     kSodiumIon               = 0x1D, | 
 |     kSodiumSulfur            = 0x1E, | 
 |     kZincBromide             = 0x1F, | 
 |     kZincCerium              = 0x20, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 33, | 
 | }; | 
 |  | 
 | // Enum for BatChargeFaultEnum | 
 | enum class BatChargeFaultEnum : uint8_t | 
 | { | 
 |     kUnspecified         = 0x00, | 
 |     kAmbientTooHot       = 0x01, | 
 |     kAmbientTooCold      = 0x02, | 
 |     kBatteryTooHot       = 0x03, | 
 |     kBatteryTooCold      = 0x04, | 
 |     kBatteryAbsent       = 0x05, | 
 |     kBatteryOverVoltage  = 0x06, | 
 |     kBatteryUnderVoltage = 0x07, | 
 |     kChargerOverVoltage  = 0x08, | 
 |     kChargerUnderVoltage = 0x09, | 
 |     kSafetyTimeout       = 0x0A, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 11, | 
 | }; | 
 |  | 
 | // Enum for BatChargeLevelEnum | 
 | enum class BatChargeLevelEnum : uint8_t | 
 | { | 
 |     kOk       = 0x00, | 
 |     kWarning  = 0x01, | 
 |     kCritical = 0x02, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 3, | 
 | }; | 
 |  | 
 | // Enum for BatChargeStateEnum | 
 | enum class BatChargeStateEnum : uint8_t | 
 | { | 
 |     kUnknown        = 0x00, | 
 |     kIsCharging     = 0x01, | 
 |     kIsAtFullCharge = 0x02, | 
 |     kIsNotCharging  = 0x03, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 4, | 
 | }; | 
 |  | 
 | // Enum for BatCommonDesignationEnum | 
 | enum class BatCommonDesignationEnum : uint16_t | 
 | { | 
 |     kUnspecified = 0x00, | 
 |     kAaa         = 0x01, | 
 |     kAa          = 0x02, | 
 |     kC           = 0x03, | 
 |     kD           = 0x04, | 
 |     k4v5         = 0x05, | 
 |     k6v0         = 0x06, | 
 |     k9v0         = 0x07, | 
 |     k12aa        = 0x08, | 
 |     kAaaa        = 0x09, | 
 |     kA           = 0x0A, | 
 |     kB           = 0x0B, | 
 |     kF           = 0x0C, | 
 |     kN           = 0x0D, | 
 |     kNo6         = 0x0E, | 
 |     kSubC        = 0x0F, | 
 |     kA23         = 0x10, | 
 |     kA27         = 0x11, | 
 |     kBa5800      = 0x12, | 
 |     kDuplex      = 0x13, | 
 |     k4sr44       = 0x14, | 
 |     k523         = 0x15, | 
 |     k531         = 0x16, | 
 |     k15v0        = 0x17, | 
 |     k22v5        = 0x18, | 
 |     k30v0        = 0x19, | 
 |     k45v0        = 0x1A, | 
 |     k67v5        = 0x1B, | 
 |     kJ           = 0x1C, | 
 |     kCr123a      = 0x1D, | 
 |     kCr2         = 0x1E, | 
 |     k2cr5        = 0x1F, | 
 |     kCrP2        = 0x20, | 
 |     kCrV3        = 0x21, | 
 |     kSr41        = 0x22, | 
 |     kSr43        = 0x23, | 
 |     kSr44        = 0x24, | 
 |     kSr45        = 0x25, | 
 |     kSr48        = 0x26, | 
 |     kSr54        = 0x27, | 
 |     kSr55        = 0x28, | 
 |     kSr57        = 0x29, | 
 |     kSr58        = 0x2A, | 
 |     kSr59        = 0x2B, | 
 |     kSr60        = 0x2C, | 
 |     kSr63        = 0x2D, | 
 |     kSr64        = 0x2E, | 
 |     kSr65        = 0x2F, | 
 |     kSr66        = 0x30, | 
 |     kSr67        = 0x31, | 
 |     kSr68        = 0x32, | 
 |     kSr69        = 0x33, | 
 |     kSr516       = 0x34, | 
 |     kSr731       = 0x35, | 
 |     kSr712       = 0x36, | 
 |     kLr932       = 0x37, | 
 |     kA5          = 0x38, | 
 |     kA10         = 0x39, | 
 |     kA13         = 0x3A, | 
 |     kA312        = 0x3B, | 
 |     kA675        = 0x3C, | 
 |     kAc41e       = 0x3D, | 
 |     k10180       = 0x3E, | 
 |     k10280       = 0x3F, | 
 |     k10440       = 0x40, | 
 |     k14250       = 0x41, | 
 |     k14430       = 0x42, | 
 |     k14500       = 0x43, | 
 |     k14650       = 0x44, | 
 |     k15270       = 0x45, | 
 |     k16340       = 0x46, | 
 |     kRcr123a     = 0x47, | 
 |     k17500       = 0x48, | 
 |     k17670       = 0x49, | 
 |     k18350       = 0x4A, | 
 |     k18500       = 0x4B, | 
 |     k18650       = 0x4C, | 
 |     k19670       = 0x4D, | 
 |     k25500       = 0x4E, | 
 |     k26650       = 0x4F, | 
 |     k32600       = 0x50, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 81, | 
 | }; | 
 |  | 
 | // Enum for BatFaultEnum | 
 | enum class BatFaultEnum : uint8_t | 
 | { | 
 |     kUnspecified = 0x00, | 
 |     kOverTemp    = 0x01, | 
 |     kUnderTemp   = 0x02, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 3, | 
 | }; | 
 |  | 
 | // Enum for BatReplaceabilityEnum | 
 | enum class BatReplaceabilityEnum : uint8_t | 
 | { | 
 |     kUnspecified        = 0x00, | 
 |     kNotReplaceable     = 0x01, | 
 |     kUserReplaceable    = 0x02, | 
 |     kFactoryReplaceable = 0x03, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 4, | 
 | }; | 
 |  | 
 | // Enum for PowerSourceStatusEnum | 
 | enum class PowerSourceStatusEnum : uint8_t | 
 | { | 
 |     kUnspecified = 0x00, | 
 |     kActive      = 0x01, | 
 |     kStandby     = 0x02, | 
 |     kUnavailable = 0x03, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 4, | 
 | }; | 
 |  | 
 | // Enum for WiredCurrentTypeEnum | 
 | enum class WiredCurrentTypeEnum : uint8_t | 
 | { | 
 |     kAc = 0x00, | 
 |     kDc = 0x01, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 2, | 
 | }; | 
 |  | 
 | // Enum for WiredFaultEnum | 
 | enum class WiredFaultEnum : uint8_t | 
 | { | 
 |     kUnspecified  = 0x00, | 
 |     kOverVoltage  = 0x01, | 
 |     kUnderVoltage = 0x02, | 
 |     // All received enum values that are not listed above will be mapped | 
 |     // to kUnknownEnumValue. This is a helper enum value that should only | 
 |     // be used by code to process how it handles receiving and unknown | 
 |     // enum value. This specific should never be transmitted. | 
 |     kUnknownEnumValue = 3, | 
 | }; | 
 |  | 
 | // Bitmap for Feature | 
 | enum class Feature : uint32_t | 
 | { | 
 |     kWired        = 0x1, | 
 |     kBattery      = 0x2, | 
 |     kRechargeable = 0x4, | 
 |     kReplaceable  = 0x8, | 
 | }; | 
 | } // namespace PowerSource | 
 | } // namespace Clusters | 
 | } // namespace app | 
 | } // namespace chip |