blob: e59b896560ef69253200e4b0fecd40cd96038be5 [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
// Prevent multiple inclusion
#pragma once
// Default values for the attributes longer than a pointer,
// in a form of a binary blob
// Separate block is generated for big-endian and little-endian cases.
#if BIGENDIAN_CPU
#define GENERATED_DEFAULTS \
{ \
\
/* Endpoint: 0, Cluster: General Commissioning (server), big-endian */ \
\
/* 0 - Breadcrumb, */ \
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
}
#else // !BIGENDIAN_CPU
#define GENERATED_DEFAULTS \
{ \
\
/* Endpoint: 0, Cluster: General Commissioning (server), little-endian */ \
\
/* 0 - Breadcrumb, */ \
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
}
#endif // BIGENDIAN_CPU
#define GENERATED_DEFAULTS_COUNT (1)
#define ZAP_TYPE(type) ZCL_##type##_ATTRIBUTE_TYPE
#define ZAP_LONG_DEFAULTS_INDEX(index) \
{ \
&generatedDefaults[index] \
}
#define ZAP_MIN_MAX_DEFAULTS_INDEX(index) \
{ \
&minMaxDefaults[index] \
}
#define ZAP_EMPTY_DEFAULT() \
{ \
(uint16_t) 0 \
}
#define ZAP_SIMPLE_DEFAULT(x) \
{ \
(uint16_t) x \
}
// This is an array of EmberAfAttributeMinMaxValue structures.
#define GENERATED_MIN_MAX_DEFAULT_COUNT 0
#define GENERATED_MIN_MAX_DEFAULTS \
{ \
}
#define ZAP_ATTRIBUTE_MASK(mask) ATTRIBUTE_MASK_##mask
// This is an array of EmberAfAttributeMetadata structures.
#define GENERATED_ATTRIBUTE_COUNT 9
#define GENERATED_ATTRIBUTES \
{ \
\
/* Endpoint: 0, Cluster: General Commissioning (server) */ \
{ 0x00000000, ZAP_TYPE(INT64U), 8, ZAP_ATTRIBUTE_MASK(WRITABLE), ZAP_LONG_DEFAULTS_INDEX(0) }, /* Breadcrumb */ \
{ 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
ZAP_EMPTY_DEFAULT() }, /* BasicCommissioningInfoList */ \
{ 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0001) }, /* ClusterRevision */ \
\
/* Endpoint: 0, Cluster: Network Commissioning (server) */ \
{ 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0001) }, /* ClusterRevision */ \
\
/* Endpoint: 0, Cluster: Operational Credentials (server) */ \
{ 0x00000001, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), ZAP_EMPTY_DEFAULT() }, /* fabrics list */ \
{ 0x00000002, ZAP_TYPE(INT8U), 1, 0, ZAP_EMPTY_DEFAULT() }, /* SupportedFabrics */ \
{ 0x00000003, ZAP_TYPE(INT8U), 1, 0, ZAP_EMPTY_DEFAULT() }, /* CommissionedFabrics */ \
{ 0x00000004, ZAP_TYPE(ARRAY), 0, ZAP_ATTRIBUTE_MASK(EXTERNAL_STORAGE), \
ZAP_EMPTY_DEFAULT() }, /* TrustedRootCertificates */ \
{ 0x0000FFFD, ZAP_TYPE(INT16U), 2, 0, ZAP_SIMPLE_DEFAULT(0x0001) }, /* ClusterRevision */ \
}
// This is an array of EmberAfCluster structures.
#define ZAP_ATTRIBUTE_INDEX(index) ((EmberAfAttributeMetadata *) (&generatedAttributes[index]))
// Cluster function static arrays
#define GENERATED_FUNCTION_ARRAYS
#define ZAP_CLUSTER_MASK(mask) CLUSTER_MASK_##mask
#define GENERATED_CLUSTER_COUNT 5
#define GENERATED_CLUSTERS \
{ \
{ \
0x00000030, ZAP_ATTRIBUTE_INDEX(0), 3, 10, ZAP_CLUSTER_MASK(SERVER), NULL \
}, /* Endpoint: 0, Cluster: General Commissioning (server) */ \
{ \
0x00000031, ZAP_ATTRIBUTE_INDEX(3), 1, 2, ZAP_CLUSTER_MASK(SERVER), NULL \
}, /* Endpoint: 0, Cluster: Network Commissioning (server) */ \
{ \
0x00000032, ZAP_ATTRIBUTE_INDEX(4), 0, 0, ZAP_CLUSTER_MASK(CLIENT), NULL \
}, /* Endpoint: 0, Cluster: Diagnostic Logs (client) */ \
{ \
0x00000032, ZAP_ATTRIBUTE_INDEX(4), 0, 0, ZAP_CLUSTER_MASK(SERVER), NULL \
}, /* Endpoint: 0, Cluster: Diagnostic Logs (server) */ \
{ \
0x0000003E, ZAP_ATTRIBUTE_INDEX(4), 5, 4, ZAP_CLUSTER_MASK(SERVER), NULL \
}, /* Endpoint: 0, Cluster: Operational Credentials (server) */ \
}
#define ZAP_CLUSTER_INDEX(index) ((EmberAfCluster *) (&generatedClusters[index]))
// This is an array of EmberAfEndpointType structures.
#define GENERATED_ENDPOINT_TYPES \
{ \
{ ZAP_CLUSTER_INDEX(0), 5, 16 }, \
}
// Largest attribute size is needed for various buffers
#define ATTRIBUTE_LARGEST (401)
// Total size of singleton attributes
#define ATTRIBUTE_SINGLETONS_SIZE (0)
// Total size of attribute storage
#define ATTRIBUTE_MAX_SIZE (16)
// Number of fixed endpoints
#define FIXED_ENDPOINT_COUNT (1)
// Array of endpoints that are supported, the data inside
// the array is the endpoint number.
#define FIXED_ENDPOINT_ARRAY \
{ \
0x0000 \
}
// Array of profile ids
#define FIXED_PROFILE_IDS \
{ \
0x0256 \
}
// Array of device ids
#define FIXED_DEVICE_IDS \
{ \
}
// Array of device versions
#define FIXED_DEVICE_VERSIONS \
{ \
1 \
}
// Array of endpoint types supported on each endpoint
#define FIXED_ENDPOINT_TYPES \
{ \
0 \
}
// Array of networks supported on each endpoint
#define FIXED_NETWORKS \
{ \
0 \
}