BeeeOn Gateway  v2020.3.1-2-g6f737dc
Platform to interconnect the IoT world
Data Structures | Public Types | Public Member Functions
BeeeOn::ZWaveNode Class Reference

ZWaveNode represents information from the Z-Wave network about a particular node. Each Z-Wave node is identified by a home ID and node ID. The node ID is a locally unique identifier. The home ID is a globally unique (usually random generated) defined by the hardware controller. More...

#include <ZWaveNode.h>

Inheritance diagram for BeeeOn::ZWaveNode:
BeeeOn::OZWNetwork::OZWNode

Data Structures

class  CommandClass
 Command class representation of a Z-Wave value. We support only a subset of command classes that are relevant for using with the BeeeOn system. More...
 
struct  Identity
 Identity of a Z-Wave node that can be used separately without any instance of the ZWaveNode class. More...
 
class  Value
 Value coming from the Z-Wave network. It holds some data (usually sensor data) and metadata to identify the value semantics. More...
 

Public Types

enum  Support {
  SUPPORT_LISTENING = 0x01, SUPPORT_BEAMING = 0x02, SUPPORT_ROUTING = 0x04, SUPPORT_SECURITY = 0x08,
  SUPPORT_ZWAVEPLUS = 0x10
}
 Feature flags denoting supported features of a Z-Wave node.
 

Public Member Functions

 ZWaveNode (const Identity &id, bool controller=false)
 
uint32_t home () const
 
uint8_t node () const
 
const Identityid () const
 
bool controller () const
 
void setSupport (uint32_t support)
 
uint32_t support () const
 
void setProductId (uint16_t id)
 
uint16_t productId () const
 
void setProduct (const std::string &name)
 
std::string product () const
 
void setProductType (uint16_t type)
 
uint16_t productType () const
 
void setVendorId (uint16_t id)
 
uint16_t vendorId () const
 
void setVendor (const std::string &vendor)
 
std::string vendor () const
 
void setQueried (bool queried)
 
bool queried () const
 
void add (const CommandClass &cc)
 
const std::set< CommandClass > & commandClasses () const
 
std::string toString () const
 
std::string toInfoString () const
 
bool operator< (const ZWaveNode &node) const
 

Detailed Description

ZWaveNode represents information from the Z-Wave network about a particular node. Each Z-Wave node is identified by a home ID and node ID. The node ID is a locally unique identifier. The home ID is a globally unique (usually random generated) defined by the hardware controller.

It can be in one of two states:

Member Function Documentation

bool ZWaveNode::controller ( ) const
Returns
true if this node is the controller of the network, it is always valid
uint32_t ZWaveNode::home ( ) const
Returns
home ID, it is always valid
const ZWaveNode::Identity & ZWaveNode::id ( ) const
Returns
node identity, it is always valid
uint8_t ZWaveNode::node ( ) const
Returns
node ID, it is always valid
string ZWaveNode::product ( ) const
Returns
name of the node product.
uint16_t ZWaveNode::productId ( ) const
Returns
product ID as reported by the node itself.
uint16_t ZWaveNode::productType ( ) const
Returns
product type as reported by the node itself.
bool ZWaveNode::queried ( ) const
Returns
true if this node has been fully queried
void ZWaveNode::setProduct ( const std::string &  name)

Set name of the node product.

void ZWaveNode::setProductId ( uint16_t  id)

Set product ID reported by the node.

void ZWaveNode::setProductType ( uint16_t  type)

Set product type as reported by the node itself.

void ZWaveNode::setQueried ( bool  queried)

Set whether this node is already queried and thus the mutable properties are set.

void ZWaveNode::setSupport ( uint32_t  support)

Set bitmap of support flags.

void ZWaveNode::setVendor ( const std::string &  vendor)

Set name of the node's vendor (manufacturer).

void ZWaveNode::setVendorId ( uint16_t  id)

Set vendor ID as reported by the node itself.

uint32_t ZWaveNode::support ( ) const
Returns
bitmap of support flags
string ZWaveNode::vendor ( ) const
Returns
name of the node's vendor (manufacturer)
uint16_t ZWaveNode::vendorId ( ) const
Returns
vendor ID as reported by the node itself.

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