blob: e24e8ea4bb0674fabee0b542f0749cca66969346 [file] [log] [blame]
/*
*
* 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-Attributes.h.zapt
#pragma once
#include <app/ConcreteAttributePath.h>
#include <app/data-model/DecodableList.h>
#include <app/data-model/List.h>
#include <app/data-model/Nullable.h>
#include <app/util/basic-types.h>
#include <lib/core/TLV.h>
#include <lib/support/BitMask.h>
#include <clusters/shared/Attributes.h>
#include <clusters/shared/Enums.h>
#include <clusters/shared/Structs.h>
#include <clusters/CameraAvStreamManagement/AttributeIds.h>
#include <clusters/CameraAvStreamManagement/ClusterId.h>
#include <clusters/CameraAvStreamManagement/Enums.h>
#include <clusters/CameraAvStreamManagement/Structs.h>
namespace chip {
namespace app {
namespace Clusters {
namespace CameraAvStreamManagement {
namespace Attributes {
namespace MaxConcurrentEncoders {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MaxConcurrentEncoders::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MaxConcurrentEncoders
namespace MaxEncodedPixelRate {
struct TypeInfo
{
using Type = uint32_t;
using DecodableType = uint32_t;
using DecodableArgType = uint32_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MaxEncodedPixelRate::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MaxEncodedPixelRate
namespace VideoSensorParams {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::Structs::VideoSensorParamsStruct::Type;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::Structs::VideoSensorParamsStruct::DecodableType;
using DecodableArgType = const chip::app::Clusters::CameraAvStreamManagement::Structs::VideoSensorParamsStruct::DecodableType &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::VideoSensorParams::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace VideoSensorParams
namespace NightVisionUsesInfrared {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::NightVisionUsesInfrared::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace NightVisionUsesInfrared
namespace MinViewport {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::Structs::VideoResolutionStruct::Type;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::Structs::VideoResolutionStruct::DecodableType;
using DecodableArgType = const chip::app::Clusters::CameraAvStreamManagement::Structs::VideoResolutionStruct::DecodableType &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MinViewport::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MinViewport
namespace RateDistortionTradeOffPoints {
struct TypeInfo
{
using Type = chip::app::DataModel::List<
const chip::app::Clusters::CameraAvStreamManagement::Structs::RateDistortionTradeOffPointsStruct::Type>;
using DecodableType = chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::RateDistortionTradeOffPointsStruct::DecodableType>;
using DecodableArgType = const chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::RateDistortionTradeOffPointsStruct::DecodableType> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::RateDistortionTradeOffPoints::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace RateDistortionTradeOffPoints
namespace MaxContentBufferSize {
struct TypeInfo
{
using Type = uint32_t;
using DecodableType = uint32_t;
using DecodableArgType = uint32_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MaxContentBufferSize::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MaxContentBufferSize
namespace MicrophoneCapabilities {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::Type;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::DecodableType;
using DecodableArgType = const chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::DecodableType &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneCapabilities::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneCapabilities
namespace SpeakerCapabilities {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::Type;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::DecodableType;
using DecodableArgType = const chip::app::Clusters::CameraAvStreamManagement::Structs::AudioCapabilitiesStruct::DecodableType &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SpeakerCapabilities::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SpeakerCapabilities
namespace TwoWayTalkSupport {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::TwoWayTalkSupportTypeEnum;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::TwoWayTalkSupportTypeEnum;
using DecodableArgType = chip::app::Clusters::CameraAvStreamManagement::TwoWayTalkSupportTypeEnum;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::TwoWayTalkSupport::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace TwoWayTalkSupport
namespace SnapshotCapabilities {
struct TypeInfo
{
using Type =
chip::app::DataModel::List<const chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotCapabilitiesStruct::Type>;
using DecodableType = chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotCapabilitiesStruct::DecodableType>;
using DecodableArgType = const chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotCapabilitiesStruct::DecodableType> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SnapshotCapabilities::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SnapshotCapabilities
namespace MaxNetworkBandwidth {
struct TypeInfo
{
using Type = uint32_t;
using DecodableType = uint32_t;
using DecodableArgType = uint32_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MaxNetworkBandwidth::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MaxNetworkBandwidth
namespace CurrentFrameRate {
struct TypeInfo
{
using Type = uint16_t;
using DecodableType = uint16_t;
using DecodableArgType = uint16_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::CurrentFrameRate::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace CurrentFrameRate
namespace HDRModeEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::HDRModeEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace HDRModeEnabled
namespace SupportedStreamUsages {
struct TypeInfo
{
using Type = chip::app::DataModel::List<const chip::app::Clusters::Globals::StreamUsageEnum>;
using DecodableType = chip::app::DataModel::DecodableList<chip::app::Clusters::Globals::StreamUsageEnum>;
using DecodableArgType = const chip::app::DataModel::DecodableList<chip::app::Clusters::Globals::StreamUsageEnum> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SupportedStreamUsages::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SupportedStreamUsages
namespace AllocatedVideoStreams {
struct TypeInfo
{
using Type = chip::app::DataModel::List<const chip::app::Clusters::CameraAvStreamManagement::Structs::VideoStreamStruct::Type>;
using DecodableType = chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::VideoStreamStruct::DecodableType>;
using DecodableArgType = const chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::VideoStreamStruct::DecodableType> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::AllocatedVideoStreams::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace AllocatedVideoStreams
namespace AllocatedAudioStreams {
struct TypeInfo
{
using Type = chip::app::DataModel::List<const chip::app::Clusters::CameraAvStreamManagement::Structs::AudioStreamStruct::Type>;
using DecodableType = chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::AudioStreamStruct::DecodableType>;
using DecodableArgType = const chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::AudioStreamStruct::DecodableType> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::AllocatedAudioStreams::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace AllocatedAudioStreams
namespace AllocatedSnapshotStreams {
struct TypeInfo
{
using Type =
chip::app::DataModel::List<const chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotStreamStruct::Type>;
using DecodableType = chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotStreamStruct::DecodableType>;
using DecodableArgType = const chip::app::DataModel::DecodableList<
chip::app::Clusters::CameraAvStreamManagement::Structs::SnapshotStreamStruct::DecodableType> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::AllocatedSnapshotStreams::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace AllocatedSnapshotStreams
namespace RankedVideoStreamPrioritiesList {
struct TypeInfo
{
using Type = chip::app::DataModel::List<const chip::app::Clusters::Globals::StreamUsageEnum>;
using DecodableType = chip::app::DataModel::DecodableList<chip::app::Clusters::Globals::StreamUsageEnum>;
using DecodableArgType = const chip::app::DataModel::DecodableList<chip::app::Clusters::Globals::StreamUsageEnum> &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::RankedVideoStreamPrioritiesList::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace RankedVideoStreamPrioritiesList
namespace SoftRecordingPrivacyModeEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SoftRecordingPrivacyModeEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SoftRecordingPrivacyModeEnabled
namespace SoftLivestreamPrivacyModeEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SoftLivestreamPrivacyModeEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SoftLivestreamPrivacyModeEnabled
namespace HardPrivacyModeOn {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::HardPrivacyModeOn::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace HardPrivacyModeOn
namespace NightVision {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
using DecodableArgType = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::NightVision::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace NightVision
namespace NightVisionIllum {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
using DecodableArgType = chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::NightVisionIllum::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace NightVisionIllum
namespace Viewport {
struct TypeInfo
{
using Type = chip::app::Clusters::CameraAvStreamManagement::Structs::ViewportStruct::Type;
using DecodableType = chip::app::Clusters::CameraAvStreamManagement::Structs::ViewportStruct::DecodableType;
using DecodableArgType = const chip::app::Clusters::CameraAvStreamManagement::Structs::ViewportStruct::DecodableType &;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::Viewport::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace Viewport
namespace SpeakerMuted {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SpeakerMuted::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SpeakerMuted
namespace SpeakerVolumeLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SpeakerVolumeLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SpeakerVolumeLevel
namespace SpeakerMaxLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SpeakerMaxLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SpeakerMaxLevel
namespace SpeakerMinLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::SpeakerMinLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace SpeakerMinLevel
namespace MicrophoneMuted {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneMuted::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneMuted
namespace MicrophoneVolumeLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneVolumeLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneVolumeLevel
namespace MicrophoneMaxLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneMaxLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneMaxLevel
namespace MicrophoneMinLevel {
struct TypeInfo
{
using Type = uint8_t;
using DecodableType = uint8_t;
using DecodableArgType = uint8_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneMinLevel::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneMinLevel
namespace MicrophoneAGCEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::MicrophoneAGCEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace MicrophoneAGCEnabled
namespace ImageRotation {
struct TypeInfo
{
using Type = uint16_t;
using DecodableType = uint16_t;
using DecodableArgType = uint16_t;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::ImageRotation::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace ImageRotation
namespace ImageFlipHorizontal {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::ImageFlipHorizontal::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace ImageFlipHorizontal
namespace ImageFlipVertical {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::ImageFlipVertical::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace ImageFlipVertical
namespace LocalVideoRecordingEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::LocalVideoRecordingEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace LocalVideoRecordingEnabled
namespace LocalSnapshotRecordingEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::LocalSnapshotRecordingEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace LocalSnapshotRecordingEnabled
namespace StatusLightEnabled {
struct TypeInfo
{
using Type = bool;
using DecodableType = bool;
using DecodableArgType = bool;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::StatusLightEnabled::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace StatusLightEnabled
namespace StatusLightBrightness {
struct TypeInfo
{
using Type = chip::app::Clusters::Globals::ThreeLevelAutoEnum;
using DecodableType = chip::app::Clusters::Globals::ThreeLevelAutoEnum;
using DecodableArgType = chip::app::Clusters::Globals::ThreeLevelAutoEnum;
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
static constexpr AttributeId GetAttributeId() { return Attributes::StatusLightBrightness::Id; }
static constexpr bool MustUseTimedWrite() { return false; }
};
} // namespace StatusLightBrightness
namespace GeneratedCommandList {
struct TypeInfo : public Clusters::Globals::Attributes::GeneratedCommandList::TypeInfo
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
};
} // namespace GeneratedCommandList
namespace AcceptedCommandList {
struct TypeInfo : public Clusters::Globals::Attributes::AcceptedCommandList::TypeInfo
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
};
} // namespace AcceptedCommandList
namespace AttributeList {
struct TypeInfo : public Clusters::Globals::Attributes::AttributeList::TypeInfo
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
};
} // namespace AttributeList
namespace FeatureMap {
struct TypeInfo : public Clusters::Globals::Attributes::FeatureMap::TypeInfo
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
};
} // namespace FeatureMap
namespace ClusterRevision {
struct TypeInfo : public Clusters::Globals::Attributes::ClusterRevision::TypeInfo
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
};
} // namespace ClusterRevision
struct TypeInfo
{
struct DecodableType
{
static constexpr ClusterId GetClusterId() { return Clusters::CameraAvStreamManagement::Id; }
CHIP_ERROR Decode(TLV::TLVReader & reader, const ConcreteAttributePath & path);
Attributes::MaxConcurrentEncoders::TypeInfo::DecodableType maxConcurrentEncoders = static_cast<uint8_t>(0);
Attributes::MaxEncodedPixelRate::TypeInfo::DecodableType maxEncodedPixelRate = static_cast<uint32_t>(0);
Attributes::VideoSensorParams::TypeInfo::DecodableType videoSensorParams;
Attributes::NightVisionUsesInfrared::TypeInfo::DecodableType nightVisionUsesInfrared = static_cast<bool>(0);
Attributes::MinViewport::TypeInfo::DecodableType minViewport;
Attributes::RateDistortionTradeOffPoints::TypeInfo::DecodableType rateDistortionTradeOffPoints;
Attributes::MaxContentBufferSize::TypeInfo::DecodableType maxContentBufferSize = static_cast<uint32_t>(0);
Attributes::MicrophoneCapabilities::TypeInfo::DecodableType microphoneCapabilities;
Attributes::SpeakerCapabilities::TypeInfo::DecodableType speakerCapabilities;
Attributes::TwoWayTalkSupport::TypeInfo::DecodableType twoWayTalkSupport =
static_cast<chip::app::Clusters::CameraAvStreamManagement::TwoWayTalkSupportTypeEnum>(0);
Attributes::SnapshotCapabilities::TypeInfo::DecodableType snapshotCapabilities;
Attributes::MaxNetworkBandwidth::TypeInfo::DecodableType maxNetworkBandwidth = static_cast<uint32_t>(0);
Attributes::CurrentFrameRate::TypeInfo::DecodableType currentFrameRate = static_cast<uint16_t>(0);
Attributes::HDRModeEnabled::TypeInfo::DecodableType HDRModeEnabled = static_cast<bool>(0);
Attributes::SupportedStreamUsages::TypeInfo::DecodableType supportedStreamUsages;
Attributes::AllocatedVideoStreams::TypeInfo::DecodableType allocatedVideoStreams;
Attributes::AllocatedAudioStreams::TypeInfo::DecodableType allocatedAudioStreams;
Attributes::AllocatedSnapshotStreams::TypeInfo::DecodableType allocatedSnapshotStreams;
Attributes::RankedVideoStreamPrioritiesList::TypeInfo::DecodableType rankedVideoStreamPrioritiesList;
Attributes::SoftRecordingPrivacyModeEnabled::TypeInfo::DecodableType softRecordingPrivacyModeEnabled = static_cast<bool>(0);
Attributes::SoftLivestreamPrivacyModeEnabled::TypeInfo::DecodableType softLivestreamPrivacyModeEnabled =
static_cast<bool>(0);
Attributes::HardPrivacyModeOn::TypeInfo::DecodableType hardPrivacyModeOn = static_cast<bool>(0);
Attributes::NightVision::TypeInfo::DecodableType nightVision =
static_cast<chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum>(0);
Attributes::NightVisionIllum::TypeInfo::DecodableType nightVisionIllum =
static_cast<chip::app::Clusters::CameraAvStreamManagement::TriStateAutoEnum>(0);
Attributes::Viewport::TypeInfo::DecodableType viewport;
Attributes::SpeakerMuted::TypeInfo::DecodableType speakerMuted = static_cast<bool>(0);
Attributes::SpeakerVolumeLevel::TypeInfo::DecodableType speakerVolumeLevel = static_cast<uint8_t>(0);
Attributes::SpeakerMaxLevel::TypeInfo::DecodableType speakerMaxLevel = static_cast<uint8_t>(0);
Attributes::SpeakerMinLevel::TypeInfo::DecodableType speakerMinLevel = static_cast<uint8_t>(0);
Attributes::MicrophoneMuted::TypeInfo::DecodableType microphoneMuted = static_cast<bool>(0);
Attributes::MicrophoneVolumeLevel::TypeInfo::DecodableType microphoneVolumeLevel = static_cast<uint8_t>(0);
Attributes::MicrophoneMaxLevel::TypeInfo::DecodableType microphoneMaxLevel = static_cast<uint8_t>(0);
Attributes::MicrophoneMinLevel::TypeInfo::DecodableType microphoneMinLevel = static_cast<uint8_t>(0);
Attributes::MicrophoneAGCEnabled::TypeInfo::DecodableType microphoneAGCEnabled = static_cast<bool>(0);
Attributes::ImageRotation::TypeInfo::DecodableType imageRotation = static_cast<uint16_t>(0);
Attributes::ImageFlipHorizontal::TypeInfo::DecodableType imageFlipHorizontal = static_cast<bool>(0);
Attributes::ImageFlipVertical::TypeInfo::DecodableType imageFlipVertical = static_cast<bool>(0);
Attributes::LocalVideoRecordingEnabled::TypeInfo::DecodableType localVideoRecordingEnabled = static_cast<bool>(0);
Attributes::LocalSnapshotRecordingEnabled::TypeInfo::DecodableType localSnapshotRecordingEnabled = static_cast<bool>(0);
Attributes::StatusLightEnabled::TypeInfo::DecodableType statusLightEnabled = static_cast<bool>(0);
Attributes::StatusLightBrightness::TypeInfo::DecodableType statusLightBrightness =
static_cast<chip::app::Clusters::Globals::ThreeLevelAutoEnum>(0);
Attributes::GeneratedCommandList::TypeInfo::DecodableType generatedCommandList;
Attributes::AcceptedCommandList::TypeInfo::DecodableType acceptedCommandList;
Attributes::AttributeList::TypeInfo::DecodableType attributeList;
Attributes::FeatureMap::TypeInfo::DecodableType featureMap = static_cast<uint32_t>(0);
Attributes::ClusterRevision::TypeInfo::DecodableType clusterRevision = static_cast<uint16_t>(0);
};
};
} // namespace Attributes
} // namespace CameraAvStreamManagement
} // namespace Clusters
} // namespace app
} // namespace chip