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

base class for Profile parsing More...

#include <eoProfile.h>

Inheritance diagram for eoProfile:
Collaboration diagram for eoProfile:

Public Member Functions

 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 GetValue (CHANNEL_TYPE type, float &value)
 Gets the Value as Floating Point. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, float &value, uint8_t subFlag)
 Gets the Value as Floating point. More...
 
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 SetValue (CHANNEL_TYPE type, float value, uint8_t subFlag)
 Gets the Value as a float. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint64_t value, uint8_t subFlag)
 Sets the Value as a 64-bit. 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 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, 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 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 eoReturn SetType (uint8_t type)
 
virtual uint8_t Serialize (eoArchive &a)
 Serialization Function which will be called by the eoStorageManager. More...
 
virtual uint8_t GetChannelCount () const
 
eoReturn SetManufacturer (uint16_t manufacturerID)
 

Public Attributes

uint8_t rorg
 R-ORG.
 
uint8_t func
 Func.
 
uint8_t type
 Type.
 
uint16_t manufacturer
 Manufacturer.
 

Static Protected Member Functions

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

eoMessage msg
 helper function to convert bits
 

Static Protected Attributes

static const uint8_t maskArray [8]
 Mask array.
 

Detailed Description

base class for Profile parsing

The eoProfile class, enables an abstract Layer for handling the two different Profile Worlds of the EnOcean world. It adds an easy to use Interface for your application, and in the most cases your application does not need to care which sort of profile you're using. The GetValue and SetValue enables an easy way to read and write Sensor and other Data to a Message.

The Real Implementation for EEP is done in the eoEEProfile and for the Generic Profiles in the eoGenericProfile class. profile_examples.cpp

Examples:
Gateway_example.cpp, Gateway_SubtypeExample.cpp, GatewayFiltered_example.cpp, genericProfile_examples.cpp, profile_examples.cpp, Security_example.cpp, sendTelegram_example.cpp, tutorial1.cpp, tutorial2.cpp, tutorial3.cpp, tutorial6.cpp, vld_example.cpp, and WatcherMain.cpp.

Constructor & Destructor Documentation

◆ eoProfile()

eoProfile::eoProfile ( uint16_t  size = 0)

eoProfile constructor.

Parameters
sizeDefault size of messages.

Member Function Documentation

◆ ClearValues()

virtual void eoProfile::ClearValues ( )
virtual

All raw values of the internal Message will be set to zero.

Reimplemented in eoEEP_A520xx, eoEEP_A538xx, eoGenericProfile, eoEEP_D2A0xx, eoEEP_D203xx, eoEEP_F602xx, and eoEEP_F603xx.

Examples:
profile_examples.cpp, and sendTelegram_example.cpp.

◆ Create()

virtual eoReturn eoProfile::Create ( eoMessage m)
virtual

Generates an EEP Message.

This functions generates a Message for the specified EEP, with the current ChannelInfo values

Parameters
mReference to the Message (will be cleared and generated new)
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented in eoEEP_A520xx, eoGenericProfile, eoEEP_D20611, eoF6EEProfile, eoEEP_D2A0xx, and eoA5EEProfile.

Examples:
genericProfile_examples.cpp, profile_examples.cpp, Security_example.cpp, sendTelegram_example.cpp, tutorial3.cpp, and vld_example.cpp.

◆ CreateTeachIN()

virtual eoReturn eoProfile::CreateTeachIN ( eoMessage m)
virtual

Generates an EEP Telegram(only not chained supported!!1)

This functions generates a Message for the specified EEP, with the current ChannelInfo values

Parameters
mReference to the Message (will be cleared and generated new)
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented in eoGenericProfile, eoD2EEProfile, and eoA5EEProfile.

Examples:
Security_example.cpp, and tutorial3.cpp.

◆ GetChannel() [1/3]

virtual eoChannelInfo* eoProfile::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 in eoEEP_A520xx, eoEEP_D233xx, eoGenericProfile, eoEEP_D220xx, and eoEEProfile.

Examples:
Gateway_example.cpp, Gateway_SubtypeExample.cpp, GatewayFiltered_example.cpp, genericProfile_examples.cpp, sendTelegram_example.cpp, tutorial1.cpp, tutorial6.cpp, vld_example.cpp, and WatcherMain.cpp.

◆ GetChannel() [2/3]

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

Returns the channel for the selected type

Parameters
typeCHANNEL_TYPE
Returns
Pointer to ChannelInfo or Null

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

◆ GetChannel() [3/3]

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

returns the pointer to eoChannelInfo for the selected channelNumber or NULL

Parameters
channelNumber
Returns
Pointer to Channel

Reimplemented in eoGenericProfile, and eoEEProfile.

◆ GetChannelCount()

virtual uint8_t eoProfile::GetChannelCount ( ) const
virtual

◆ GetRawValue()

static eoReturn eoProfile::GetRawValue ( const eoMessage msg,
uint32_t &  value,
uint16_t  offset,
uint8_t  size 
)
staticprotected

