OpenZWave Library  1.4.5216
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Enumerations | Functions | Variables
OpenZWave Namespace Reference

Classes

class  Alarm
 Implements COMMAND_CLASS_ALARM (0x71), a Z-Wave device command class. More...
 
class  ApplicationStatus
 Implements COMMAND_CLASS_APPLICATION_STATUS (0x22), a Z-Wave device command class. More...
 
class  Association
 Implements COMMAND_CLASS_ASSOCIATION (0x85), a Z-Wave device command class. More...
 
class  AssociationCommandConfiguration
 Implements COMMAND_CLASS_ASSOCIATION_COMMAND_CONFIGURATION (0x9b), a Z-Wave device command class. More...
 
class  Basic
 Implements COMMAND_CLASS_BASIC (0x20), a Z-Wave device command class. More...
 
class  BasicWindowCovering
 Implements COMMAND_CLASS_BASIC_WINDOW_COVERING (0x50), a Z-Wave device command class. More...
 
class  Battery
 Implements COMMAND_CLASS_BATTERY (0x80), a Z-Wave device command class. More...
 
class  Bitfield
 
class  CentralScene
 Implements COMMAND_CLASS_CENTRAL_SCENE (0x5B), a Z-Wave device command class. More...
 
class  ClimateControlSchedule
 Implements COMMAND_CLASS_CLIMATE_CONTROL_SCHEDULE (0x46), a Z-Wave device command class. More...
 
class  Clock
 Implements COMMAND_CLASS_CLOCK (0x81), a Z-Wave device command class. More...
 
class  Color
 Implements COMMAND_CLASS_COLOR (0x33), a Z-Wave device command class. More...
 
class  CommandClass
 Base class for all Z-Wave command classes. More...
 
class  CommandClasses
 Manages a map of command classes supported by a specific Z-Wave node. More...
 
class  Configuration
 Implements COMMAND_CLASS_CONFIGURATION (0x70), a Z-Wave device command class. More...
 
class  Controller
 
class  ControllerReplication
 Implements COMMAND_CLASS_CONTROLLER_REPLICATION (0x21), a Z-Wave device command class. More...
 
class  CRC16Encap
 Implements COMMAND_CLASS_CRC_16_ENCAP (0x56), a Z-Wave device command class. More...
 
class  DeviceResetLocally
 Implements COMMAND_CLASS_DEVICE_RESET_LOCALLY (0x5a), a Z-Wave device command class. More...
 
class  DoorLock
 Implements COMMAND_CLASS_DOOR_LOCK (0x62), a Z-Wave device command class. More...
 
class  DoorLockLogging
 Implements COMMAND_CLASS_DOOR_LOCK_LOGGING (0x4C), a Z-Wave device command class. More...
 
class  Driver
 The Driver class handles communication between OpenZWave and a device attached via a serial port (typically a controller). More...
 
class  EnergyProduction
 Implements COMMAND_CLASS_ENERGY_PRODUCTION (0x90), a Z-Wave device command class. More...
 
class  Event
 Platform-independent definition of event objects. More...
 
class  EventImpl
 Windows-specific implementation of the Event class. More...
 
class  FileOps
 Implements platform-independent File Operations. More...
 
class  FileOpsImpl
 
class  Group
 Manages a group of devices (various nodes associated with each other). More...
 
class  Hail
 Implements COMMAND_CLASS_HAIL (0x82), a Z-Wave device command class. More...
 
class  HidController
 
class  i_LogImpl
 
class  Indicator
 Implements COMMAND_CLASS_INDICATOR (0x87), a Z-Wave device command class. More...
 
struct  InstanceAssociation
 
class  Language
 Implements COMMAND_CLASS_LANGUAGE (0x89), a Z-Wave device command class. More...
 
class  Lock
 Implements COMMAND_CLASS_LOCK (0x76), a Z-Wave device command class. More...
 
struct  LockGuard
 
class  Log
 Implements a platform-independent log...written to the console and, optionally, a file. More...
 
class  LogImpl
 Windows-specific implementation of the Log class. More...
 
class  Manager
 The main public interface to OpenZWave. More...
 
class  ManufacturerSpecific
 Implements COMMAND_CLASS_MANUFACTURER_SPECIFIC (0x72), a Z-Wave device command class. More...
 
class  Meter
 Implements COMMAND_CLASS_METER (0x32), a Z-Wave device command class. More...
 
class  MeterPulse
 Implements COMMAND_CLASS_METER_PULSE (0x35), a Z-Wave device command class. More...
 
class  Msg
 Message object to be passed to and from devices on the Z-Wave network. More...
 
class  MultiCmd
 Implements COMMAND_CLASS_MULTI_CMD (0x8f), a Z-Wave device command class. More...
 
class  MultiInstance
 Implements COMMAND_CLASS_MULTI_INSTANCE (0x60), a Z-Wave device command class. More...
 
class  MultiInstanceAssociation
 Implements COMMAND_CLASS_MULTI_INSTANCE_ASSOCIATION (0x8E), a Z-Wave device command class. More...
 
class  Mutex
 Implements a platform-independent mutex–for serializing access to a shared resource. More...
 
class  MutexImpl
 Windows-specific implementation of the Mutex class. More...
 
class  Node
 The Node class describes a Z-Wave node object...typically a device on the Z-Wave network. More...
 
class  NodeNaming
 Implements COMMAND_CLASS_NODE_NAMING (0x77), a Z-Wave device command class. More...
 
class  NoOperation
 Implements COMMAND_CLASS_NO_OPERATION (0x00), a Z-Wave device command class. More...
 
class  Notification
 Provides a container for data sent via the notification callback handler installed by a call to Manager::AddWatcher. More...
 
class  Options
 Manages library options read from XML files or the command line. More...
 
class  OZWException
 Exception Handling Interface. More...
 
class  Powerlevel
 Implements COMMAND_CLASS_POWERLEVEL (0x73), a Z-Wave device command class. More...
 
class  Proprietary
 Implements COMMAND_CLASS_PROPRIETARY (0x88), a Z-Wave device command class. More...
 
class  Protection
 Implements COMMAND_CLASS_PROTECTION (0x75), a Z-Wave device command class. More...
 
class  Ref
 
class  Scene
 Collection of ValueIDs to be treated as a unit. More...
 
class  SceneActivation
 Implements COMMAND_CLASS_SCENEACTIVATION (0x2B), a Z-Wave device command class. More...
 
class  Security
 
class  SensorAlarm
 Implements COMMAND_CLASS_SENSOR_ALARM (0x9c), a Z-Wave device command class. More...
 
class  SensorBinary
 Implements COMMAND_CLASS_SENSOR_BINARY (0x30), a Z-Wave device command class. More...
 
class  SensorMultilevel
 Implements COMMAND_CLASS_SENSOR_MULTILEVEL (0x31), a Z-Wave device command class. More...
 
class  SerialController
 
class  SerialControllerImpl
 
class  Stream
 Platform-independent definition of a circular buffer. More...
 
class  SwitchAll
 Implements COMMAND_CLASS_SWITCH_ALL (0x27), a Z-Wave device command class. More...
 
class  SwitchBinary
 Implements COMMAND_CLASS_SWITCH_BINARY (0x25), a Z-Wave device command class. More...
 
class  SwitchMultilevel
 Implements COMMAND_CLASS_SWITCH_MULTILEVEL (0x26), a Z-Wave device command class. More...
 
class  SwitchToggleBinary
 Implements COMMAND_CLASS_SWITCH_TOGGLE_BINARY (0x28), a Z-Wave device command class. More...
 
class  SwitchToggleMultilevel
 Implements COMMAND_CLASS_SWITCH_TOGGLE_MULTILEVEL (0x29), a Z-Wave device command class. More...
 
class  ThermostatFanMode
 Implements COMMAND_CLASS_THERMOSTAT_FAN_MODE (0x44), a Z-Wave device command class. More...
 
class  ThermostatFanState
 Implements COMMAND_CLASS_THERMOSTAT_FAN_STATE (0x45), a Z-Wave device command class. More...
 
class  ThermostatMode
 Implements COMMAND_CLASS_THERMOSTAT_MODE (0x40), a Z-Wave device command class. More...
 
class  ThermostatOperatingState
 Implements COMMAND_CLASS_THERMOSTAT_OPERATING_STATE (0x42), a Z-Wave device command class. More...
 
class  ThermostatSetpoint
 Implements COMMAND_CLASS_THERMOSTAT_SETPOINT (0x43), a Z-Wave device command class. More...
 
class  Thread
 Implements a platform-independent thread management class. More...
 
