EnOcean Link
1.14.0.0
Middleware to Connect EnOcean easily to other Projects
|
Generic Profile Channel. More...
#include <eoGPChannelInfo.h>
Public Member Functions | |
eoGPChannelInfo () | |
eoGPChannelInfo (CHANNEL_TYPE type, GP_RESOLUTION resolution, int8_t engMaximum, int8_t engMinimum, GP_SCALING scaleMaximum, GP_SCALING scaleMinimum) | |
GP_CHANNELTYPE | GetGPChannelType () const |
Get the channel type - signal, flag etc. | |
GP_RESOLUTION | GetResolution () const |
Get the resolution of the channel type. | |
int8_t | GetEngMax () const |
Get the enginnering maximum - without scale. | |
eoReturn | Scale (int8_t engMaximum) |
int8_t | GetEngMin () const |
Get the the enginnering minimum - without scale. | |
GP_SCALING | GetScaleMax () const |
Get the GP_SCALING of engineering maximum. | |
GP_SCALING | GetScaleMin () const |
Get the GP_SCALING of engineering minimum. | |
void | SetRejected (uint8_t rejected) |
Set the rejected flag of the channel. | |
uint8_t | GetRejected () |
Get the rejected flag of the channel. | |
uint8_t | Serialize (eoArchive &a) |
virtual uint8_t | GetSubIndex () |
uint8_t | SetSubIndex (uint8_t u8Subindex) |
Public Member Functions inherited from eoChannelInfo | |
const char * | ToString (uint8_t strType) |
void | SetName (const char *name) |
Static Public Member Functions | |
static GP_CHANNELTYPE | GetGPChannelType (CHANNEL_TYPE type) |
Get the channel type - signal, flag etc. | |
static float | ScaleToFloat (GP_SCALING scale) |
Public Attributes | |
uint16_t | bitoffs |
Offset of the channel value in data legram in bits. | |
Public Attributes inherited from eoChannelInfo | |
CHANNEL_TYPE | type |
CHANNEL_TYPE | |
VALUE_TYPE | signalType |
Current, Setpoint Absolute, Setpoint relative. | |
double | min |
Min as clear value. | |
double | max |
Max as clear value. | |
Generic Profile Channel.
Implements the Generic Profile Channel as described in the GP specification, with the following differences:
CHANNEL_TYPE type contains all Signal,ENUM types. If you want to check the Generic Profile Channel Type use getGPChannelType();
After setting the resolution or the scaling or the engineering values, the real max and min value will be recalculated.
eoGPChannelInfo::eoGPChannelInfo | ( | ) |
bitoffs is Calculated automatically and should not be changed!!
eoGPChannelInfo::eoGPChannelInfo | ( | CHANNEL_TYPE | type, |
GP_RESOLUTION | resolution, | ||
int8_t | engMaximum, | ||
int8_t | engMinimum, | ||
GP_SCALING | scaleMaximum, | ||
GP_SCALING | scaleMinimum | ||
) |
Creates an new Generic profil channel info with specific variables.
type | Type of the channel - signal, flag etc. |
resolution | Resolution of the new channel. |
engMaximum | Engineering maximum of the expected value. |
engMinimum | Engineering minimum of the expected value. |
scaleMaximum | Scaling factor for engineering maximum of the expected value. |
scaleMinimum | Scaling factor for engineering minimum of the expected value. |
|
inlinevirtual |
If in a profile multiple Channels Exist with same type, this returns the "SubIndex" for this profile
Reimplemented from eoChannelInfo.
eoReturn eoGPChannelInfo::Scale | ( | int8_t | engMaximum | ) |
Scale the value according a engineering maximum.
engMaximum |
|
static |
Convert the GP_SCALING to a float multiplier.
scale | the intended scale. |
|
virtual |