Adding Fidelius manual.
[iotcloud.git] / version2 / src / java / light_fan_embed_benchmark / LightBulb.java
1 /** Class LightBulb interface for the light bulb devices.
2  *
3  * @author      Ali Younis <ayounis @ uci.edu>
4  * @version     1.0
5  * @since       2016-01-27
6  */
7
8
9 public interface LightBulb {
10
11         /** Method to turn the light bulb on (Physically illuminate the area).
12          *
13          *   @param None.
14          *
15          *   @return [void] None.
16          */
17
18         public void turnOff();
19
20         /** Method to turn the light bulb off.
21          *
22          *   @return [void] None.
23          */
24         public void turnOn();
25
26
27         /** Method to get the current on/off state of the light bulb.
28          *
29          *   @return [boolean] True means bulb on.
30          */
31         public boolean getState();
32
33
34         /** Method to set the light bulb color using Standard Hue, Saturation and Brightness
35          * conventions. See "http://www.tydac.ch/color/" for reference.
36          *
37          *   @param _hue [double]: Hue value (in degrees).
38          *   @param _saturation [double]: Saturation value (percentage).
39          *   @param _brightness [double]: Brightness value (percentage).
40          *
41          *   @return [void] None.
42          */
43         public void setColor(double _hue, double _saturation, double _brightness);
44
45
46         /** Method to set the color temperature.
47          *
48          *   @param _temperature [int]: Color temperature in degrees kelvin.
49          *
50          *   @return [void] None.
51          */
52         public void setTemperature(int _temperature);
53
54
55         /** Method to get the current hue value of the bulb.
56          *
57          *   @return [double] Current hue value of the bulb in degrees.
58          */
59         public double getHue();
60
61
62         /** Method to get the current saturation value of the bulb.
63          *
64          *   @return [double] Current saturation value of the bulb as a percentage.
65          */
66         public double getSaturation();
67
68
69         /** Method to get the current brightness value of the bulb.
70          *
71          *   @return [double] Current brightness value of the bulb as a percentage.
72          */
73         public double getBrightness();
74
75
76         /** Method to get the current color temperature value of the bulb.
77          *
78          *   @return [double] Current color temperature value of the bulb in kelvin.
79          */
80         public int getTemperature();
81
82
83         /** Method to get the hue range lower bound supported by the bulb.
84          *
85          *   @return [double] Hue lower bound in degrees.
86          */
87         public double getHueRangeLowerBound();
88
89
90         /** Method to get the hue range upper bound supported by the bulb.
91          *
92          *   @return [double] Hue upper bound in degrees.
93          */
94         public double getHueRangeUpperBound();
95
96
97         /** Method to get the saturation range lower bound supported by the bulb.
98          *
99          *   @return [double] Saturation lower bound as a percentage.
100          */
101         public double getSaturationRangeLowerBound();
102
103
104         /** Method to get the saturation range upper bound supported by the bulb.
105          *
106          *   @return [double] Saturation upper bound as a percentage.
107          */
108         public double getSaturationRangeUpperBound();
109
110
111         /** Method to get the brightness range lower bound supported by the bulb.
112          *
113          *   @return [double] Brightness lower bound as a percentage.
114          */
115         public double getBrightnessRangeLowerBound();
116
117
118         /** Method to get the brightness range upper bound supported by the bulb.
119          *
120          *   @return [double] Brightness upper bound as a percentage.
121          */
122         public double getBrightnessRangeUpperBound();
123
124
125         /** Method to get the temperature range lower bound supported by the bulb.
126          *
127          *   @return [int] Temperature lower bound as a percentage.
128          */
129         public int getTemperatureRangeLowerBound();
130
131
132         /** Method to get the temperature range upper bound supported by the bulb.
133          *
134          *   @return [int] Temperature upper bound as a percentage.
135          */
136         public int getTemperatureRangeUpperBound();
137
138
139         /** Method to initialize the bulb, if the bulb needs to be initialized.
140          *
141          *   @return [void] None.
142          */
143         public void init();
144
145 }
146
147
148
149
150
151
152
153
154
155
156
157
158
159