]> git.basschouten.com Git - openhab-addons.git/blob
e841ca0aa4c8d0cd720be9b4f80dcb3deebf3db7
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2023 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
7  * This program and the accompanying materials are made available under the
8  * terms of the Eclipse Public License 2.0 which is available at
9  * http://www.eclipse.org/legal/epl-2.0
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.bluetooth.bluegiga.internal.command.system;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.binding.bluetooth.bluegiga.internal.BlueGigaResponse;
17
18 /**
19  * Class to implement the BlueGiga command <b>endpointWatermarkRxEvent</b>.
20  * <p>
21  * This event is generated if the receive (incoming) buffer of the endpoint has been filled with
22  * a number of bytes equal or higher than the value defined by the command Endpoint Set
23  * Watermarks. Data from the receive buffer can then be read (and consequently cleared) with
24  * the command Endpoint Rx
25  * <p>
26  * This class provides methods for processing BlueGiga API commands.
27  * <p>
28  * Note that this code is autogenerated. Manual changes may be overwritten.
29  *
30  * @author Chris Jackson - Initial contribution of Java code generator
31  */
32 @NonNullByDefault
33 public class BlueGigaEndpointWatermarkRxEvent extends BlueGigaResponse {
34     public static int COMMAND_CLASS = 0x00;
35     public static int COMMAND_METHOD = 0x02;
36
37     /**
38      * Endpoint index where data was received
39      * <p>
40      * BlueGiga API type is <i>uint8</i> - Java type is {@link int}
41      */
42     private int endpoint;
43
44     /**
45      * Space available
46      * <p>
47      * BlueGiga API type is <i>uint8</i> - Java type is {@link int}
48      */
49     private int data;
50
51     /**
52      * Event constructor
53      */
54     public BlueGigaEndpointWatermarkRxEvent(int[] inputBuffer) {
55         // Super creates deserializer and reads header fields
56         super(inputBuffer);
57
58         event = (inputBuffer[0] & 0x80) != 0;
59
60         // Deserialize the fields
61         endpoint = deserializeUInt8();
62         data = deserializeUInt8();
63     }
64
65     /**
66      * Endpoint index where data was received
67      * <p>
68      * BlueGiga API type is <i>uint8</i> - Java type is {@link int}
69      *
70      * @return the current endpoint as {@link int}
71      */
72     public int getEndpoint() {
73         return endpoint;
74     }
75
76     /**
77      * Space available
78      * <p>
79      * BlueGiga API type is <i>uint8</i> - Java type is {@link int}
80      *
81      * @return the current data as {@link int}
82      */
83     public int getData() {
84         return data;
85     }
86
87     @Override
88     public String toString() {
89         final StringBuilder builder = new StringBuilder();
90         builder.append("BlueGigaEndpointWatermarkRxEvent [endpoint=");
91         builder.append(endpoint);
92         builder.append(", data=");
93         builder.append(data);
94         builder.append(']');
95         return builder.toString();
96     }
97 }