libhomegear-base  0.7
Base library for Homegear and Homegear family modules.
BaseLib::Systems::Peer Class Referenceabstract

#include <Peer.h>

Inheritance diagram for BaseLib::Systems::Peer:
BaseLib::Systems::ServiceMessages::IServiceEventSink BaseLib::IEvents BaseLib::IEventSinkBase

Classes

class  IPeerEventSink
 

Public Member Functions

void setRpcDevice (std::shared_ptr< HomegearDevice > value)
 
std::shared_ptr< HomegearDevicegetRpcDevice ()
 
 Peer (BaseLib::SharedObjects *baseLib, uint32_t parentId, IPeerEventSink *eventHandler)
 
 Peer (BaseLib::SharedObjects *baseLib, uint64_t id, int32_t address, std::string serialNumber, uint32_t parentId, IPeerEventSink *eventHandler)
 
virtual ~Peer ()
 
virtual void dispose ()
 
virtual bool wireless ()=0
 
virtual uint32_t getParentID ()
 
virtual int32_t getAddress ()
 
virtual uint64_t getID ()
 
virtual void setID (uint64_t id)
 
virtual void setAddress (int32_t value)
 
virtual std::string getSerialNumber ()
 
virtual void setSerialNumber (std::string serialNumber)
 
virtual int32_t getFirmwareVersion ()
 
virtual void setFirmwareVersion (int32_t value)
 
virtual std::string getFirmwareVersionString ()
 
virtual void setFirmwareVersionString (std::string value)
 
virtual uint64_t getDeviceType ()
 
virtual void setDeviceType (uint64_t value)
 
virtual std::string getName ()
 
virtual std::string getName (int32_t channel)
 
virtual void setName (std::string value)
 
virtual void setName (int32_t channel, std::string value)
 
virtual std::string getIp ()
 
virtual void setIp (std::string value)
 
virtual std::string getIdString ()
 
virtual void setIdString (std::string value)
 
virtual std::string getTypeString ()
 
virtual void setTypeString (std::string value)
 
virtual std::set< int32_t > getChannelsInRoom (uint64_t roomId)
 
virtual uint64_t getRoom (int32_t channel)
 
virtual bool hasRoomInChannels (uint64_t roomId)
 
bool roomsSet ()
 
virtual bool setRoom (int32_t channel, uint64_t value)
 
virtual std::set< int32_t > getChannelsInBuildingPart (uint64_t buildingPartId)
 
virtual uint64_t getBuildingPart (int32_t channel)
 
virtual bool hasBuildingPartInChannels (uint64_t buildingPartId)
 
bool buildingPartsSet ()
 
virtual bool setBuildingPart (int32_t channel, uint64_t value)
 
virtual std::unordered_map< int32_t, std::set< uint64_t > > getCategories ()
 
virtual std::set< uint64_t > getCategories (int32_t channel)
 
virtual std::set< int32_t > getChannelsInCategory (uint64_t categoryId)
 
virtual bool hasCategories ()
 
virtual bool hasCategories (int32_t channel)
 
virtual bool hasCategory (int32_t channel, uint64_t id)
 
virtual bool hasCategoryInChannels (uint64_t categoryId)
 
virtual bool addCategory (int32_t channel, uint64_t id)
 
virtual bool removeCategory (int32_t channel, uint64_t id)
 
virtual std::string getRpcTypeString ()
 
virtual std::string handleCliCommand (std::string command)=0
 
virtual HomegearDevice::ReceiveModes::Enum getRXModes ()
 
virtual bool isTeam ()
 
virtual void setLastPacketReceived ()
 
virtual int64_t getLastPacketReceived ()
 
virtual bool pendingQueuesEmpty ()
 
virtual void enqueuePendingQueues ()
 
virtual int32_t getChannelGroupedWith (int32_t channel)=0
 
virtual int32_t getNewFirmwareVersion ()=0
 
virtual std::string getFirmwareVersionString (int32_t firmwareVersion)=0
 
virtual bool firmwareUpdateAvailable ()=0
 
virtual bool setVariableRoom (int32_t channel, std::string &variableName, uint64_t roomId)
 
virtual void removeRoomFromVariables (uint64_t roomId)
 
virtual uint64_t getVariableRoom (int32_t channel, const std::string &variableName)
 
virtual bool setVariableBuildingPart (int32_t channel, std::string &variableName, uint64_t buildingPartId)
 
virtual void removeBuildingPartFromVariables (uint64_t buildingPartId)
 
virtual uint64_t getVariableBuildingPart (int32_t channel, const std::string &variableName)
 
virtual bool addCategoryToVariable (int32_t channel, std::string &variableName, uint64_t categoryId)
 
virtual bool removeCategoryFromVariable (int32_t channel, std::string &variableName, uint64_t categoryId)
 
virtual void removeCategoryFromVariables (uint64_t categoryId)
 
virtual std::set< uint64_t > getVariableCategories (int32_t channel, std::string &variableName)
 
virtual bool variableHasCategory (int32_t channel, const std::string &variableName, uint64_t categoryId)
 
virtual bool variableHasCategories (int32_t channel, const std::string &variableName)
 
virtual bool addRoleToVariable (int32_t channel, std::string &variableName, uint64_t roleId, RoleDirection direction, bool invert, bool scale, RoleScaleInfo scaleInfo)
 
virtual bool removeRoleFromVariable (int32_t channel, std::string &variableName, uint64_t roleId)
 
virtual void removeRoleFromVariables (uint64_t roleId)
 
virtual std::unordered_map< uint64_t, RolegetVariableRoles (int32_t channel, std::string &variableName)
 
virtual bool variableHasRole (int32_t channel, const std::string &variableName, uint64_t roleId)
 
virtual bool variableHasRoles (int32_t channel, const std::string &variableName)
 
virtual bool load (ICentral *central)
 
virtual void save (bool savePeer, bool saveVariables, bool saveCentralConfig)
 
virtual void loadConfig ()
 
virtual void saveConfig ()
 
virtual uint64_t createParameter (ParameterGroup::Type::Enum parameterSetType, uint32_t channel, const std::string &parameterName, std::vector< uint8_t > &value, int32_t remoteAddress=0, uint32_t remoteChannel=0)
 In contrast to saveParameter() this method waits for the parameter to be created and returns it's database ID. More...
 
virtual void saveParameter (uint32_t parameterID, ParameterGroup::Type::Enum parameterSetType, uint32_t channel, const std::string &parameterName, std::vector< uint8_t > &value, int32_t remoteAddress=0, uint32_t remoteChannel=0)
 
virtual void saveSpecialTypeParameter (uint32_t parameterID, ParameterGroup::Type::Enum parameterSetType, uint32_t channel, const std::string &parameterName, std::vector< uint8_t > &value, int32_t specialType, const BaseLib::PVariable &metadata, const std::string &roles)
 
virtual void saveParameter (uint32_t parameterID, uint32_t address, std::vector< uint8_t > &value)
 
virtual void saveParameter (uint32_t parameterID, std::vector< uint8_t > &value)
 
virtual void loadVariables (ICentral *central, std::shared_ptr< BaseLib::Database::DataTable > &rows)
 