Gives raw data Value from a Message.

Given the right position(offset) and the bitsize(size), this function gives the rawData Value from a message

Parameters
msgMessage to use to get the rawValue
valuethe rawValue
offsetposition of the Data in the telegram
sizesize of the data
Returns
eoReturn

◆ GetSubTypeChannel()

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

returns vector containing subtype values

Parameters
typeCHANNEL_TYPE
vector
Returns
EO_OK

Reimplemented in eoEEProfile.

Examples:
Gateway_SubtypeExample.cpp.

◆ GetValue() [1/4]

virtual eoReturn eoProfile::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 in eoEEP_D200xx, eoGenericProfile, eoEEP_A506xx, eoEEP_A507xx, eoEEP_A504xx, and eoEEProfile.

Examples:
Gateway_example.cpp, Gateway_SubtypeExample.cpp, GatewayFiltered_example.cpp, genericProfile_examples.cpp, profile_examples.cpp, sendTelegram_example.cpp, tutorial1.cpp, tutorial2.cpp, tutorial3.cpp, tutorial6.cpp, vld_example.cpp, and WatcherMain.cpp.

◆ GetValue() [2/4]

virtual eoReturn eoProfile::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 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, eoGenericProfile, eoEEP_A530xx, eoEEP_D202xx, eoEEP_D231xx, eoEEP_D232xx, and eoEEProfile.

◆ GetValue() [3/4]

virtual eoReturn eoProfile::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 in eoGenericProfile, and eoEEProfile.

◆ GetValue() [4/4]

virtual eoReturn eoProfile::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 in eoGenericProfile, eoEEP_A507xx, eoEEP_A504xx, eoEEProfile, eoEEP_A508xx, and eoEEP_A505xx.

◆ IsSecDData()

virtual bool eoProfile::IsSecDData ( const eoMessage message)
virtual

Checks if the data is RORG_SECD

Parameters
messageto check
Returns
true or false;

Reimplemented in eoA5EEProfile.

◆ operator!=()

virtual bool eoProfile::operator!= ( const eoProfile othProfile) const
virtual

Returns true if rorg,func and type are different.

Parameters
othProfile
Returns
true or false

◆ operator==()

virtual bool eoProfile::operator== ( const eoProfile othProfile) const
virtual

Returns true if rorg,func and type are the same.

Parameters
othProfile
Returns
true or false

◆ Parse()

virtual eoReturn eoProfile::Parse ( const eoMessage msg)
virtual

Parses a msg using learned in Profile from Device.

This function will parse the Message msg using the Profile Specific data

Parameters
msgMessage to parse
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented in eoEEP_D21030, eoEEP_D210xx, eoEEP_D21120, eoEEP_D230xx, eoEEP_D201xx, eoEEP_A538xx, eoEEP_D24100, eoEEP_D233xx, eoEEP_D205xx, eoEEP_A513xx, eoEEP_D20503, eoEEP_D234xx, eoEEP_D220xx, eoEEP_D200xx, eoEEP_D20601, eoSignal, eoEEP_D211xx, eoEEP_D20620, eoGenericProfile, eoEEP_D202xx, eoEEP_D240xx, eoF6EEProfile, eoEEP_D231xx, eoEEP_D2A0xx, eoA5EEProfile, eoEEP_D203xx, eoEEP_D2B0xx, and eoEEP_D500xx.

Examples:
profile_examples.cpp.

◆ ScaleFromRAW()

static float eoProfile::ScaleFromRAW ( uint32_t  rawValue,
uint32_t  rangeMin,
uint32_t  rangeMax,
double  scaleMin,
double  scaleMax 
)
staticprotected

Creates floating Point from Raw Value.

Converts the rawValue into a floating Point value, using the parameters and the formula specified in the [GP]
To get values use GetValue() !
!Warning this function does not check if the rawValue is in range!

Parameters
rawValuerawValue to convert
rangeMinmaximal rawValue
rangeMaxminimal rawValue
scaleMinminimal Value
scaleMaxminimal Value
Returns
the Value as floating Point

◆ ScaleToRAW()

static uint32_t eoProfile::ScaleToRAW ( float  value,
uint32_t  rangeMin,
uint32_t  rangeMax,
double  scaleMin,
double  scaleMax 
)
staticprotected

Creates Raw Value from a floating Point.

Converts the floating Point into a raw value, using the parameters and the formula specified in the [GP]
To set values use SetValue() !
!Warning this function does not check if the rawValue is in range!

Parameters
valueFloating Point to convert
rangeMinmaximal rawValue
rangeMaxminimal rawValue
scaleMinminimal Value
scaleMaxminimal Value
Returns

◆ Serialize()

virtual uint8_t eoProfile::Serialize ( eoArchive arch)
virtual

Serialization Function which will be called by the eoStorageManager.

This function will be called by the eoArchive(inside of the eoStorageManager) and allows the class to be Serialized.

Parameters
archarchive where to Load or to Store.

Implements eoISerialize.

Reimplemented in eoGenericProfile.

