EnOcean Link  1.14.0.0
Middleware to Connect EnOcean easily to other Projects
eoEEProfile Class Reference

base class for EEProfile parsing More...

#include <eoEEProfile.h>

Inheritance diagram for eoEEProfile:
Collaboration diagram for eoEEProfile:

Public Member Functions

 eoEEProfile (uint16_t size=4)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, float &value)
 Gets the Value as Floating Point. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint8_t &value)
 Sets the Value using a unsigned integer. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint32_t &value)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint8_t &value, uint8_t subFlag)
 Gets the Value as unsigned integer. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint32_t &value, uint8_t subFlag)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint64_t &value, uint8_t subFlag)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, float &value, uint8_t subFlag)
 Gets the Value as Floating point. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, float value)
 Sets the Value using a Floating Point. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint8_t value)
 Sets the Value using a uint8_t. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint32_t value)
 
virtual eoReturn SetValue (CHANNEL_TYPE type, float value, uint8_t subFlag)
 Gets the Value as a float. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint8_t value, uint8_t subFlag)
 Gets the Value as unsigned integer. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint32_t value, uint8_t subFlag)
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint64_t value, uint8_t subFlag)
 Sets the Value as a 64-bit. More...
 
virtual eoChannelInfoGetChannel (CHANNEL_TYPE type, uint8_t subType)
 
virtual eoChannelInfoGetChannel (CHANNEL_TYPE type)
 
virtual eoChannelInfoGetChannel (uint8_t channelNumber)
 
virtual eoReturn GetSubTypeChannel (CHANNEL_TYPE type, std::vector< eoEEPChannelInfo *> &vector)
 
virtual uint8_t GetChannelCount () const
 
- Public Member Functions inherited from eoProfile
 eoProfile (uint16_t size=0)
 
virtual bool operator== (const eoProfile &othProfile) const
 
virtual bool operator!= (const eoProfile &othProfile) const
 
virtual bool IsSecDData (const eoMessage &message)
 
virtual void ClearValues ()
 
virtual eoReturn Create (eoMessage &m)
 Generates an EEP Message. More...
 
virtual eoReturn CreateTeachIN (eoMessage &m)
 Generates an EEP Telegram(only not chained supported!!1) More...
 
virtual eoReturn Parse (const eoMessage &msg)
 Parses a msg using learned in Profile from Device. More...
 
virtual eoReturn SetType (uint8_t type)
 
virtual uint8_t Serialize (eoArchive &a)
 Serialization Function which will be called by the eoStorageManager. More...
 
eoReturn SetManufacturer (uint16_t manufacturerID)
 

Static Protected Member Functions

static void CopyItemToChannel (eoEEPChannelInfo &channel, EEP_ITEM const *item)
 
- Static Protected Member Functions inherited from eoProfile
static float ScaleFromRAW (uint32_t rawValue, uint32_t rangeMin, uint32_t rangeMax, double scaleMin, double scaleMax)
 Creates floating Point from Raw Value. More...
 
static uint32_t ScaleToRAW (float value, uint32_t rangeMin, uint32_t rangeMax, double scaleMin, double scaleMax)
 Creates Raw Value from a floating Point. More...
 
static eoReturn GetRawValue (const eoMessage &msg, uint32_t &value, uint16_t offset, uint8_t size)
 Gives raw data Value from a Message. More...
 
static eoReturn SetRawValue (eoMessage &msg, uint32_t value, uint16_t offset, uint8_t size)
 Inserts raw data Value in a message. More...
 

Protected Attributes

eoEEPChannelInfochannel
 ChannelInfo list for direct Access to channels.
 
uint8_t channelCount
 Number of channels.
 
- Protected Attributes inherited from eoProfile
eoMessage msg
 helper function to convert bits
 

Additional Inherited Members

- Public Attributes inherited from eoProfile
uint8_t rorg
 R-ORG.
 
uint8_t func
 Func.
 
uint8_t type
 Type.
 
uint16_t manufacturer
 Manufacturer.
 
- Static Protected Attributes inherited from eoProfile
static const uint8_t maskArray [8]
 Mask array.
 

Detailed Description

base class for EEProfile parsing

This class is the base class for all eoEEProfiles.

Constructor & Destructor Documentation

◆ eoEEProfile()

eoEEProfile::eoEEProfile ( uint16_t  size = 4)

Constructor

Parameters
sizeDefault size of the expected message.

Member Function Documentation

◆ GetChannel() [1/3]

virtual eoChannelInfo* eoEEProfile::GetChannel ( CHANNEL_TYPE  type,
uint8_t  subType 
)
virtual

Returns the channel for the selected type and subtype

Parameters
typeCHANNEL_TYPE
subTypeis either the numeric "subChannelNUmber" (temperature CHannel 0,1,2,3) or a specified keyword for it(see profile)
Returns
Pointer to Channel

Reimplemented from eoProfile.

Reimplemented in eoEEP_A520xx, eoEEP_D233xx, and eoEEP_D220xx.

◆ GetChannel() [2/3]

virtual eoChannelInfo* eoEEProfile::GetChannel ( CHANNEL_TYPE  type)
virtual

