libhomegear-base  0.7
Base library for Homegear and Homegear family modules.
BaseLib::DeviceDescription::Function Class Reference

Class defining a device function or channel. More...

#include <Function.h>

Classes

struct  Direction
 

Public Member Functions

 Function (BaseLib::SharedObjects *baseLib)
 
 Function (BaseLib::SharedObjects *baseLib, xml_node *node, uint32_t &channel)
 
virtual ~Function ()
 
bool parameterSetDefined (ParameterGroup::Type::Enum type)
 
PParameterGroup getParameterGroup (ParameterGroup::Type::Enum type)
 

Public Attributes

uint32_t channel = 0
 
std::string type
 
uint32_t channelCount = 1
 
bool encryptionEnabledByDefault = false
 
bool visible = true
 
bool deletable = false
 
bool internal = false
 
std::string countFromVariable
 
int32_t dynamicChannelCountIndex = -1
 
double dynamicChannelCountSize = 1
 
int32_t physicalChannelIndexOffset = 0
 
bool grouped = false
 
Direction::Enum direction = Direction::Enum::none
 
bool forceEncryption = false
 
std::string defaultLinkScenarioElementId
 
std::string defaultGroupedLinkScenarioElementId1
 
std::string defaultGroupedLinkScenarioElementId2
 
bool hasGroup = false
 
std::string groupId
 
std::unordered_map< std::string, BaseLib::PVariablelinkSenderAttributes
 
std::unordered_map< std::string, BaseLib::PVariablelinkReceiverAttributes
 
LinkFunctionTypes linkSenderFunctionTypes
 
LinkFunctionTypes linkReceiverFunctionTypes
 
std::string configParametersId
 
std::string variablesId
 
std::string linkParametersId
 
std::vector< PFunctionalternativeFunctions
 
PParameter parameterGroupSelector
 
PConfigParameters configParameters
 
PVariables variables
 
PLinkParameters linkParameters
 

Protected Attributes

BaseLib::SharedObjects_bl = nullptr
 

Detailed Description

Class defining a device function or channel.

One device can have multiple functions.

Constructor & Destructor Documentation

§ Function() [1/2]

BaseLib::DeviceDescription::Function::Function ( BaseLib::SharedObjects baseLib)

§ Function() [2/2]

BaseLib::DeviceDescription::Function::Function ( BaseLib::SharedObjects baseLib,
xml_node node,
uint32_t &  channel 
)

§ ~Function()

virtual BaseLib::DeviceDescription::Function::~Function ( )
inlinevirtual

Member Function Documentation

§ getParameterGroup()

PParameterGroup BaseLib::DeviceDescription::Function::getParameterGroup ( ParameterGroup::Type::Enum  type)

§ parameterSetDefined()

bool BaseLib::DeviceDescription::Function::parameterSetDefined ( ParameterGroup::Type::Enum  type)

Member Data Documentation

§ _bl

BaseLib::SharedObjects* BaseLib::DeviceDescription::Function::_bl = nullptr
protected

§ alternativeFunctions

std::vector<PFunction> BaseLib::DeviceDescription::Function::alternativeFunctions

§ channel

uint32_t BaseLib::DeviceDescription::Function::channel = 0

§ channelCount

uint32_t BaseLib::DeviceDescription::Function::channelCount = 1

§ configParameters

PConfigParameters BaseLib::DeviceDescription::Function::configParameters

§ configParametersId

std::string BaseLib::DeviceDescription::Function::configParametersId

§ countFromVariable

std::string BaseLib::DeviceDescription::Function::countFromVariable

§ defaultGroupedLinkScenarioElementId1

std::string BaseLib::DeviceDescription::Function::defaultGroupedLinkScenarioElementId1

§ defaultGroupedLinkScenarioElementId2

std::string BaseLib::DeviceDescription::Function::defaultGroupedLinkScenarioElementId2

§ defaultLinkScenarioElementId

std::string BaseLib::DeviceDescription::Function::defaultLinkScenarioElementId

§ deletable

bool BaseLib::DeviceDescription::Function::deletable = false

§ direction

Direction::Enum BaseLib::DeviceDescription::Function::direction = Direction::Enum::none

§ dynamicChannelCountIndex

int32_t BaseLib::DeviceDescription::Function::dynamicChannelCountIndex = -1

§ dynamicChannelCountSize

double BaseLib::DeviceDescription::Function::dynamicChannelCountSize = 1

§ encryptionEnabledByDefault

bool BaseLib::DeviceDescription::Function::encryptionEnabledByDefault = false

§ forceEncryption

bool BaseLib::DeviceDescription::Function::forceEncryption = false

§ grouped

bool BaseLib::DeviceDescription::Function::grouped = false

§ groupId

std::string BaseLib::DeviceDescription::Function::groupId

§ hasGroup

bool BaseLib::DeviceDescription::Function::hasGroup = false

§ internal

bool BaseLib::DeviceDescription::Function::internal = false

§ linkParameters

PLinkParameters BaseLib::DeviceDescription::Function::linkParameters

§ linkParametersId

std::string BaseLib::DeviceDescription::Function::linkParametersId

§ linkReceiverAttributes

std::unordered_map<std::string, BaseLib::PVariable> BaseLib::DeviceDescription::Function::linkReceiverAttributes

§ linkReceiverFunctionTypes

LinkFunctionTypes BaseLib::DeviceDescription::Function::linkReceiverFunctionTypes

§ linkSenderAttributes

std::unordered_map<std::string, BaseLib::PVariable> BaseLib::DeviceDescription::Function::linkSenderAttributes

§ linkSenderFunctionTypes

LinkFunctionTypes BaseLib::DeviceDescription::Function::linkSenderFunctionTypes

§ parameterGroupSelector

PParameter BaseLib::DeviceDescription::Function::parameterGroupSelector

§ physicalChannelIndexOffset

int32_t BaseLib::DeviceDescription::Function::physicalChannelIndexOffset = 0

§ type

std::string BaseLib::DeviceDescription::Function::type

§ variables

PVariables BaseLib::DeviceDescription::Function::variables

§ variablesId

std::string BaseLib::DeviceDescription::Function::variablesId

§ visible

bool BaseLib::DeviceDescription::Function::visible = true

The documentation for this class was generated from the following files: