blob: 97838b756794e3ad403ed789a43891f5ef3a0a16 [file] [log] [blame]
#include <tlv/meta/clusters_meta.h>
namespace chip {
namespace TLVMeta {
namespace {
using namespace chip::FlatTree;
using namespace chip::TLV;
const Entry<ItemInfo> _OnOff[] = {
{ { AttributeTag(0), "onOff", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::boolean
{ { AttributeTag(65532), "featureMap", ItemType::kBitmap }, 8 }, // OnOff::OnOffFeature
{ { AttributeTag(65533), "clusterRevision", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::int16u
{ { CommandTag(0), "Off", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::Off::()
{ { CommandTag(1), "On", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::On::()
{ { CommandTag(2), "Toggle", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::Toggle::()
};
const Entry<ItemInfo> _OnOff_DelayedAllOffEffectVariantEnum[] = {
{ { ConstantValueTag(0x0), "kDelayedOffFastFade", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::DelayedAllOffEffectVariantEnum::kDelayedOffFastFade
{ { ConstantValueTag(0x1), "kNoFade", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::DelayedAllOffEffectVariantEnum::kNoFade
{ { ConstantValueTag(0x2), "kDelayedOffSlowFade", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::DelayedAllOffEffectVariantEnum::kDelayedOffSlowFade
};
const Entry<ItemInfo> _OnOff_DyingLightEffectVariantEnum[] = {
{ { ConstantValueTag(0x0), "kDyingLightFadeOff", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::DyingLightEffectVariantEnum::kDyingLightFadeOff
};
const Entry<ItemInfo> _OnOff_EffectIdentifierEnum[] = {
{ { ConstantValueTag(0x0), "kDelayedAllOff", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::EffectIdentifierEnum::kDelayedAllOff
{ { ConstantValueTag(0x1), "kDyingLight", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::EffectIdentifierEnum::kDyingLight
};
const Entry<ItemInfo> _OnOff_StartUpOnOffEnum[] = {
{ { ConstantValueTag(0x0), "kOff", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::StartUpOnOffEnum::kOff
{ { ConstantValueTag(0x1), "kOn", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::StartUpOnOffEnum::kOn
{ { ConstantValueTag(0x2), "kToggle", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::StartUpOnOffEnum::kToggle
};
const Entry<ItemInfo> _OnOff_OnOffControl[] = {
{ { ConstantValueTag(0x1), "kAcceptOnlyWhenOn", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::OnOffControl::kAcceptOnlyWhenOn
};
const Entry<ItemInfo> _OnOff_OnOffFeature[] = {
{ { ConstantValueTag(0x1), "kLighting", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::OnOffFeature::kLighting
};
const Entry<ItemInfo> _OnOff_ScenesFeature[] = {
{ { ConstantValueTag(0x1), "kSceneNames", ItemType::kDefault }, kInvalidNodeIndex }, // OnOff::ScenesFeature::kSceneNames
};
const Entry<ItemInfo> _all_clusters[] = {
{ { ClusterTag(0x06), "OnOff", ItemType::kDefault }, 2 },
};
// For any non-structure list like u64[] or similar.
const Entry<ItemInfo> _primitive_type_list[] = {
{ { AnonymousTag(), "Anonymous<>", ItemType::kDefault }, kInvalidNodeIndex },
};
} // namespace
#define _ENTRY(n) { sizeof(n) / sizeof(n[0]), n}
const std::array<const Node<ItemInfo>, 8 + 2> clusters_meta = { {
_ENTRY(_all_clusters), // 0
_ENTRY(_primitive_type_list), // 1
_ENTRY(_OnOff), // 2
_ENTRY(_OnOff_DelayedAllOffEffectVariantEnum), // 3
_ENTRY(_OnOff_DyingLightEffectVariantEnum), // 4
_ENTRY(_OnOff_EffectIdentifierEnum), // 5
_ENTRY(_OnOff_StartUpOnOffEnum), // 6
_ENTRY(_OnOff_OnOffControl), // 7
_ENTRY(_OnOff_OnOffFeature), // 8
_ENTRY(_OnOff_ScenesFeature), // 9
} };
} // namespace TLVMeta
} // namespace chip