2 * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved.
4 * Contact: Suresh Kumar N (suresh.n@samsung.com)
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 #ifndef __ZIGBEE_ZCL_GROUP_TYPE_H__
20 #define __ZIGBEE_ZCL_GROUP_TYPE_H__
22 #include <zigbee_types.h>
24 /* --------------------------------------------------------------------------------------
26 * -------------------------------------------------------------------------------------*/
29 * @brief Definition for ZCL Group add group structure.
33 short node_id; /**< Node ID */
34 char dest_ep; /**< Destination endpoint */
35 short group_id; /**< Group ID */
36 char group_name[ZIGBEE_ZCL_GROUP_NAME_MAX_LEN + 1]; /**< Group name (NULL terminated) */
37 } ZigbeeZclGroupAddGroup_t;
40 * @brief Definition for ZCL Group view group structure.
44 short node_id; /**< Node ID */
45 char dest_ep; /**< Destination endpoint */
46 short group_id; /**< Group ID */
47 } ZigbeeZclGroupViewGroup_t;
50 * @brief Definition for ZCL Group get group membership structure.
54 short node_id; /**< Node ID */
55 char dest_ep; /**< Destination endpoint */
56 char group_count; /**< Group count */
57 short *group_list; /**< Group list */
58 } ZigbeeZclGroupGetGroupMembership_t;
61 * @brief Definition for ZCL Group remove group structure.
65 short node_id; /**< Node ID */
66 char dest_ep; /**< Destination endpoint */
67 short group_id; /**< Group ID */
68 } ZigbeeZclGroupRemoveGroup_t;
71 * @brief Definition for ZCL Group remove all group structure.
75 short node_id; /**< Node ID */
76 char dest_ep; /**< Destination endpoint */
77 } ZigbeeZclGroupRemoveAllGroup_t;
80 * @brief Definition for ZCL Group add group if identifying structure.
84 short node_id; /**< Node ID */
85 char dest_ep; /**< Destination endpoint */
86 short group_id; /**< Group ID */
87 char group_name[ZIGBEE_ZCL_GROUP_NAME_MAX_LEN + 1]; /**< Group name (NULL terminated) */
88 } ZigbeeZclGroupAddGroupIfIdentifying_t;
90 /* --------------------------------------------------------------------------------------
92 * -------------------------------------------------------------------------------------*/
95 * @brief Definition for ZCL Group add group response structure.
99 short node_id; /**< Node ID */
100 char src_ep; /**< Source endpoint */
101 char status; /**< Status code */
102 short group_id; /**< Group ID */
103 } ZigbeeZclGroupAddGroupNoti_t;
106 * @brief Definition for ZCL Group view group structure.
110 short node_id; /**< Node ID */
111 char src_ep; /**< Source endpoint */
112 char status; /**< Status code */
113 short group_id; /**< Group ID */
114 char group_name[ZIGBEE_ZCL_GROUP_NAME_MAX_LEN + 1]; /**< Group name (NULL terminated) */
115 } ZigbeeZclGroupViewGroupNoti_t;
118 * @brief Definition for ZCL Group get group membership structure.
122 short node_id; /**< Node ID */
123 char src_ep; /**< Source endpoint */
124 char capacity; /**< Capacity of group */
125 char group_count; /**< Group ID */
126 short *group_list; /**< Group list */
127 } ZigbeeZclGroupGetGroupMembershipNoti_t;
130 * @brief Definition for ZCL Group remove structure.
134 short node_id; /**< Node ID */
135 char src_ep; /**< Source endpoint */
136 char status; /**< Status code */
137 short group_id; /**< Group ID */
138 } ZigbeeZclGroupRemoveGroupNoti_t;
141 #endif /* __ZIGBEE_ZCL_GROUP_TYPE_H__ */