EnOcean Link  1.14.0.0
Middleware to Connect EnOcean easily to other Projects
eoEEP_A512xx.h
Go to the documentation of this file.
1 /******************************************************************************
2  DISCLAIMER
3 
4  THIS SOFTWARE PRODUCT ("SOFTWARE") IS PROPRIETARY TO ENOCEAN GMBH, OBERHACHING,
5  GERMANY (THE "OWNER") AND IS PROTECTED BY COPYRIGHT AND INTERNATIONAL TREATIES OR
6  PROTECTED AS TRADE SECRET OR AS OTHER INTELLECTUAL PROPERTY RIGHT. ALL RIGHTS, TITLE AND
7  INTEREST IN AND TO THE SOFTWARE, INCLUDING ANY COPYRIGHT, TRADE SECRET OR ANY OTHER
8  INTELLECTUAL PROPERTY EMBODIED IN THE SOFTWARE, AND ANY RIGHTS TO REPRODUCE,
9  DISTRIBUTE, MODIFY, DISPLAY OR OTHERWISE USE THE SOFTWARE SHALL EXCLUSIVELY VEST IN THE
10  OWNER. ANY UNAUTHORIZED REPRODUCTION, DISTRIBUTION, MODIFICATION, DISPLAY OR OTHER
11  USE OF THE SOFTWARE WITHOUT THE EXPLICIT PERMISSION OF OWNER IS PROHIBITED AND WILL
12  CONSTITUTE AN INFRINGEMENT OF THE OWNER'S RIGHT AND MAY BE SUBJECT TO CIVIL OR
13  CRIMINAL SANCTION.
14 
15  THIS SOFTWARE IS PROVIDED BY THE OWNER "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
16  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
17  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN PARTICULAR, THE OWNER DOES NOT WARRANT
18  THAT THE SOFTWARE SHALL BE ERROR FREE AND WORKS WITHOUT INTERRUPTION.
19 
20  IN NO EVENT SHALL THE OWNER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  ******************************************************************************/
27 
29 
30 #if !defined(eoEEP_A512_H__INCLUDED_)
31 #define eoEEP_A512_H__INCLUDED_
32 
35 #include "eoA5EEProfile.h"
106 typedef enum
108 {
110  CUMULATIVE = 0x00,
112  CURRENT = 0x01
114 
116 typedef enum
117 {
126 } BATTERY_LEVEL;
127 
129 typedef enum
130 {
136 
138 typedef enum
139 {
161 
163 {
164 
165 public:
166  eoReturn SetType(uint8_t type);
167 
168  eoEEP_A512xx();
169  virtual ~eoEEP_A512xx();
170  virtual eoReturn GetValue(CHANNEL_TYPE type, float &value, uint8_t index);
171  virtual eoReturn SetValue(CHANNEL_TYPE type, float value, uint8_t index);
172  virtual eoReturn GetValue(CHANNEL_TYPE type, uint32_t &value, uint8_t index);
173  virtual eoReturn SetValue(CHANNEL_TYPE type, uint32_t value, uint8_t index);
174 
175  virtual eoChannelInfo* GetChannel(CHANNEL_TYPE type);
176 private:
177  eoReturn CalculateDivisorAndRawValue(float value, uint32_t & rawValue);
178 };
181 #endif // !defined(EA_259BDE62_FE41_490e_8B3E_427A72922C4A__INCLUDED_)
Location 2 2
Definition: eoEEP_A512xx.h:145
EnOcean Equipment Profiles.
Definition: eoA5EEProfile.h:85
SENSOR_POSITION_INDEX_ENUM
Sensor position index enums for A5-12-05 profiles.
Definition: eoEEP_A512xx.h:138
uint8_t type
Type.
Definition: eoProfile.h:69
eoReturn SetType(uint8_t type)
The class to handle EEP a512 Automated meter reading (AMR) profiles.
Definition: eoEEP_A512xx.h:162
virtual eoReturn SetValue(CHANNEL_TYPE type, float value, uint8_t index)
Gets the Value as a float.
Location 1 1
Definition: eoEEP_A512xx.h:143
1 or kWh or m^3 0
Definition: eoEEP_A512xx.h:110
Location 4 4
Definition: eoEEP_A512xx.h:149
SENSOR_POSITION_ENUM
Sensor position enums for A5-12-05 profiles.
Definition: eoEEP_A512xx.h:129
1/s or W or liter/s 1
Definition: eoEEP_A512xx.h:112
Location 3 3
Definition: eoEEP_A512xx.h:147
Location 0 0
Definition: eoEEP_A512xx.h:141
Battery level 100-75% 0
Definition: eoEEP_A512xx.h:119
Abstract class for channel information. Abstract class for channel information. From this class speci...
Definition: eoChannelInfo.h:77
DATA_TYPE_METER_READING
Data type enums for A5-12-xx profiles.
Definition: eoEEP_A512xx.h:107
Location 8 8
Definition: eoEEP_A512xx.h:157
Not possessed 0
Definition: eoEEP_A512xx.h:132
eoReturn
contains all the return values from different functions
Definition: eoApiDef.h:40
virtual eoReturn GetValue(CHANNEL_TYPE type, float &value, uint8_t index)
Gets the Value as Floating point.
Possessed 1
Definition: eoEEP_A512xx.h:134
Battery level 75-50% 1
Definition: eoEEP_A512xx.h:121
CHANNEL_TYPE
Definition: eoChannelEnums.h:169
Battery level 25-0% 3
Definition: eoEEP_A512xx.h:125
BATTERY_LEVEL
Battery enums for A5-12-xx profiles.
Definition: eoEEP_A512xx.h:116
virtual eoChannelInfo * GetChannel(CHANNEL_TYPE type)
Location 5 5
Definition: eoEEP_A512xx.h:151
Location 6 6
Definition: eoEEP_A512xx.h:153
Battery level 50-25% 2
Definition: eoEEP_A512xx.h:123
Location 9 9
Definition: eoEEP_A512xx.h:159
Location 7 7
Definition: eoEEP_A512xx.h:155