virtual void saveVariables ()
 
virtual void saveVariable (uint32_t index, int32_t intValue)
 
virtual void saveVariable (uint32_t index, int64_t intValue)
 
virtual void saveVariable (uint32_t index, std::string &stringValue)
 
virtual void saveVariable (uint32_t index, std::vector< char > &binaryValue)
 
virtual void saveVariable (uint32_t index, std::vector< uint8_t > &binaryValue)
 
virtual void deleteFromDatabase ()
 
virtual void savePeers ()=0
 
virtual void homegearStarted ()
 
virtual void homegearShuttingDown ()
 
virtual void initializeCentralConfig ()
 
virtual std::unordered_map< int32_t, std::vector< std::shared_ptr< BasicPeer > > > getPeers ()
 
virtual std::shared_ptr< BasicPeergetPeer (int32_t channel, int32_t address, int32_t remoteChannel=-1)
 
virtual std::shared_ptr< BasicPeergetPeer (int32_t channel, uint64_t id, int32_t remoteChannel=-1)
 
virtual std::shared_ptr< BasicPeergetPeer (int32_t channel, std::string serialNumber, int32_t remoteChannel=-1)
 
virtual void updatePeer (uint64_t oldId, uint64_t newId)
 
virtual void updatePeer (const std::string &old_serial_number, const std::string &new_serial_number)
 
virtual std::shared_ptr< ICentralgetCentral ()=0
 
virtual PVariable activateLinkParamset (PRpcClientInfo clientInfo, int32_t channel, uint64_t remoteID, int32_t remoteChannel, bool longPress)
 
virtual PVariable forceConfigUpdate (PRpcClientInfo clientInfo)
 
virtual PVariable getAllConfig (PRpcClientInfo clientInfo)
 
virtual PVariable getAllValues (PRpcClientInfo clientInfo, bool returnWriteOnly, bool checkAcls)
 
virtual PVariable getConfigParameter (PRpcClientInfo clientInfo, uint32_t channel, std::string name)
 
virtual std::shared_ptr< std::vector< PVariable > > getDeviceDescriptions (PRpcClientInfo clientInfo, bool channels, std::map< std::string, bool > fields)
 
virtual PVariable getDeviceDescription (PRpcClientInfo clientInfo, int32_t channel, std::map< std::string, bool > fields)
 
virtual PVariable getDeviceInfo (PRpcClientInfo clientInfo, std::map< std::string, bool > fields)
 
virtual PVariable getLink (PRpcClientInfo clientInfo, int32_t channel, int32_t flags, bool avoidDuplicates)
 
virtual PVariable getLinkInfo (PRpcClientInfo clientInfo, int32_t senderChannel, uint64_t receiverID, int32_t receiverChannel)
 
virtual PVariable setLinkInfo (PRpcClientInfo clientInfo, int32_t senderChannel, uint64_t receiverID, int32_t receiverChannel, std::string name, std::string description)
 
virtual PVariable getLinkPeers (PRpcClientInfo clientInfo, int32_t channel, bool returnID)
 
virtual PVariable getParamset (PRpcClientInfo clientInfo, int32_t channel, ParameterGroup::Type::Enum type, uint64_t remoteID, int32_t remoteChannel, bool checkAcls)
 
virtual PVariable getParamsetDescription (PRpcClientInfo clientInfo, int32_t channel, PParameterGroup parameterSet, bool checkAcls)
 
virtual PVariable getParamsetDescription (PRpcClientInfo clientInfo, int32_t channel, ParameterGroup::Type::Enum type, uint64_t remoteID, int32_t remoteChannel, bool checkAcls)
 
virtual PVariable getParamsetId (PRpcClientInfo clientInfo, uint32_t channel, ParameterGroup::Type::Enum type, uint64_t remoteID, int32_t remoteChannel)
 
virtual PVariable getRolesInDevice (PRpcClientInfo clientInfo, bool checkAcls)
 
virtual PVariable getRolesInRoom (PRpcClientInfo clientInfo, uint64_t roomId, bool checkAcls)
 
virtual PVariable getServiceMessages (PRpcClientInfo clientInfo, bool returnID, const std::string &language)
 
virtual PVariable getValue (PRpcClientInfo clientInfo, uint32_t channel, std::string valueKey, bool requestFromDevice, bool asynchronous)
 
virtual PVariable getVariableDescription (PRpcClientInfo clientInfo, uint32_t channel, std::string valueKey, const std::unordered_set< std::string > &fields)
 
virtual PVariable getVariablesInCategory (PRpcClientInfo clientInfo, uint64_t categoryId, bool checkAcls)
 
virtual PVariable getVariablesInRole (PRpcClientInfo clientInfo, uint64_t roleId, bool checkAcls)
 
virtual PVariable getVariablesInRoom (PRpcClientInfo clientInfo, uint64_t roomId, bool returnDeviceAssigned, bool checkAcls)
 
virtual PVariable getVariablesInBuildingPart (PRpcClientInfo clientInfo, uint64_t buildingPartId, bool returnDeviceAssigned, bool checkAcls)
 
virtual PVariable putParamset (PRpcClientInfo clientInfo, int32_t channel, ParameterGroup::Type::Enum type, uint64_t remoteID, int32_t remoteChannel, PVariable variables, bool checkAcls, bool onlyPushing=false)=0
 
virtual PVariable reportValueUsage (PRpcClientInfo clientInfo)
 
virtual PVariable rssiInfo (PRpcClientInfo clientInfo)
 
virtual PVariable setId (PRpcClientInfo clientInfo, uint64_t newPeerID)
 RPC function to change the ID of the peer. More...
 
virtual PVariable setSerialNumber (PRpcClientInfo clientInfo, const std::string &new_serial_number)
 
virtual PVariable setInterface (PRpcClientInfo clientInfo, std::string interfaceID)
 
virtual PVariable setValue (PRpcClientInfo clientInfo, uint32_t channel, std::string valueKey, PVariable value, bool wait)
 
- Public Member Functions inherited from BaseLib::Systems::ServiceMessages::IServiceEventSink
virtual void onEvent (std::string &source, uint64_t peerId, int32_t channel, std::shared_ptr< std::vector< std::string >> &variables, std::shared_ptr< std::vector< std::shared_ptr< Variable >>> &values)=0
 
virtual void onRPCEvent (std::string &source, uint64_t peerId, int32_t channel, std::string &deviceAddress, std::shared_ptr< std::vector< std::string >> &valueKeys, std::shared_ptr< std::vector< std::shared_ptr< Variable >>> &values)=0
 
- Public Member Functions inherited from BaseLib::IEventSinkBase
 IEventSinkBase ()
 
virtual ~IEventSinkBase ()
 
- Public Member Functions inherited from BaseLib::IEvents
 IEvents ()
 
virtual ~IEvents ()
 
virtual void setEventHandler (IEventSinkBase *eventHandler)
 
virtual void resetEventHandler ()
 
virtual IEventSinkBasegetEventHandler ()
 

Public Attributes

std::atomic_bool deleting
 
std::unordered_map< uint32_t, ConfigDataBlockbinaryConfig
 
