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

#include <HmDevice.h>

Classes

struct  RXModes
 
struct  UIFlags
 

Public Member Functions

bool loaded ()
 
 Device (BaseLib::SharedObjects *baseLib, int32_t family)
 
 Device (BaseLib::SharedObjects *baseLib, int32_t family, std::string xmlFilename)
 
virtual ~Device ()
 
virtual std::shared_ptr< DeviceTypegetType (uint32_t typeNumber, int32_t firmwareVersion)
 
virtual int32_t getCountFromSysinfo ()
 
virtual void setCountFromSysinfo (int32_t countFromSysinfo)
 

Public Attributes

bool hasBattery = false
 
int32_t family = 0
 
uint32_t version = 0
 
uint32_t cyclicTimeout = 0
 
int32_t eepSize = 1024
 
std::shared_ptr< ParameterSetparameterSet
 
std::map< uint32_t, std::shared_ptr< DeviceChannel > > channels
 
std::vector< std::shared_ptr< DeviceType > > supportedTypes
 
std::multimap< uint32_t, std::shared_ptr< DeviceFrame > > framesByMessageType
 
std::multimap< std::string, std::shared_ptr< DeviceFrame > > framesByFunction1
 
std::multimap< std::string, std::shared_ptr< DeviceFrame > > framesByFunction2
 
std::map< std::string, std::shared_ptr< DeviceFrame > > framesByID
 
std::map< int32_t, std::map< std::string, std::shared_ptr< DeviceFrame > > > valueRequestFrames
 
std::shared_ptr< DeviceProgramrunProgram
 
RXModes::Enum rxModes = RXModes::Enum::always
 
UIFlags::Enum uiFlags = UIFlags::Enum::visible
 
int32_t countFromSysinfoIndex = -1
 
double countFromSysinfoSize = 1
 
std::string deviceClass
 
bool supportsAES = false
 
bool peeringSysinfoExpectChannel = true
 
bool needsTime = false
 
std::shared_ptr< Deviceteam
 

Protected Member Functions

virtual void load (std::string xmlFilename)
 
virtual void parseXML (xml_node *node, std::string &xmlFilename)
 

Protected Attributes

BaseLib::SharedObjects_bl = nullptr
 
bool _loaded = false
 
int32_t _countFromSysinfo = -1
 

Constructor & Destructor Documentation

§ Device() [1/2]

BaseLib::HmDeviceDescription::Device::Device ( BaseLib::SharedObjects baseLib,
int32_t  family 
)

§ Device() [2/2]

BaseLib::HmDeviceDescription::Device::Device ( BaseLib::SharedObjects baseLib,
int32_t  family,
std::string  xmlFilename 
)

§ ~Device()

BaseLib::HmDeviceDescription::Device::~Device ( )
virtual

Member Function Documentation

§ getCountFromSysinfo()

virtual int32_t BaseLib::HmDeviceDescription::Device::getCountFromSysinfo ( )
inlinevirtual

§ getType()

std::shared_ptr< DeviceType > BaseLib::HmDeviceDescription::Device::getType ( uint32_t  typeNumber,
int32_t  firmwareVersion 
)
virtual

§ load()

void BaseLib::HmDeviceDescription::Device::load ( std::string  xmlFilename)
protectedvirtual

§ loaded()

bool BaseLib::HmDeviceDescription::Device::loaded ( )
inline

§ parseXML()

void BaseLib::HmDeviceDescription::Device::parseXML ( xml_node node,
std::string &  xmlFilename 
)
protectedvirtual

§ setCountFromSysinfo()

void BaseLib::HmDeviceDescription::Device::setCountFromSysinfo ( int32_t  countFromSysinfo)
virtual

Member Data Documentation

§ _bl

BaseLib::SharedObjects* BaseLib::HmDeviceDescription::Device::_bl = nullptr
protected

§ _countFromSysinfo

int32_t BaseLib::HmDeviceDescription::Device::_countFromSysinfo = -1
protected

§ _loaded

bool BaseLib::HmDeviceDescription::Device::_loaded = false
protected

§ channels

std::map<uint32_t, std::shared_ptr<DeviceChannel> > BaseLib::HmDeviceDescription::Device::channels

§ countFromSysinfoIndex

int32_t BaseLib::HmDeviceDescription::Device::countFromSysinfoIndex = -1

§ countFromSysinfoSize

double BaseLib::HmDeviceDescription::Device::countFromSysinfoSize = 1

§ cyclicTimeout

uint32_t BaseLib::HmDeviceDescription::Device::cyclicTimeout = 0

§ deviceClass

std::string BaseLib::HmDeviceDescription::Device::deviceClass

§ eepSize

int32_t BaseLib::HmDeviceDescription::Device::eepSize = 1024

§ family

int32_t BaseLib::HmDeviceDescription::Device::family = 0

§ framesByFunction1

std::multimap<std::string, std::shared_ptr<DeviceFrame> > BaseLib::HmDeviceDescription::Device::framesByFunction1

§ framesByFunction2

std::multimap<std::string, std::shared_ptr<DeviceFrame> > BaseLib::HmDeviceDescription::Device::framesByFunction2

§ framesByID

std::map<std::string, std::shared_ptr<DeviceFrame> > BaseLib::HmDeviceDescription::Device::framesByID

§ framesByMessageType

std::multimap<uint32_t, std::shared_ptr<DeviceFrame> > BaseLib::HmDeviceDescription::Device::framesByMessageType

§ hasBattery

bool BaseLib::HmDeviceDescription::Device::hasBattery = false

§ needsTime

bool BaseLib::HmDeviceDescription::Device::needsTime = false

§ parameterSet

std::shared_ptr<ParameterSet> BaseLib::HmDeviceDescription::Device::parameterSet

§ peeringSysinfoExpectChannel

bool BaseLib::HmDeviceDescription::Device::peeringSysinfoExpectChannel = true

§ runProgram

std::shared_ptr<DeviceProgram> BaseLib::HmDeviceDescription::Device::runProgram

§ rxModes

RXModes::Enum BaseLib::HmDeviceDescription::Device::rxModes = RXModes::Enum::always

§ supportedTypes

std::vector<std::shared_ptr<DeviceType> > BaseLib::HmDeviceDescription::Device::supportedTypes

§ supportsAES

bool BaseLib::HmDeviceDescription::Device::supportsAES = false

§ team

std::shared_ptr<Device> BaseLib::HmDeviceDescription::Device::team

§ uiFlags

UIFlags::Enum BaseLib::HmDeviceDescription::Device::uiFlags = UIFlags::Enum::visible

§ valueRequestFrames

std::map<int32_t, std::map<std::string, std::shared_ptr<DeviceFrame> > > BaseLib::HmDeviceDescription::Device::valueRequestFrames

§ version

uint32_t BaseLib::HmDeviceDescription::Device::version = 0

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