Apply Upstream code (2021-03-15)
[platform/upstream/connectedhomeip.git] / examples / lighting-app / lighting-common / gen / CHIPClustersObjc.h
1 /*
2  *
3  *    Copyright (c) 2021 Project CHIP Authors
4  *
5  *    Licensed under the Apache License, Version 2.0 (the "License");
6  *    you may not use this file except in compliance with the License.
7  *    You may obtain a copy of the License at
8  *
9  *        http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *    Unless required by applicable law or agreed to in writing, software
12  *    distributed under the License is distributed on an "AS IS" BASIS,
13  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *    See the License for the specific language governing permissions and
15  *    limitations under the License.
16  */
17
18 // THIS FILE IS GENERATED BY ZAP
19
20 #ifndef CHIP_CLUSTERS_H
21 #define CHIP_CLUSTERS_H
22
23 #import <Foundation/Foundation.h>
24
25 @class CHIPDevice;
26
27 typedef void (^ResponseHandler)(NSError * _Nullable error, NSDictionary * _Nullable values);
28
29 NS_ASSUME_NONNULL_BEGIN
30
31 /**
32  * CHIPCluster
33  *    This is the base class for clusters.
34  */
35 @interface CHIPCluster : NSObject
36
37 - (nullable instancetype)initWithDevice:(CHIPDevice *)device
38                                endpoint:(uint8_t)endpoint
39                                   queue:(dispatch_queue_t)queue NS_DESIGNATED_INITIALIZER;
40 - (instancetype)init NS_UNAVAILABLE;
41 + (instancetype)new NS_UNAVAILABLE;
42
43 @end
44
45 /**
46  * Cluster Basic
47  *
48  */
49 @interface CHIPBasic : CHIPCluster
50
51 - (void)readAttributeInteractionModelVersion:(ResponseHandler)completionHandler;
52 - (void)readAttributeVendorName:(ResponseHandler)completionHandler;
53 - (void)readAttributeVendorID:(ResponseHandler)completionHandler;
54 - (void)readAttributeProductName:(ResponseHandler)completionHandler;
55 - (void)readAttributeProductID:(ResponseHandler)completionHandler;
56 - (void)readAttributeUserLabel:(ResponseHandler)completionHandler;
57 - (void)writeAttributeUserLabel:(NSString *)value completionHandler:(ResponseHandler)completionHandler;
58 - (void)readAttributeLocation:(ResponseHandler)completionHandler;
59 - (void)writeAttributeLocation:(NSString *)value completionHandler:(ResponseHandler)completionHandler;
60 - (void)readAttributeHardwareVersion:(ResponseHandler)completionHandler;
61 - (void)readAttributeHardwareVersionString:(ResponseHandler)completionHandler;
62 - (void)readAttributeSoftwareVersion:(ResponseHandler)completionHandler;
63 - (void)readAttributeSoftwareVersionString:(ResponseHandler)completionHandler;
64 - (void)readAttributeClusterRevision:(ResponseHandler)completionHandler;
65
66 @end
67
68 /**
69  * Cluster Level Control
70  *
71  */
72 @interface CHIPLevelControl : CHIPCluster
73
74 - (void)move:(uint8_t)moveMode
75                  rate:(uint8_t)rate
76            optionMask:(uint8_t)optionMask
77        optionOverride:(uint8_t)optionOverride
78     completionHandler:(ResponseHandler)completionHandler;
79 - (void)moveToLevel:(uint8_t)level
80        transitionTime:(uint16_t)transitionTime
81            optionMask:(uint8_t)optionMask
82        optionOverride:(uint8_t)optionOverride
83     completionHandler:(ResponseHandler)completionHandler;
84 - (void)moveToLevelWithOnOff:(uint8_t)level
85               transitionTime:(uint16_t)transitionTime
86            completionHandler:(ResponseHandler)completionHandler;
87 - (void)moveWithOnOff:(uint8_t)moveMode rate:(uint8_t)rate completionHandler:(ResponseHandler)completionHandler;
88 - (void)step:(uint8_t)stepMode
89              stepSize:(uint8_t)stepSize
90        transitionTime:(uint16_t)transitionTime
91            optionMask:(uint8_t)optionMask
92        optionOverride:(uint8_t)optionOverride
93     completionHandler:(ResponseHandler)completionHandler;
94 - (void)stepWithOnOff:(uint8_t)stepMode
95              stepSize:(uint8_t)stepSize
96        transitionTime:(uint16_t)transitionTime
97     completionHandler:(ResponseHandler)completionHandler;
98 - (void)stop:(uint8_t)optionMask optionOverride:(uint8_t)optionOverride completionHandler:(ResponseHandler)completionHandler;
99 - (void)stopWithOnOff:(ResponseHandler)completionHandler;
100
101 - (void)readAttributeCurrentLevel:(ResponseHandler)completionHandler;
102 - (void)configureAttributeCurrentLevel:(uint16_t)minInterval
103                            maxInterval:(uint16_t)maxInterval
104                                 change:(uint8_t)change
105                      completionHandler:(ResponseHandler)completionHandler;
106 - (void)reportAttributeCurrentLevel:(ResponseHandler)reportHandler;
107 - (void)readAttributeClusterRevision:(ResponseHandler)completionHandler;
108
109 @end
110
111 /**
112  * Cluster Network Commissioning
113  *
114  */
115 @interface CHIPNetworkCommissioning : CHIPCluster
116
117 - (void)addThreadNetwork:(NSData *)operationalDataset
118               breadcrumb:(uint64_t)breadcrumb
119                timeoutMs:(uint32_t)timeoutMs
120        completionHandler:(ResponseHandler)completionHandler;
121 - (void)addWiFiNetwork:(NSData *)ssid
122            credentials:(NSData *)credentials
123             breadcrumb:(uint64_t)breadcrumb
124              timeoutMs:(uint32_t)timeoutMs
125      completionHandler:(ResponseHandler)completionHandler;
126 - (void)disableNetwork:(NSData *)networkID
127             breadcrumb:(uint64_t)breadcrumb
128              timeoutMs:(uint32_t)timeoutMs
129      completionHandler:(ResponseHandler)completionHandler;
130 - (void)enableNetwork:(NSData *)networkID
131            breadcrumb:(uint64_t)breadcrumb
132             timeoutMs:(uint32_t)timeoutMs
133     completionHandler:(ResponseHandler)completionHandler;
134 - (void)getLastNetworkCommissioningResult:(uint32_t)timeoutMs completionHandler:(ResponseHandler)completionHandler;
135 - (void)removeNetwork:(NSData *)networkID
136            breadcrumb:(uint64_t)breadcrumb
137             timeoutMs:(uint32_t)timeoutMs
138     completionHandler:(ResponseHandler)completionHandler;
139 - (void)scanNetworks:(NSData *)ssid
140            breadcrumb:(uint64_t)breadcrumb
141             timeoutMs:(uint32_t)timeoutMs
142     completionHandler:(ResponseHandler)completionHandler;
143 - (void)updateThreadNetwork:(NSData *)operationalDataset
144                  breadcrumb:(uint64_t)breadcrumb
145                   timeoutMs:(uint32_t)timeoutMs
146           completionHandler:(ResponseHandler)completionHandler;
147 - (void)updateWiFiNetwork:(NSData *)ssid
148               credentials:(NSData *)credentials
149                breadcrumb:(uint64_t)breadcrumb
150                 timeoutMs:(uint32_t)timeoutMs
151         completionHandler:(ResponseHandler)completionHandler;
152
153 - (void)readAttributeClusterRevision:(ResponseHandler)completionHandler;
154
155 @end
156
157 /**
158  * Cluster On/off
159  *
160  */
161 @interface CHIPOnOff : CHIPCluster
162
163 - (void)off:(ResponseHandler)completionHandler;
164 - (void)on:(ResponseHandler)completionHandler;
165 - (void)toggle:(ResponseHandler)completionHandler;
166
167 - (void)readAttributeOnOff:(ResponseHandler)completionHandler;
168 - (void)configureAttributeOnOff:(uint16_t)minInterval
169                     maxInterval:(uint16_t)maxInterval
170               completionHandler:(ResponseHandler)completionHandler;
171 - (void)reportAttributeOnOff:(ResponseHandler)reportHandler;
172 - (void)readAttributeClusterRevision:(ResponseHandler)completionHandler;
173
174 @end
175
176 NS_ASSUME_NONNULL_END
177
178 #endif /* CHIP_CLUSTERS_H */