std::unordered_map< uint32_t, std::unordered_map< std::string, RpcConfigurationParameter > > configCentral
 
std::unordered_map< uint32_t, std::unordered_map< std::string, RpcConfigurationParameter > > valuesCentral
 
std::unordered_map< uint32_t, std::unordered_map< int32_t, std::unordered_map< uint32_t, std::unordered_map< std::string, RpcConfigurationParameter > > > > linksCentral
 
std::shared_ptr< ServiceMessagesserviceMessages
 

Static Public Attributes

static const uint64_t kMaximumPeerId = 0x3FFFFFFF
 
static constexpr std::pair< uint64_t, uint64_t > kVirtualPeerIdRange {0x40000000, 0x4FFFFFFF}
 
static constexpr std::pair< uint64_t, uint64_t > kUiPeerIdRange {0x50000000, 0x5FFFFFFF}
 

Protected Member Functions

virtual void raiseAddWebserverEventHandler (Rpc::IWebserverEventSink *eventHandler)
 
virtual void raiseRemoveWebserverEventHandler ()
 
virtual void raiseRPCEvent (std::string &source, uint64_t id, int32_t channel, std::string &deviceAddress, std::shared_ptr< std::vector< std::string >> &valueKeys, std::shared_ptr< std::vector< PVariable >> &values)
 
virtual void raiseRPCUpdateDevice (uint64_t id, int32_t channel, std::string address, int32_t hint)
 
virtual void raiseEvent (std::string &source, uint64_t peerID, int32_t channel, std::shared_ptr< std::vector< std::string >> &variables, std::shared_ptr< std::vector< PVariable >> &values)
 
void raiseServiceMessageEvent (const PServiceMessage &serviceMessage)
 
virtual void raiseRunScript (ScriptEngine::PScriptInfo &scriptInfo, bool wait)
 
virtual BaseLib::PVariable raiseInvokeRpc (std::string &methodName, BaseLib::PArray &parameters)
 
virtual void onConfigPending (bool configPending)
 
void onEvent (std::string &source, uint64_t peerId, int32_t channel, std::shared_ptr< std::vector< std::string >> &variables, std::shared_ptr< std::vector< PVariable >> &values) override
 
void onRPCEvent (std::string &source, uint64_t peerId, int32_t channel, std::string &deviceAddress, std::shared_ptr< std::vector< std::string >> &valueKeys, std::shared_ptr< std::vector< PVariable >> &values) override
 
void onServiceMessageEvent (const PServiceMessage &serviceMessage) override
 
void onSaveParameter (std::string name, uint32_t channel, std::vector< uint8_t > &data) override
 
std::shared_ptr< Database::DataTableonGetServiceMessages () override
 
void onSaveServiceMessage (Database::DataRow &data) override
 
void onDeleteServiceMessage (uint64_t databaseID) override
 
void onEnqueuePendingQueues () override
 
BaseLib::DeviceDescription::PParameter createRoleRpcParameter (BaseLib::PVariable &variableInfo, const std::string &baseVariableName, const PParameterGroup &parameterGroup)
 Creates an RPC parameter based on settings provided in variableInfo. More...
 
virtual PVariable getValueFromDevice (std::shared_ptr< Parameter > &parameter, int32_t channel, bool asynchronous)
 Gets a variable value directly from the device. More...
 
virtual PParameterGroup getParameterSet (int32_t channel, ParameterGroup::Type::Enum type)=0
 This method returns the correct parameter set for a specified channel and parameter set type. More...
 
virtual PVariable getVariableDescription (PRpcClientInfo clientInfo, const PParameter &parameter, int32_t channel, ParameterGroup::Type::Enum type, int32_t index, const std::unordered_set< std::string > &fields)
 
virtual void setDefaultValue (RpcConfigurationParameter &parameter)
 Overridable hook in initializeCentralConfig to set a custom default value. More...
 
virtual void initializeMasterSet (int32_t channel, std::shared_ptr< ConfigParameters > masterSet)
 Called by initializeCentralConfig(). More...
 
virtual void initializeValueSet (int32_t channel, std::shared_ptr< Variables > valueSet)
 Called by initializeCentralConfig(). More...
 
virtual void initializeTypeString ()
 Initializes _typeString. More...
 
virtual bool getAllConfigHook2 (PRpcClientInfo clientInfo, PParameter parameter, uint32_t channel, PVariable parameters)
 
virtual bool getAllValuesHook2 (PRpcClientInfo clientInfo, PParameter parameter, uint32_t channel, PVariable parameters)
 
virtual bool getParamsetHook2 (PRpcClientInfo clientInfo, PParameter parameter, uint32_t channel, PVariable parameters)
 
virtual bool convertFromPacketHook (RpcConfigurationParameter &parameter, std::vector< uint8_t > &data, PVariable &result)
 
virtual bool convertToPacketHook (RpcConfigurationParameter &parameter, PVariable &data, std::vector< uint8_t > &result)
 

Protected Attributes

BaseLib::SharedObjects_bl = nullptr
 
std::shared_ptr< HomegearDevice_rpcDevice
 
std::map< uint32_t, uint32_t > _variableDatabaseIDs
 
std::shared_ptr< ICentral_central
 
uint64_t _peerID = 0
 
uint32_t _parentID = 0
 
int32_t _address = 0
 
std::string _serialNumber
 
int32_t _firmwareVersion = 0
 
std::string _firmwareVersionString
 
uint64_t _deviceType = 0
 
std::mutex _peersMutex
 
std::unordered_map< int32_t, std::vector< std::shared_ptr< BasicPeer > > > _peers
 
std::mutex _namesMutex
 
std::unordered_map< int32_t, std::string > _names
 
std::string _ip
 
std::string _idString
 
std::string _typeString
 
std::mutex _roomMutex
 
std::unordered_map< int32_t, uint64_t > _rooms
 
std::mutex _buildingPartMutex
 
std::unordered_map< int32_t, uint64_t > _buildingParts
 
std::mutex _categoriesMutex
 
std::unordered_map< int32_t, std::set< uint64_t > > _categories
 
std::string _rpcTypeString
 
HomegearDevice::ReceiveModes::Enum _rxModes = HomegearDevice::ReceiveModes::Enum::none
 
bool _disposing = false
 
bool _saveTeam = false
 
std::atomic< int64_t > _lastPacketReceived {0}
 
std::map< int32_t, PEventHandler_webserverEventHandlers
 
- Protected Attributes inherited from BaseLib::IEvents
IEventSinkBase_eventHandler = nullptr
 

Constructor & Destructor Documentation

§ Peer() [1/2]

BaseLib::Systems::Peer::Peer ( BaseLib::SharedObjects baseLib,
uint32_t  parentId,
IPeerEventSink eventHandler 
)

§ Peer() [2/2]

BaseLib::Systems::Peer::Peer ( BaseLib::SharedObjects baseLib,
uint64_t  id,
int32_t  address,
std::string  serialNumber,
uint32_t  parentId,
IPeerEventSink eventHandler 
)

§ ~Peer()

BaseLib::Systems::Peer::~Peer ( )
virtual

Member Function Documentation

§ activateLinkParamset()