◆ SetManufacturer()

eoReturn eoProfile::SetManufacturer ( uint16_t  manufacturerID)

Sets the manufacturer ID.

Returns
eoReturn EO_OK or NOT_SUPPORTED

◆ SetRawValue()

static eoReturn eoProfile::SetRawValue ( eoMessage msg,
uint32_t  value,
uint16_t  offset,
uint8_t  size 
)
staticprotected

Inserts raw data Value in a message.

Given the right position(offset) and the bitsize(size), this function modifies the rawValue of a message (other information will not bet set!)

Parameters
msgMessage to use to get the rawValue
valuethe rawValue
offsetposition of the Data in the telegram
sizesize of the data
Returns
eoReturn

◆ SetType()

virtual eoReturn eoProfile::SetType ( uint8_t  type)
virtual

Sets and checks if the specified [EEP] type is supported

Parameters
type
Returns
eoReturn EO_OK or NOT_SUPPORTED

Reimplemented in eoEEP_D21030, eoEEP_A520xx, eoEEP_D210xx, eoEEP_D21120, eoEEP_D230xx, eoEEP_D201xx, eoEEP_D24100, eoEEP_D233xx, eoEEP_A538xx, eoEEP_A510xx, eoEEP_D205xx, eoEEP_A511xx, eoEEP_A513xx, eoEEP_D20503, eoEEP_D234xx, eoEEP_D220xx, eoEEP_D200xx, eoEEP_D20601, eoEEP_A52006, eoEEP_D204xx, eoEEP_A509xx, eoEEP_D21457, eoEEP_D20611, eoEEP_D26003, eoSignal, eoEEP_D26001, eoEEP_D2145B, eoEEP_D211xx, eoGenericProfile, eoEEP_A512xx, eoEEP_D20620, eoEEP_D2145C, eoEEP_A530xx, eoEEP_A514xx, eoEEP_D26000, eoEEP_D20701, eoEEP_D21459, eoEEP_D202xx, eoEEP_D21441, eoEEP_D21431, eoEEP_D240xx, eoEEP_D21440, eoEEP_D20610, eoEEP_D21430, eoEEP_A5090D, eoEEP_D20002, eoEEP_D20640, eoEEP_D2145A, eoEEP_D2140E, eoEEP_D2140A, eoEEP_D2145D, eoEEP_D231xx, eoEEP_D26002, eoEEP_D2A0xx, eoEEP_D21401, eoEEP_D2141D, eoEEP_D2140D, eoEEP_D21452, eoEEP_D21405, eoEEP_D21408, eoEEP_D21409, eoEEP_D21456, eoEEP_D21454, eoEEP_D21455, eoEEP_D21410, eoEEP_D2141B, eoEEP_D2141C, eoEEP_D21420, eoEEP_D21425, eoEEP_D21500, eoEEP_D21403, eoEEP_D21404, eoEEP_D21407, eoEEP_D2140B, eoEEP_D2140F, eoEEP_D20700, eoEEP_D21453, eoEEP_D2141A, eoEEP_D21422, eoEEP_D21423, eoEEP_D232xx, eoEEP_D21400, eoEEP_D21450, eoEEP_D21451, eoEEP_D2B100, eoEEP_D203xx, eoEEP_D2030A, eoEEP_D21421, eoEEP_D21424, eoEEP_A502xx, eoEEP_D21402, eoEEP_D21406, eoEEP_D2140C, eoEEP_A537xx, eoEEP_D20Axx, eoEEP_A506xx, eoEEP_A504xx, eoEEP_F602xx, eoEEP_D2B0xx, eoEEP_F605xx, eoEEP_A507xx, eoEEP_F603xx, eoEEP_A508xx, eoEEP_A505xx, eoEEP_F601xx, eoEEP_F610xx, eoEEP_D500xx, and eoEEP_F604xx.

◆ SetValue() [1/5]

virtual eoReturn eoProfile::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 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, eoGenericProfile, eoEEP_A530xx, eoEEP_D202xx, eoEEP_D20610, eoEEP_A5090D, eoEEP_D20640, eoEEP_D232xx, and eoEEProfile.

Examples:
genericProfile_examples.cpp, profile_examples.cpp, Security_example.cpp, sendTelegram_example.cpp, tutorial3.cpp, and vld_example.cpp.

◆ SetValue() [2/5]

virtual eoReturn eoProfile::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 in eoEEP_D20701, and eoEEProfile.

◆ SetValue() [3/5]

virtual eoReturn eoProfile::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 in eoGenericProfile, and eoEEProfile.

◆ SetValue() [4/5]

virtual eoReturn eoProfile::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 in eoEEP_D200xx, eoGenericProfile, eoEEP_A506xx, eoEEProfile, eoEEP_A507xx, and eoEEP_A504xx.

◆ SetValue() [5/5]

virtual eoReturn eoProfile::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 in eoGenericProfile, eoEEProfile, eoEEP_A507xx, eoEEP_A504xx, eoEEP_A508xx, and eoEEP_A505xx.