class  ThreadImpl
 Windows-specific implementation of the Thread class. More...
 
class  TimeParameters
 Implements COMMAND_CLASS_TIME_PARAMETERS (0x8B), a Z-Wave device command class. More...
 
class  TimeStamp
 Implements a platform-independent TimeStamp. More...
 
class  TimeStampImpl
 Windows implementation of a timestamp. More...
 
class  UserCode
 Implements COMMAND_CLASS_USER_CODE (0x63), a Z-Wave device command class. More...
 
class  Value
 Base class for values associated with a node. More...
 
class  ValueBool
 Boolean value sent to/received from a node. More...
 
class  ValueButton
 Button value ???. More...
 
class  ValueByte
 Byte value sent to/received from a node. More...
 
class  ValueDecimal
 Decimal value sent to/received from a node. More...
 
class  ValueID
 Provides a unique ID for a value reported by a Z-Wave device. More...
 
class  ValueInt
 Integer value sent to/received from a node. More...
 
class  ValueList
 List of values sent to/received from a node. More...
 
class  ValueRaw
 A collection of bytes sent to/received from a node. More...
 
class  ValueSchedule
 Schedule sent to/received from a node. More...
 
class  ValueShort
 Short value sent to/received from a node. More...
 
class  ValueStore
 Container that holds all of the values associated with a given node. More...
 
class  ValueString
 String value sent to/received from a node. More...
 
class  Version
 Implements COMMAND_CLASS_VERSION (0x86), a Z-Wave device command class. More...
 
class  Wait
 Platform-independent definition of Wait objects. More...
 
class  WaitImpl
 Windows specific implementation of Wait objects. More...
 
class  WakeUp
 Implements COMMAND_CLASS_WAKE_UP (0x84), a Z-Wave device command class. More...
 
class  ZWavePlusInfo
 Implements COMMAND_CLASS_ZWAVE_PLUS_INFO (0x5E), a Z-Wave device command class. More...
 

Typedefs

typedef struct
OpenZWave::InstanceAssociation 
InstanceAssociation
 

Enumerations

enum  SecurityCmd {
  SecurityCmd_SupportedGet = 0x02, SecurityCmd_SupportedReport = 0x03, SecurityCmd_SchemeGet = 0x04, SecurityCmd_SchemeReport = 0x05,
  SecurityCmd_NetworkKeySet = 0x06, SecurityCmd_NetworkKeyVerify = 0x07, SecurityCmd_SchemeInherit = 0x08, SecurityCmd_NonceGet = 0x40,
  SecurityCmd_NonceReport = 0x80, SecurityCmd_MessageEncap = 0x81, SecurityCmd_MessageEncapNonceGet = 0xc1
}
 Implements COMMAND_CLASS_SECURITY (0x98), a Z-Wave device command class. More...
 
enum  SecurityScheme { SecurityScheme_Zero = 0x00 }
 
enum  LogLevel {
  LogLevel_Invalid, LogLevel_None, LogLevel_Always, LogLevel_Fatal,
  LogLevel_Error, LogLevel_Warning, LogLevel_Alert, LogLevel_Info,
  LogLevel_Detail, LogLevel_Debug, LogLevel_StreamDetail, LogLevel_Internal
}
 
enum  SecurityStrategy { SecurityStrategy_Essential = 0, SecurityStrategy_Supported }
 

Functions

string ToUpper (string const &_str)
 
string ToLower (string const &_str)
 
void split (std::vector< std::string > &lst, const std::string &input, const std::string &separators, bool remove_empty=true)
 
std::string & trim (std::string &s)
 
void PrintHex (std::string prefix, uint8_t const *data, uint32 const length)
 
string PktToString (uint8 const *data, uint32 const length)
 
bool GenerateAuthentication (uint8 const *_data, uint32 const _length, Driver *driver, uint8 const _sendingNode, uint8 const _receivingNode, uint8 *iv, uint8 *_authentication)
 
bool EncyrptBuffer (uint8 *m_buffer, uint8 m_length, Driver *driver, uint8 const _sendingNode, uint8 const _receivingNode, uint8 const m_nonce[8], uint8 *e_buffer)
 
bool createIVFromPacket_inbound (uint8 const *_data, uint8 const m_nonce[8], uint8 *iv)
 