virtual PVariable BaseLib::Systems::Peer::activateLinkParamset ( PRpcClientInfo  clientInfo,
int32_t  channel,
uint64_t  remoteID,
int32_t  remoteChannel,
bool  longPress 
)
inlinevirtual

§ addCategory()

bool BaseLib::Systems::Peer::addCategory ( int32_t  channel,
uint64_t  id 
)
virtual

§ addCategoryToVariable()

bool BaseLib::Systems::Peer::addCategoryToVariable ( int32_t  channel,
std::string &  variableName,
uint64_t  categoryId 
)
virtual

§ addRoleToVariable()

bool BaseLib::Systems::Peer::addRoleToVariable ( int32_t  channel,
std::string &  variableName,
uint64_t  roleId,
RoleDirection  direction,
bool  invert,
bool  scale,
RoleScaleInfo  scaleInfo 
)
virtual

§ buildingPartsSet()

bool BaseLib::Systems::Peer::buildingPartsSet ( )

§ convertFromPacketHook()

virtual bool BaseLib::Systems::Peer::convertFromPacketHook ( RpcConfigurationParameter parameter,
std::vector< uint8_t > &  data,
PVariable result 
)
inlineprotectedvirtual

§ convertToPacketHook()

virtual bool BaseLib::Systems::Peer::convertToPacketHook ( RpcConfigurationParameter parameter,
PVariable data,
std::vector< uint8_t > &  result 
)
inlineprotectedvirtual

§ createParameter()

uint64_t BaseLib::Systems::Peer::createParameter ( ParameterGroup::Type::Enum  parameterSetType,
uint32_t  channel,
const std::string &  parameterName,
std::vector< uint8_t > &  value,
int32_t  remoteAddress = 0,
uint32_t  remoteChannel = 0 
)
virtual

In contrast to saveParameter() this method waits for the parameter to be created and returns it's database ID.

Parameters
parameterSetType
channel
parameterName
value
remoteAddress
remoteChannel
Returns

§ createRoleRpcParameter()

DeviceDescription::PParameter BaseLib::Systems::Peer::createRoleRpcParameter ( BaseLib::PVariable variableInfo,
const std::string &  baseVariableName,
const PParameterGroup parameterGroup 
)
protected

Creates an RPC parameter based on settings provided in variableInfo.

Available settings are: "id" (String), "type" (String), "default", "min", "max".

Parameters
variableInfoA Struct containing the information to create a RPC parameter.
parameterGroupThe parameter group the parameter should belong to.
Returns
Returns a RPC parameter based on variableInfo.

§ deleteFromDatabase()

void BaseLib::Systems::Peer::deleteFromDatabase ( )
virtual

§ dispose()

void BaseLib::Systems::Peer::dispose ( )
virtual

§ enqueuePendingQueues()

virtual void BaseLib::Systems::Peer::enqueuePendingQueues ( )
inlinevirtual

§ firmwareUpdateAvailable()

virtual bool BaseLib::Systems::Peer::firmwareUpdateAvailable ( )
pure virtual

§ forceConfigUpdate()

virtual PVariable BaseLib::Systems::Peer::forceConfigUpdate ( PRpcClientInfo  clientInfo)
inlinevirtual

§ getAddress()

virtual int32_t BaseLib::Systems::Peer::getAddress ( )
inlinevirtual

§ getAllConfig()

PVariable BaseLib::Systems::Peer::getAllConfig ( PRpcClientInfo  clientInfo)
virtual

§ getAllConfigHook2()

virtual bool BaseLib::Systems::Peer::getAllConfigHook2 ( PRpcClientInfo  clientInfo,
PParameter  parameter,
uint32_t  channel,
PVariable  parameters 
)
inlineprotectedvirtual

§ getAllValues()

PVariable BaseLib::Systems::Peer::getAllValues ( PRpcClientInfo  clientInfo,
bool  returnWriteOnly,
bool  checkAcls 
)
virtual

§ getAllValuesHook2()

virtual bool BaseLib::Systems::Peer::getAllValuesHook2 ( PRpcClientInfo  clientInfo,
PParameter  parameter,
uint32_t  channel,
PVariable  parameters 
)
inlineprotectedvirtual

§ getBuildingPart()

uint64_t BaseLib::Systems::Peer::getBuildingPart ( int32_t  channel)
virtual

§ getCategories() [1/2]

std::unordered_map< int32_t, std::set< uint64_t > > BaseLib::Systems::Peer::getCategories ( )
virtual

§ getCategories() [2/2]

std::set< uint64_t > BaseLib::Systems::Peer::getCategories ( int32_t  channel)
virtual

§ getCentral()

virtual std::shared_ptr<ICentral> BaseLib::Systems::Peer::getCentral ( )
pure virtual

§ getChannelGroupedWith()

virtual int32_t BaseLib::Systems::Peer::getChannelGroupedWith ( int32_t  channel)
pure virtual

§ getChannelsInBuildingPart()

std::set< int32_t > BaseLib::Systems::Peer::getChannelsInBuildingPart ( uint64_t  buildingPartId)
virtual

§ getChannelsInCategory()

std::set< int32_t > BaseLib::Systems::Peer::getChannelsInCategory ( uint64_t  categoryId)
virtual

§ getChannelsInRoom()

std::set< int32_t > BaseLib::Systems::Peer::getChannelsInRoom ( uint64_t  roomId)
virtual

§ getConfigParameter()

PVariable BaseLib::Systems::Peer::getConfigParameter ( PRpcClientInfo  clientInfo,
uint32_t  channel,
std::string  name 
)
virtual

§ getDeviceDescription()

PVariable BaseLib::Systems::Peer::getDeviceDescription ( PRpcClientInfo  clientInfo,
int32_t  channel,
std::map< std::string, bool >  fields 
)
virtual

§ getDeviceDescriptions()

std::shared_ptr< std::vector< PVariable > > BaseLib::Systems::Peer::getDeviceDescriptions ( PRpcClientInfo  clientInfo,
bool  channels,
std::map< std::string, bool >  fields 
)
virtual

§ getDeviceInfo()

PVariable BaseLib::Systems::Peer::getDeviceInfo ( PRpcClientInfo  clientInfo,
std::map< std::string, bool >  fields 
)
virtual

§ getDeviceType()

virtual uint64_t BaseLib::Systems::Peer::getDeviceType ( )
inlinevirtual

§ getFirmwareVersion()

virtual int32_t BaseLib::Systems::Peer::getFirmwareVersion ( )
inlinevirtual

§ getFirmwareVersionString() [1/2]

virtual std::string BaseLib::Systems::Peer::getFirmwareVersionString ( )
inlinevirtual

§ getFirmwareVersionString() [2/2]

virtual std::string BaseLib::Systems::Peer::getFirmwareVersionString ( int32_t  firmwareVersion)
pure virtual

§ getID()

virtual uint64_t BaseLib::Systems::Peer::getID ( )
inlinevirtual

§ getIdString()

virtual std::string BaseLib::Systems::Peer::getIdString ( )
inlinevirtual

§ getIp()

virtual std::string BaseLib::Systems::Peer::getIp ( )
inlinevirtual