Returns the channel for the selected type

Parameters
typeCHANNEL_TYPE
Returns
Pointer to ChannelInfo or Null

Reimplemented from eoProfile.

Reimplemented in eoEEP_A512xx, eoEEP_A506xx, eoEEP_F602xx, eoEEP_F605xx, eoEEP_F603xx, eoEEP_F601xx, eoEEP_F610xx, and eoEEP_F604xx.

◆ GetChannel() [3/3]

virtual eoChannelInfo* eoEEProfile::GetChannel ( uint8_t  channelNumber)
virtual

returns the pointer to eoChannelInfo for the selected channelNumber or NULL

Parameters
channelNumber
Returns
Pointer to Channel

Reimplemented from eoProfile.

◆ GetChannelCount()

virtual uint8_t eoEEProfile::GetChannelCount ( ) const
virtual

Returns Number of channels for this profile

Returns
number of channels

Reimplemented from eoProfile.

◆ GetSubTypeChannel()

virtual eoReturn eoEEProfile::GetSubTypeChannel ( CHANNEL_TYPE  type,
std::vector< eoEEPChannelInfo *> &  vector 
)
virtual

returns vector containing subtype values

Parameters
typeCHANNEL_TYPE
vector
Returns
EO_OK

Reimplemented from eoProfile.

◆ GetValue() [1/4]

virtual eoReturn eoEEProfile::GetValue ( CHANNEL_TYPE  type,
float &  value 
)
virtual

Gets the Value as Floating Point.

Using the CHANNEL_TYPE type information, this information gets the floating point value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_D200xx, eoEEP_A506xx, eoEEP_A507xx, and eoEEP_A504xx.

◆ GetValue() [2/4]

virtual eoReturn eoEEProfile::GetValue ( CHANNEL_TYPE  type,
uint8_t &  value 
)
virtual

Sets the Value using a unsigned integer.

Using the CHANNEL_TYPE type information, this information sets the channel raw value, using the floating point value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
valueReference to uint8_t
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_A507xx, eoEEP_A504xx, eoEEP_A508xx, and eoEEP_A505xx.

◆ GetValue() [3/4]

virtual eoReturn eoEEProfile::GetValue ( CHANNEL_TYPE  type,
uint8_t &  value,
uint8_t  subFlag 
)
virtual

Gets the Value as unsigned integer.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to value
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

◆ GetValue() [4/4]

virtual eoReturn eoEEProfile::GetValue ( CHANNEL_TYPE  type,
float &  value,
uint8_t  subFlag 
)
virtual

Gets the Value as Floating point.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_A520xx, eoEEP_D210xx, eoEEP_D230xx, eoEEP_D201xx, eoEEP_A538xx, eoEEP_A510xx, eoEEP_D205xx, eoEEP_A511xx, eoEEP_A513xx, eoEEP_D200xx, eoEEP_A509xx, eoEEP_D211xx, eoEEP_A512xx, eoEEP_A530xx, eoEEP_D202xx, eoEEP_D231xx, and eoEEP_D232xx.

◆ SetValue() [1/5]

virtual eoReturn eoEEProfile::SetValue ( CHANNEL_TYPE  type,
float  value 
)
virtual

Sets the Value using a Floating Point.

Using the CHANNEL_TYPE type information, this information sets the channel raw value, using the floating point value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_D200xx, eoEEP_A506xx, eoEEP_A507xx, and eoEEP_A504xx.

◆ SetValue() [2/5]

virtual eoReturn eoEEProfile::SetValue ( CHANNEL_TYPE  type,
uint8_t  value 
)
virtual

Sets the Value using a uint8_t.

Using the CHANNEL_TYPE type information, this information sets the channel raw value, using the uint8_t value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_A507xx, eoEEP_A504xx, eoEEP_A508xx, and eoEEP_A505xx.

◆ SetValue() [3/5]

virtual eoReturn eoEEProfile::SetValue ( CHANNEL_TYPE  type,
float  value,
uint8_t  subFlag 
)
virtual

Gets the Value as a float.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_A520xx, eoEEP_D210xx, eoEEP_D230xx, eoEEP_D201xx, eoEEP_A538xx, eoEEP_A510xx, eoEEP_D205xx, eoEEP_A511xx, eoEEP_A513xx, eoEEP_D200xx, eoEEP_D20601, eoEEP_A52006, eoEEP_A509xx, eoEEP_D20611, eoEEP_D211xx, eoEEP_A512xx, eoEEP_A530xx, eoEEP_D202xx, eoEEP_D20610, eoEEP_A5090D, eoEEP_D20640, and eoEEP_D232xx.

◆ SetValue() [4/5]

virtual eoReturn eoEEProfile::SetValue ( CHANNEL_TYPE  type,
uint8_t  value,
uint8_t  subFlag 
)
virtual

Gets the Value as unsigned integer.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to uint8_t
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

◆ SetValue() [5/5]

virtual eoReturn eoEEProfile::SetValue ( CHANNEL_TYPE  type,
uint64_t  value,
uint8_t  subFlag 
)
virtual

Sets the Value as a 64-bit.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
value64-bit value
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

Reimplemented in eoEEP_D20701.