bool DecryptBuffer (uint8 *e_buffer, uint8 e_length, Driver *driver, uint8 const _sendingNode, uint8 const _receivingNode, uint8 const m_nonce[8], uint8 *m_buffer)
 
SecurityStrategy ShouldSecureCommandClass (uint8 CommandClass)
 

Variables

char const * LogLevelString []
 

Typedef Documentation

Enumeration Type Documentation

Enumerator
LogLevel_Invalid 

Invalid Log Status

LogLevel_None 

Disable all logging

LogLevel_Always 

These messages should always be shown

LogLevel_Fatal 

A likely fatal issue in the library

LogLevel_Error 

A serious issue with the library or the network

LogLevel_Warning 

A minor issue from which the library should be able to recover

LogLevel_Alert 

Something unexpected by the library about which the controlling application should be aware

LogLevel_Info 

Everything's working fine...these messages provide streamlined feedback on each message

LogLevel_Detail 

Detailed information on the progress of each message

LogLevel_Debug 

Very detailed information on progress that will create a huge log file quickly But this level (as others) can be queued and sent to the log only on an error or warning

LogLevel_StreamDetail 

Will include low-level byte transfers from controller to buffer to application and back

LogLevel_Internal 

Used only within the log class (uses existing timestamp, etc.)

Implements COMMAND_CLASS_SECURITY (0x98), a Z-Wave device command class.

Enumerator
SecurityCmd_SupportedGet 
SecurityCmd_SupportedReport 
SecurityCmd_SchemeGet 
SecurityCmd_SchemeReport 
SecurityCmd_NetworkKeySet 
SecurityCmd_NetworkKeyVerify 
SecurityCmd_SchemeInherit 
SecurityCmd_NonceGet 
SecurityCmd_NonceReport 
SecurityCmd_MessageEncap 
SecurityCmd_MessageEncapNonceGet 
Enumerator
SecurityScheme_Zero 
Enumerator
SecurityStrategy_Essential 
SecurityStrategy_Supported 

Function Documentation

bool OpenZWave::createIVFromPacket_inbound ( uint8 const *  _data,
uint8 const  m_nonce[8],
uint8 iv 
)
bool OpenZWave::DecryptBuffer ( uint8 e_buffer,
uint8  e_length,
Driver *  driver,
uint8 const  _sendingNode,
uint8 const  _receivingNode,
uint8 const  m_nonce[8],
uint8 m_buffer 
)
bool OpenZWave::EncyrptBuffer ( uint8 m_buffer,
uint8  m_length,
Driver *  driver,
uint8 const  _sendingNode,
uint8 const  _receivingNode,
uint8 const  m_nonce[8],
uint8 e_buffer 
)
bool OpenZWave::GenerateAuthentication ( uint8 const *  _data,
uint32 const  _length,
Driver *  driver,
uint8 const  _sendingNode,
uint8 const  _receivingNode,
uint8 iv,
uint8 _authentication 
)
string OpenZWave::PktToString ( uint8 const *  data,
uint32 const  length 
)
void OpenZWave::PrintHex ( std::string  prefix,
uint8_t const *  data,
uint32 const  length 
)
SecurityStrategy OpenZWave::ShouldSecureCommandClass ( uint8  CommandClass)
void OpenZWave::split ( std::vector< std::string > &  lst,
const std::string &  input,
const std::string &  separators,
bool  remove_empty = true 
)

Split a String into a Vector, seperated by seperators

Parameters
lstthe vector to store the results in
inputthe input string to split
seperatorsa string containing a list of valid seperators
remove_emptyif after spliting a string, the any of the results are a empty string, should we preseve them or not
string OpenZWave::ToLower ( string const &  _str)

Convert a string to all lower-case.

Parameters
_strthe string to be converted.
Returns
the lower-case string.
See also
ToUpper, Trim
string OpenZWave::ToUpper ( string const &  _str)

Convert a string to all upper-case.

Parameters
_strthe string to be converted.
Returns
the upper-case string.
See also
ToLower, Trim
std::string & OpenZWave::trim ( std::string &  s)

Trim Whitespace from the start and end of a string.

Parameters
sthe string to trim
Returns
the trimmed string

Variable Documentation

char const * OpenZWave::LogLevelString
Initial value:
=
{
"Invalid",
"None",
"Always",
"Fatal",
"Error",
"Warning",
"Alert",
"Info",
"Detail",
"Debug",
"StreamDetail",
"Internal"
}