§ getLastPacketReceived()

virtual int64_t BaseLib::Systems::Peer::getLastPacketReceived ( )
inlinevirtual

§ getLink()

PVariable BaseLib::Systems::Peer::getLink ( PRpcClientInfo  clientInfo,
int32_t  channel,
int32_t  flags,
bool  avoidDuplicates 
)
virtual

§ getLinkInfo()

PVariable BaseLib::Systems::Peer::getLinkInfo ( PRpcClientInfo  clientInfo,
int32_t  senderChannel,
uint64_t  receiverID,
int32_t  receiverChannel 
)
virtual

§ getLinkPeers()

PVariable BaseLib::Systems::Peer::getLinkPeers ( PRpcClientInfo  clientInfo,
int32_t  channel,
bool  returnID 
)
virtual

§ getName() [1/2]

virtual std::string BaseLib::Systems::Peer::getName ( )
inlinevirtual

§ getName() [2/2]

std::string BaseLib::Systems::Peer::getName ( int32_t  channel)
virtual

§ getNewFirmwareVersion()

virtual int32_t BaseLib::Systems::Peer::getNewFirmwareVersion ( )
pure virtual

§ getParameterSet()

virtual PParameterGroup BaseLib::Systems::Peer::getParameterSet ( int32_t  channel,
ParameterGroup::Type::Enum  type 
)
protectedpure virtual

This method returns the correct parameter set for a specified channel and parameter set type.

It is necessary, because sometimes multiple parameter sets are available for one channel depending on family specific conditions. This method is a mandatory hook method.

Parameters
channelThe channel index.
typeThe parameter set type.
Returns
Returns the parameter set for the specified channel and type.

§ getParamset()

PVariable BaseLib::Systems::Peer::getParamset ( PRpcClientInfo  clientInfo,
int32_t  channel,
ParameterGroup::Type::Enum  type,
uint64_t  remoteID,
int32_t  remoteChannel,
bool  checkAcls 
)
virtual

§ getParamsetDescription() [1/2]

PVariable BaseLib::Systems::Peer::getParamsetDescription ( PRpcClientInfo  clientInfo,
int32_t  channel,
PParameterGroup  parameterSet,
bool  checkAcls 
)
virtual

§ getParamsetDescription() [2/2]

PVariable BaseLib::Systems::Peer::getParamsetDescription ( PRpcClientInfo  clientInfo,
int32_t  channel,
ParameterGroup::Type::Enum  type,
uint64_t  remoteID,
int32_t  remoteChannel,
bool  checkAcls 
)
virtual

§ getParamsetHook2()

virtual bool BaseLib::Systems::Peer::getParamsetHook2 ( PRpcClientInfo  clientInfo,
PParameter  parameter,
uint32_t  channel,
PVariable  parameters 
)
inlineprotectedvirtual

§ getParamsetId()

PVariable BaseLib::Systems::Peer::getParamsetId ( PRpcClientInfo  clientInfo,
uint32_t  channel,
ParameterGroup::Type::Enum  type,
uint64_t  remoteID,
int32_t  remoteChannel 
)
virtual

§ getParentID()

virtual uint32_t BaseLib::Systems::Peer::getParentID ( )
inlinevirtual

§ getPeer() [1/3]

std::shared_ptr< BasicPeer > BaseLib::Systems::Peer::getPeer ( int32_t  channel,
int32_t  address,
int32_t  remoteChannel = -1 
)
virtual

§ getPeer() [2/3]

std::shared_ptr< BasicPeer > BaseLib::Systems::Peer::getPeer ( int32_t  channel,
uint64_t  id,
int32_t  remoteChannel = -1 
)
virtual

§ getPeer() [3/3]

std::shared_ptr< BasicPeer > BaseLib::Systems::Peer::getPeer ( int32_t  channel,
std::string  serialNumber,
int32_t  remoteChannel = -1 
)
virtual

§ getPeers()

std::unordered_map< int32_t, std::vector< std::shared_ptr< BasicPeer > > > BaseLib::Systems::Peer::getPeers ( )
virtual

§ getRolesInDevice()

PVariable BaseLib::Systems::Peer::getRolesInDevice ( PRpcClientInfo  clientInfo,
bool  checkAcls 
)
virtual

§ getRolesInRoom()

PVariable BaseLib::Systems::Peer::getRolesInRoom ( PRpcClientInfo  clientInfo,
uint64_t  roomId,
bool  checkAcls 
)
virtual

§ getRoom()

uint64_t BaseLib::Systems::Peer::getRoom ( int32_t  channel)
virtual

§ getRpcDevice()

std::shared_ptr<HomegearDevice> BaseLib::Systems::Peer::getRpcDevice ( )
inline

§ getRpcTypeString()

virtual std::string BaseLib::Systems::Peer::getRpcTypeString ( )
inlinevirtual

§ getRXModes()

HomegearDevice::ReceiveModes::Enum BaseLib::Systems::Peer::getRXModes ( )
virtual

§ getSerialNumber()

virtual std::string BaseLib::Systems::Peer::getSerialNumber ( )
inlinevirtual

§ getServiceMessages()

PVariable BaseLib::Systems::Peer::getServiceMessages ( PRpcClientInfo  clientInfo,
bool  returnID,
const std::string &  language 
)
virtual

§ getTypeString()

virtual std::string BaseLib::Systems::Peer::getTypeString ( )
inlinevirtual

§ getValue()

PVariable BaseLib::Systems::Peer::getValue ( PRpcClientInfo  clientInfo,
uint32_t  channel,
std::string  valueKey,
bool  requestFromDevice,
bool  asynchronous 
)
virtual

§ getValueFromDevice()

virtual PVariable BaseLib::Systems::Peer::getValueFromDevice ( std::shared_ptr< Parameter > &  parameter,
int32_t  channel,
bool  asynchronous 
)
inlineprotectedvirtual

Gets a variable value directly from the device.

This method is used as an inheritable hook method within getValue().

See also
getValue
Parameters
parameterThe parameter to get the value for.
channelThe channel to get the value for.
asynchronousIf set to true, the method returns immediately, otherwise it waits for the response packet.
Returns
Returns the requested value when asynchronous is false. If asynchronous is true, rpcVoid is returned.

§ getVariableBuildingPart()

uint64_t BaseLib::Systems::Peer::getVariableBuildingPart ( int32_t  channel,
const std::string &  variableName 
)
virtual

§ getVariableCategories()

std::set< uint64_t > BaseLib::Systems::Peer::getVariableCategories ( int32_t  channel,
std::string &  variableName 
)
virtual

§ getVariableDescription() [1/2]

PVariable BaseLib::Systems::Peer::getVariableDescription ( PRpcClientInfo  clientInfo,
uint32_t  channel,
std::string  valueKey,
const std::unordered_set< std::string > &  fields 
)
virtual

§ getVariableDescription() [2/2]

PVariable BaseLib::Systems::Peer::getVariableDescription ( PRpcClientInfo  clientInfo,
const PParameter parameter,
int32_t  channel,
ParameterGroup::Type::Enum  type,
int32_t  index,
const std::unordered_set< std::string > &  fields 
)
protectedvirtual

§ getVariableRoles()

std::unordered_map< uint64_t, Role > BaseLib::Systems::Peer::getVariableRoles ( int32_t  channel,
std::string &  variableName 
)
virtual

§ getVariableRoom()

uint64_t BaseLib::Systems::Peer::getVariableRoom ( int32_t  channel,
const std::string &  variableName 
)
virtual

§ getVariablesInBuildingPart()

PVariable BaseLib::Systems::Peer::getVariablesInBuildingPart ( PRpcClientInfo  clientInfo,
uint64_t  buildingPartId,
bool  returnDeviceAssigned,
bool  checkAcls 
)
virtual

§ getVariablesInCategory()

PVariable BaseLib::Systems::Peer::getVariablesInCategory ( PRpcClientInfo  clientInfo,
uint64_t  categoryId,
bool  checkAcls 
)
virtual

§ getVariablesInRole()

PVariable BaseLib::Systems::Peer::getVariablesInRole ( PRpcClientInfo  clientInfo,
uint64_t  roleId,
bool  checkAcls 
)
virtual

§ getVariablesInRoom()

PVariable BaseLib::Systems::Peer::getVariablesInRoom ( PRpcClientInfo  clientInfo,
uint64_t  roomId,
bool  returnDeviceAssigned,
bool  checkAcls 
)
virtual

§ handleCliCommand()

virtual std::string BaseLib::Systems::Peer::handleCliCommand ( std::string  command)
pure virtual

§ hasBuildingPartInChannels()

bool BaseLib::Systems::Peer::hasBuildingPartInChannels ( uint64_t  buildingPartId)
virtual

§ hasCategories() [1/2]

bool BaseLib::Systems::Peer::hasCategories ( )
virtual

§ hasCategories() [2/2]

bool BaseLib::Systems::Peer::hasCategories ( int32_t  channel)
virtual

§ hasCategory()

bool BaseLib::Systems::Peer::hasCategory ( int32_t  channel,
uint64_t  id 
)
virtual

§ hasCategoryInChannels()

bool BaseLib::Systems::Peer::hasCategoryInChannels ( uint64_t  categoryId)
virtual

§ hasRoomInChannels()

bool BaseLib::Systems::Peer::hasRoomInChannels ( uint64_t  roomId)
virtual

§ homegearShuttingDown()

void BaseLib::Systems::Peer::homegearShuttingDown ( )
virtual

§ homegearStarted()

void BaseLib::Systems::Peer::homegearStarted ( )
virtual

§ initializeCentralConfig()

void BaseLib::Systems::Peer::initializeCentralConfig ( )
virtual

§ initializeMasterSet()

void BaseLib::Systems::Peer::initializeMasterSet ( int32_t  channel,
std::shared_ptr< ConfigParameters masterSet 
)
protectedvirtual

§ initializeTypeString()

void BaseLib::Systems::Peer::initializeTypeString ( )
protectedvirtual

Initializes _typeString.

See also
_typeString

§ initializeValueSet()

void BaseLib::Systems::Peer::initializeValueSet ( int32_t  channel,
std::shared_ptr< Variables valueSet 
)
protectedvirtual

§ isTeam()

virtual bool BaseLib::Systems::Peer::isTeam ( )
inlinevirtual

§ load()

virtual bool BaseLib::Systems::Peer::load ( ICentral central)
inlinevirtual

§ loadConfig()

void BaseLib::Systems::Peer::loadConfig ( )
virtual

§ loadVariables()

void BaseLib::Systems::Peer::loadVariables ( ICentral central,
std::shared_ptr< BaseLib::Database::DataTable > &  rows 
)
virtual

§ onConfigPending()

void BaseLib::Systems::Peer::onConfigPending ( bool  configPending)
protectedvirtual

§ onDeleteServiceMessage()

void BaseLib::Systems::Peer::onDeleteServiceMessage ( uint64_t  databaseID)
overrideprotectedvirtual

§ onEnqueuePendingQueues()

void BaseLib::Systems::Peer::onEnqueuePendingQueues ( )
overrideprotectedvirtual

§ onEvent()

void BaseLib::Systems::Peer::onEvent ( std::string &  source,
uint64_t  peerId,
int32_t  channel,
std::shared_ptr< std::vector< std::string >> &  variables,
std::shared_ptr< std::vector< PVariable >> &  values 
)
overrideprotected

§ onGetServiceMessages()

std::shared_ptr< Database::DataTable > BaseLib::Systems::Peer::onGetServiceMessages ( )
overrideprotectedvirtual

§ onRPCEvent()

void BaseLib::Systems::Peer::onRPCEvent ( std::string &  source,
uint64_t  peerId,
int32_t  channel,
std::string &  deviceAddress,
std::shared_ptr< std::vector< std::string >> &  valueKeys,
std::shared_ptr< std::vector< PVariable >> &  values 
)
overrideprotected

§ onSaveParameter()

void BaseLib::Systems::Peer::onSaveParameter ( std::string  name,
uint32_t  channel,
std::vector< uint8_t > &  data 
)
overrideprotectedvirtual

§ onSaveServiceMessage()

void BaseLib::Systems::Peer::onSaveServiceMessage ( Database::DataRow data)
overrideprotectedvirtual

§ onServiceMessageEvent()

void BaseLib::Systems::Peer::onServiceMessageEvent ( const PServiceMessage serviceMessage)
overrideprotectedvirtual

§ pendingQueuesEmpty()

virtual bool BaseLib::Systems::Peer::pendingQueuesEmpty ( )
inlinevirtual

§ putParamset()

virtual PVariable BaseLib::Systems::Peer::putParamset ( PRpcClientInfo  clientInfo,
int32_t  channel,
ParameterGroup::Type::Enum  type,
uint64_t  remoteID,
int32_t  remoteChannel,
PVariable  variables,
bool  checkAcls,
bool  onlyPushing = false 
)
pure virtual

§ raiseAddWebserverEventHandler()

void BaseLib::Systems::Peer::raiseAddWebserverEventHandler ( Rpc::IWebserverEventSink eventHandler)
protectedvirtual

§ raiseEvent()

void BaseLib::Systems::Peer::raiseEvent ( std::string &  source,
uint64_t  peerID,
int32_t  channel,
std::shared_ptr< std::vector< std::string >> &  variables,
std::shared_ptr< std::vector< PVariable >> &  values 
)
protectedvirtual

§ raiseInvokeRpc()

PVariable BaseLib::Systems::Peer::raiseInvokeRpc ( std::string &  methodName,
BaseLib::PArray parameters 
)
protectedvirtual

§ raiseRemoveWebserverEventHandler()

void BaseLib::Systems::Peer::raiseRemoveWebserverEventHandler ( )
protectedvirtual

§ raiseRPCEvent()

void BaseLib::Systems::Peer::raiseRPCEvent ( std::string &  source,
uint64_t  id,
int32_t  channel,
std::string &  deviceAddress,
std::shared_ptr< std::vector< std::string >> &  valueKeys,
std::shared_ptr< std::vector< PVariable >> &  values 
)
protectedvirtual

§ raiseRPCUpdateDevice()

void BaseLib::Systems::Peer::raiseRPCUpdateDevice ( uint64_t  id,
int32_t  channel,
std::string  address,
int32_t  hint 
)
protectedvirtual

§ raiseRunScript()

void BaseLib::Systems::Peer::raiseRunScript ( ScriptEngine::PScriptInfo scriptInfo,
bool  wait 
)
protectedvirtual

§ raiseServiceMessageEvent()

void BaseLib::Systems::Peer::raiseServiceMessageEvent ( const PServiceMessage serviceMessage)
protected

§ removeBuildingPartFromVariables()

void BaseLib::Systems::Peer::removeBuildingPartFromVariables ( uint64_t  buildingPartId)
virtual

§ removeCategory()

bool BaseLib::Systems::Peer::removeCategory ( int32_t  channel,
uint64_t  id 
)
virtual

§ removeCategoryFromVariable()

bool BaseLib::Systems::Peer::removeCategoryFromVariable ( int32_t  channel,
std::string &  variableName,
uint64_t  categoryId 
)
virtual

§ removeCategoryFromVariables()

void BaseLib::Systems::Peer::removeCategoryFromVariables ( uint64_t  categoryId)
virtual

§ removeRoleFromVariable()

bool BaseLib::Systems::Peer::removeRoleFromVariable ( int32_t  channel,
std::string &  variableName,
uint64_t  roleId 
)
virtual

§ removeRoleFromVariables()

void BaseLib::Systems::Peer::removeRoleFromVariables ( uint64_t  roleId)
virtual

§ removeRoomFromVariables()

void BaseLib::Systems::Peer::removeRoomFromVariables ( uint64_t  roomId)
virtual

§ reportValueUsage()

PVariable BaseLib::Systems::Peer::reportValueUsage ( PRpcClientInfo  clientInfo)
virtual

§ roomsSet()

bool BaseLib::Systems::Peer::roomsSet ( )

§ rssiInfo()

PVariable BaseLib::Systems::Peer::rssiInfo ( PRpcClientInfo  clientInfo)
virtual

§ save()

void BaseLib::Systems::Peer::save ( bool  savePeer,
bool  saveVariables,
bool  saveCentralConfig 
)
virtual

§ saveConfig()

void BaseLib::Systems::Peer::saveConfig ( )
virtual

§ saveParameter() [1/3]

void BaseLib::Systems::Peer::saveParameter ( uint32_t  parameterID,
ParameterGroup::Type::Enum  parameterSetType,
uint32_t  channel,
const std::string &  parameterName,
std::vector< uint8_t > &  value,
int32_t  remoteAddress = 0,
uint32_t  remoteChannel = 0 
)
virtual

§ saveParameter() [2/3]

void BaseLib::Systems::Peer::saveParameter ( uint32_t  parameterID,
uint32_t  address,
std::vector< uint8_t > &  value 
)
virtual

§ saveParameter() [3/3]

void BaseLib::Systems::Peer::saveParameter ( uint32_t  parameterID,
std::vector< uint8_t > &  value 
)
virtual

§ savePeers()

virtual void BaseLib::Systems::Peer::savePeers ( )
pure virtual

§ saveSpecialTypeParameter()

void BaseLib::Systems::Peer::saveSpecialTypeParameter ( uint32_t  parameterID,
ParameterGroup::Type::Enum  parameterSetType,
uint32_t  channel,
const std::string &  parameterName,
std::vector< uint8_t > &  value,
int32_t  specialType,
const BaseLib::PVariable metadata,
const std::string &  roles 
)
virtual

§ saveVariable() [1/5]

void BaseLib::Systems::Peer::saveVariable ( uint32_t  index,
int32_t  intValue 
)
virtual

§ saveVariable() [2/5]

void BaseLib::Systems::Peer::saveVariable ( uint32_t  index,
int64_t  intValue 
)
virtual

§ saveVariable() [3/5]

void BaseLib::Systems::Peer::saveVariable ( uint32_t  index,
std::string &  stringValue 
)
virtual

§ saveVariable() [4/5]

void BaseLib::Systems::Peer::saveVariable ( uint32_t  index,
std::vector< char > &  binaryValue 
)
virtual

§ saveVariable() [5/5]

void BaseLib::Systems::Peer::saveVariable ( uint32_t  index,
std::vector< uint8_t > &  binaryValue 
)
virtual

§ saveVariables()

void BaseLib::Systems::Peer::saveVariables ( )
virtual

§ setAddress()

virtual void BaseLib::Systems::Peer::setAddress ( int32_t  value)
inlinevirtual

§ setBuildingPart()

bool BaseLib::Systems::Peer::setBuildingPart ( int32_t  channel,
uint64_t  value 
)
virtual

§ setDefaultValue()

void BaseLib::Systems::Peer::setDefaultValue ( RpcConfigurationParameter parameter)
protectedvirtual

Overridable hook in initializeCentralConfig to set a custom default value.

See BidCoSPeer for an implementation example. There it is used to conditionally set "AES_ACTIVE", depending on whether the physical interface supports it.

Parameters
parameterThe parameter to set the default value for.
See also
initializeCentralConfig

§ setDeviceType()

virtual void BaseLib::Systems::Peer::setDeviceType ( uint64_t  value)
inlinevirtual

§ setFirmwareVersion()

virtual void BaseLib::Systems::Peer::setFirmwareVersion ( int32_t  value)
inlinevirtual

§ setFirmwareVersionString()

virtual void BaseLib::Systems::Peer::setFirmwareVersionString ( std::string  value)
inlinevirtual

§ setID()

void BaseLib::Systems::Peer::setID ( uint64_t  id)
virtual

§ setId()

PVariable BaseLib::Systems::Peer::setId ( PRpcClientInfo  clientInfo,
uint64_t  newPeerID 
)
virtual

RPC function to change the ID of the peer.

Parameters
clientInfoInformation about the RPC client.
newPeerIDThe new ID of the peer.
Returns
Returns "RPC void" on success or RPC error "-100" when the new peer ID is invalid and error "-101" when the new peer ID is already in use.

§ setIdString()

virtual void BaseLib::Systems::Peer::setIdString ( std::string  value)
inlinevirtual

§ setInterface()

virtual PVariable BaseLib::Systems::Peer::setInterface ( PRpcClientInfo  clientInfo,
std::string  interfaceID 
)
inlinevirtual

§ setIp()

virtual void BaseLib::Systems::Peer::setIp ( std::string  value)
inlinevirtual

§ setLastPacketReceived()

void BaseLib::Systems::Peer::setLastPacketReceived ( )
virtual

§ setLinkInfo()

PVariable BaseLib::Systems::Peer::setLinkInfo ( PRpcClientInfo  clientInfo,
int32_t  senderChannel,
uint64_t  receiverID,
int32_t  receiverChannel,
std::string  name,
std::string  description 
)
virtual

§ setName() [1/2]

virtual void BaseLib::Systems::Peer::setName ( std::string  value)
inlinevirtual

§ setName() [2/2]

void BaseLib::Systems::Peer::setName ( int32_t  channel,
std::string  value 
)
virtual

§ setRoom()

bool BaseLib::Systems::Peer::setRoom ( int32_t  channel,
uint64_t  value 
)
virtual

§ setRpcDevice()

void BaseLib::Systems::Peer::setRpcDevice ( std::shared_ptr< HomegearDevice value)
inline

§ setSerialNumber() [1/2]

void BaseLib::Systems::Peer::setSerialNumber ( std::string  serialNumber)
virtual

§ setSerialNumber() [2/2]

PVariable BaseLib::Systems::Peer::setSerialNumber ( PRpcClientInfo  clientInfo,
const std::string &  new_serial_number 
)
virtual

§ setTypeString()

virtual void BaseLib::Systems::Peer::setTypeString ( std::string  value)
inlinevirtual

§ setValue()

PVariable BaseLib::Systems::Peer::setValue ( PRpcClientInfo  clientInfo,
uint32_t  channel,
std::string  valueKey,
PVariable  value,
bool  wait 
)
virtual

§ setVariableBuildingPart()

bool BaseLib::Systems::Peer::setVariableBuildingPart ( int32_t  channel,
std::string &  variableName,
uint64_t  buildingPartId 
)
virtual

§ setVariableRoom()

bool BaseLib::Systems::Peer::setVariableRoom ( int32_t  channel,
std::string &  variableName,
uint64_t  roomId 
)
virtual

§ updatePeer() [1/2]

void BaseLib::Systems::Peer::updatePeer ( uint64_t  oldId,
uint64_t  newId 
)
virtual

§ updatePeer() [2/2]

void BaseLib::Systems::Peer::updatePeer ( const std::string &  old_serial_number,
const std::string &  new_serial_number 
)
virtual

§ variableHasCategories()

bool BaseLib::Systems::Peer::variableHasCategories ( int32_t  channel,
const std::string &  variableName 
)
virtual

§ variableHasCategory()

bool BaseLib::Systems::Peer::variableHasCategory ( int32_t  channel,
const std::string &  variableName,
uint64_t  categoryId 
)
virtual

§ variableHasRole()

bool BaseLib::Systems::Peer::variableHasRole ( int32_t  channel,
const std::string &  variableName,
uint64_t  roleId 
)
virtual

§ variableHasRoles()

bool BaseLib::Systems::Peer::variableHasRoles ( int32_t  channel,
const std::string &  variableName 
)
virtual

§ wireless()

virtual bool BaseLib::Systems::Peer::wireless ( )
pure virtual

Member Data Documentation

§ _address

int32_t BaseLib::Systems::Peer::_address = 0
protected

§ _bl

BaseLib::SharedObjects* BaseLib::Systems::Peer::_bl = nullptr
protected

§ _buildingPartMutex

std::mutex BaseLib::Systems::Peer::_buildingPartMutex
protected

§ _buildingParts

std::unordered_map<int32_t, uint64_t> BaseLib::Systems::Peer::_buildingParts
protected

§ _categories

std::unordered_map<int32_t, std::set<uint64_t> > BaseLib::Systems::Peer::_categories
protected

§ _categoriesMutex

std::mutex BaseLib::Systems::Peer::_categoriesMutex
protected

§ _central

std::shared_ptr<ICentral> BaseLib::Systems::Peer::_central
protected

§ _deviceType

uint64_t BaseLib::Systems::Peer::_deviceType = 0
protected

§ _disposing

bool BaseLib::Systems::Peer::_disposing = false
protected

§ _firmwareVersion

int32_t BaseLib::Systems::Peer::_firmwareVersion = 0
protected

§ _firmwareVersionString

std::string BaseLib::Systems::Peer::_firmwareVersionString
protected

§ _idString

std::string BaseLib::Systems::Peer::_idString
protected

§ _ip

std::string BaseLib::Systems::Peer::_ip
protected

§ _lastPacketReceived

std::atomic<int64_t> BaseLib::Systems::Peer::_lastPacketReceived {0}
protected

§ _names

std::unordered_map<int32_t, std::string> BaseLib::Systems::Peer::_names
protected

§ _namesMutex

std::mutex BaseLib::Systems::Peer::_namesMutex
protected

§ _parentID

uint32_t BaseLib::Systems::Peer::_parentID = 0
protected

§ _peerID

uint64_t BaseLib::Systems::Peer::_peerID = 0
protected

§ _peers

std::unordered_map<int32_t, std::vector<std::shared_ptr<BasicPeer> > > BaseLib::Systems::Peer::_peers
protected

§ _peersMutex

std::mutex BaseLib::Systems::Peer::_peersMutex
protected

§ _roomMutex

std::mutex BaseLib::Systems::Peer::_roomMutex
protected

§ _rooms

std::unordered_map<int32_t, uint64_t> BaseLib::Systems::Peer::_rooms
protected

§ _rpcDevice

std::shared_ptr<HomegearDevice> BaseLib::Systems::Peer::_rpcDevice
protected

§ _rpcTypeString

std::string BaseLib::Systems::Peer::_rpcTypeString
protected

§ _rxModes

HomegearDevice::ReceiveModes::Enum BaseLib::Systems::Peer::_rxModes = HomegearDevice::ReceiveModes::Enum::none
protected

§ _saveTeam

bool BaseLib::Systems::Peer::_saveTeam = false
protected

§ _serialNumber

std::string BaseLib::Systems::Peer::_serialNumber
protected

§ _typeString

std::string BaseLib::Systems::Peer::_typeString
protected

§ _variableDatabaseIDs

std::map<uint32_t, uint32_t> BaseLib::Systems::Peer::_variableDatabaseIDs
protected

§ _webserverEventHandlers

std::map<int32_t, PEventHandler> BaseLib::Systems::Peer::_webserverEventHandlers
protected

§ binaryConfig

std::unordered_map<uint32_t, ConfigDataBlock> BaseLib::Systems::Peer::binaryConfig

§ configCentral

std::unordered_map<uint32_t, std::unordered_map<std::string, RpcConfigurationParameter> > BaseLib::Systems::Peer::configCentral

§ deleting

std::atomic_bool BaseLib::Systems::Peer::deleting

§ kMaximumPeerId

const uint64_t BaseLib::Systems::Peer::kMaximumPeerId = 0x3FFFFFFF
static

§ kUiPeerIdRange

constexpr std::pair<uint64_t, uint64_t> BaseLib::Systems::Peer::kUiPeerIdRange {0x50000000, 0x5FFFFFFF}
static

§ kVirtualPeerIdRange

constexpr std::pair<uint64_t, uint64_t> BaseLib::Systems::Peer::kVirtualPeerIdRange {0x40000000, 0x4FFFFFFF}
static

§ linksCentral

std::unordered_map<uint32_t, std::unordered_map<int32_t, std::unordered_map<uint32_t, std::unordered_map<std::string, RpcConfigurationParameter> > > > BaseLib::Systems::Peer::linksCentral

§ serviceMessages

std::shared_ptr<ServiceMessages> BaseLib::Systems::Peer::serviceMessages

§ valuesCentral

std::unordered_map<uint32_t, std::unordered_map<std::string, RpcConfigurationParameter> > BaseLib::Systems::Peer::valuesCentral

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