OpenZWave Library 1.4.0
Loading...
Searching...
No Matches
Manager.h
Go to the documentation of this file.
1//-----------------------------------------------------------------------------
2//
3// Manager.h
4//
5// The main public interface to OpenZWave.
6//
7// Copyright (c) 2010 Mal Lansell <openzwave@lansell.org>
8//
9// SOFTWARE NOTICE AND LICENSE
10//
11// This file is part of OpenZWave.
12//
13// OpenZWave is free software: you can redistribute it and/or modify
14// it under the terms of the GNU Lesser General Public License as published
15// by the Free Software Foundation, either version 3 of the License,
16// or (at your option) any later version.
17//
18// OpenZWave is distributed in the hope that it will be useful,
19// but WITHOUT ANY WARRANTY; without even the implied warranty of
20// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21// GNU Lesser General Public License for more details.
22//
23// You should have received a copy of the GNU Lesser General Public License
24// along with OpenZWave. If not, see <http://www.gnu.org/licenses/>.
25//
26//-----------------------------------------------------------------------------
27
28#ifndef _Manager_H
29#define _Manager_H
30
31#include <string>
32#include <cstring>
33#include <vector>
34#include <map>
35#include <list>
36#include <deque>
37
38#include "Defs.h"
39#include "Driver.h"
40#include "Group.h"
42
43namespace OpenZWave
44{
45 class Options;
46 class Node;
47 class Msg;
48 class Value;
49 class Event;
50 class Mutex;
51 class SerialPort;
52 class Thread;
53 class Notification;
54 class ValueBool;
55 class ValueByte;
56 class ValueDecimal;
57 class ValueInt;
58 class ValueList;
59 class ValueShort;
60 class ValueString;
61 class ValueRaw;
62
109 class OPENZWAVE_EXPORT Manager
110 {
111 friend class Driver;
112 friend class CommandClass;
113 friend class Group;
114 friend class Node;
115 friend class Value;
116 friend class ValueStore;
117 friend class ValueButton;
118 friend class Msg;
119
120 public:
121 typedef void (*pfnOnNotification_t)( Notification const* _pNotification, void* _context );
122
123 //-----------------------------------------------------------------------------
124 // Construction
125 //-----------------------------------------------------------------------------
130 public:
143 static Manager* Create();
144
150 static Manager* Get(){ return s_instance; }
151
156 static void Destroy();
157
162 static std::string getVersionAsString();
163
168 static std::string getVersionLongAsString();
169
174 static ozwversion getVersion();
176
177 private:
178 Manager(); // Constructor, to be called only via the static Create method.
179 virtual ~Manager(); // Destructor, to be called only via the static Destroy method.
180
181 bool m_exit; // Flag indicating that program exit is in progress.
182 static Manager* s_instance; // Pointer to the instance of the Manager singleton.
183
184 //-----------------------------------------------------------------------------
185 // Configuration
186 //-----------------------------------------------------------------------------
192 public:
203 void WriteConfig( uint32 const _homeId );
204
210 Options* GetOptions()const{ return m_options; }
212
213 private:
214 Options* m_options; // Pointer to the locked Options object that was passed in during creation.
215
216 //-----------------------------------------------------------------------------
217 // Drivers
218 //-----------------------------------------------------------------------------
223 public:
236 bool AddDriver( string const& _controllerPath, Driver::ControllerInterface const& _interface = Driver::ControllerInterface_Serial);
237
248 bool RemoveDriver( string const& _controllerPath );
249
255 uint8 GetControllerNodeId( uint32 const _homeId );
256
262 uint8 GetSUCNodeId( uint32 const _homeId );
263
278 bool IsPrimaryController( uint32 const _homeId );
279
287 bool IsStaticUpdateController( uint32 const _homeId );
288
296 bool IsBridgeController( uint32 const _homeId );
297
303 string GetLibraryVersion( uint32 const _homeId );
304
324 string GetLibraryTypeName( uint32 const _homeId );
325
331 int32 GetSendQueueCount( uint32 const _homeId );
332
337 void LogDriverStatistics( uint32 const _homeId );
338
343 Driver::ControllerInterface GetControllerInterfaceType( uint32 const _homeId );
344
349 string GetControllerPath( uint32 const _homeId );
351
352 private:
353 Driver* GetDriver( uint32 const _homeId );
354 void SetDriverReady( Driver* _driver, bool success );
355
357 list<Driver*> m_pendingDrivers;
358 map<uint32,Driver*> m_readyDrivers;
360
361 //-----------------------------------------------------------------------------
362 // Polling Z-Wave devices
363 //-----------------------------------------------------------------------------
370 public:
374 int32 GetPollInterval();
375
387 void SetPollInterval( int32 _milliseconds, bool _bIntervalBetweenPolls );
388
395 bool EnablePoll( ValueID const &_valueId, uint8 const _intensity = 1 );
396
402 bool DisablePoll( ValueID const &_valueId );
403
409 bool isPolled( ValueID const &_valueId );
410
415 void SetPollIntensity( ValueID const &_valueId, uint8 const _intensity );
416
424 uint8 GetPollIntensity( ValueID const &_valueId );
425
427
428 //-----------------------------------------------------------------------------
429 // Node information
430 //-----------------------------------------------------------------------------
435 public:
447 bool RefreshNodeInfo( uint32 const _homeId, uint8 const _nodeId );
448
457 bool RequestNodeState( uint32 const _homeId, uint8 const _nodeId );
458
467 bool RequestNodeDynamic( uint32 const _homeId, uint8 const _nodeId );
468
475 bool IsNodeListeningDevice( uint32 const _homeId, uint8 const _nodeId );
476
484 bool IsNodeFrequentListeningDevice( uint32 const _homeId, uint8 const _nodeId );
485
492 bool IsNodeBeamingDevice( uint32 const _homeId, uint8 const _nodeId );
493
500 bool IsNodeRoutingDevice( uint32 const _homeId, uint8 const _nodeId );
501
508 bool IsNodeSecurityDevice( uint32 const _homeId, uint8 const _nodeId );
509
516 uint32 GetNodeMaxBaudRate( uint32 const _homeId, uint8 const _nodeId );
517
524 uint8 GetNodeVersion( uint32 const _homeId, uint8 const _nodeId );
525
532 uint8 GetNodeSecurity( uint32 const _homeId, uint8 const _nodeId );
533
540
541 bool IsNodeZWavePlus( uint32 const _homeId, uint8 const _nodeId );
542
549 uint8 GetNodeBasic( uint32 const _homeId, uint8 const _nodeId );
550
557 uint8 GetNodeGeneric( uint32 const _homeId, uint8 const _nodeId );
558
565 uint8 GetNodeSpecific( uint32 const _homeId, uint8 const _nodeId );
566
574 string GetNodeType( uint32 const _homeId, uint8 const _nodeId );
575
583 uint32 GetNodeNeighbors( uint32 const _homeId, uint8 const _nodeId, uint8** _nodeNeighbors );
584
598 string GetNodeManufacturerName( uint32 const _homeId, uint8 const _nodeId );
599
613 string GetNodeProductName( uint32 const _homeId, uint8 const _nodeId );
614
627 string GetNodeName( uint32 const _homeId, uint8 const _nodeId );
628
640 string GetNodeLocation( uint32 const _homeId, uint8 const _nodeId );
641
656 string GetNodeManufacturerId( uint32 const _homeId, uint8 const _nodeId );
657
672 string GetNodeProductType( uint32 const _homeId, uint8 const _nodeId );
673
688 string GetNodeProductId( uint32 const _homeId, uint8 const _nodeId );
689
703 void SetNodeManufacturerName( uint32 const _homeId, uint8 const _nodeId, string const& _manufacturerName );
704
718 void SetNodeProductName( uint32 const _homeId, uint8 const _nodeId, string const& _productName );
719
733 void SetNodeName( uint32 const _homeId, uint8 const _nodeId, string const& _nodeName );
734
747 void SetNodeLocation( uint32 const _homeId, uint8 const _nodeId, string const& _location );
748
759 void SetNodeOn( uint32 const _homeId, uint8 const _nodeId );
760
770 void SetNodeOff( uint32 const _homeId, uint8 const _nodeId );
771
783 void SetNodeLevel( uint32 const _homeId, uint8 const _nodeId, uint8 const _level );
784
791 bool IsNodeInfoReceived( uint32 const _homeId, uint8 const _nodeId );
792
800 bool GetNodeClassInformation( uint32 const _homeId, uint8 const _nodeId, uint8 const _commandClassId,
801 string *_className = NULL, uint8 *_classVersion = NULL);
808 bool IsNodeAwake( uint32 const _homeId, uint8 const _nodeId );
809
816 bool IsNodeFailed( uint32 const _homeId, uint8 const _nodeId );
817
824 string GetNodeQueryStage( uint32 const _homeId, uint8 const _nodeId );
825
826
833 uint16 GetNodeDeviceType( uint32 const _homeId, uint8 const _nodeId );
834
841 string GetNodeDeviceTypeString( uint32 const _homeId, uint8 const _nodeId );
842
849 uint8 GetNodeRole( uint32 const _homeId, uint8 const _nodeId );
850
857 string GetNodeRoleString( uint32 const _homeId, uint8 const _nodeId );
858
865 uint8 GetNodePlusType( uint32 const _homeId, uint8 const _nodeId );
872 string GetNodePlusTypeString ( uint32 const _homeId, uint8 const _nodeId );
873
874
875
877
878 //-----------------------------------------------------------------------------
879 // Values
880 //-----------------------------------------------------------------------------
886 public:
895 string GetValueLabel( ValueID const& _id );
896
905 void SetValueLabel( ValueID const& _id, string const& _value );
906
915 string GetValueUnits( ValueID const& _id );
916
925 void SetValueUnits( ValueID const& _id, string const& _value );
926
935 string GetValueHelp( ValueID const& _id );
936
945 void SetValueHelp( ValueID const& _id, string const& _value );
946
955 int32 GetValueMin( ValueID const& _id );
956
965 int32 GetValueMax( ValueID const& _id );
966
975 bool IsValueReadOnly( ValueID const& _id );
976
985 bool IsValueWriteOnly( ValueID const& _id );
986
995 bool IsValueSet( ValueID const& _id );
996
1005 bool IsValuePolled( ValueID const& _id );
1006
1017 bool GetValueAsBool( ValueID const& _id, bool* o_value );
1018
1029 bool GetValueAsByte( ValueID const& _id, uint8* o_value );
1030
1041 bool GetValueAsFloat( ValueID const& _id, float* o_value );
1042
1053 bool GetValueAsInt( ValueID const& _id, int32* o_value );
1054
1065 bool GetValueAsShort( ValueID const& _id, int16* o_value );
1066
1078 bool GetValueAsString( ValueID const& _id, string* o_value );
1079
1091 bool GetValueAsRaw( ValueID const& _id, uint8** o_value, uint8* o_length );
1092
1103 bool GetValueListSelection( ValueID const& _id, string* o_value );
1104
1115 bool GetValueListSelection( ValueID const& _id, int32* o_value );
1116
1127 bool GetValueListItems( ValueID const& _id, vector<string>* o_value );
1128
1139 bool GetValueListValues( ValueID const& _id, vector<int32>* o_value );
1140
1151 bool GetValueFloatPrecision( ValueID const& _id, uint8* o_value );
1152
1166 bool SetValue( ValueID const& _id, bool const _value );
1167
1180 bool SetValue( ValueID const& _id, uint8 const _value );
1181
1195 bool SetValue( ValueID const& _id, float const _value );
1196
1209 bool SetValue( ValueID const& _id, int32 const _value );
1210
1223 bool SetValue( ValueID const& _id, int16 const _value );
1224
1237 bool SetValue( ValueID const& _id, uint8 const* _value, uint8 const _length );
1238
1251 bool SetValue( ValueID const& _id, string const& _value );
1252
1266 bool SetValueListSelection( ValueID const& _id, string const& _selectedItem );
1267
1277 bool RefreshValue( ValueID const& _id);
1278
1289 void SetChangeVerified( ValueID const& _id, bool _verify );
1290
1300 bool GetChangeVerified( ValueID const& _id );
1301
1311 bool PressButton( ValueID const& _id );
1312
1322 bool ReleaseButton( ValueID const& _id );
1324
1325 //-----------------------------------------------------------------------------
1326 // Climate Control Schedules
1327 //-----------------------------------------------------------------------------
1341
1350 uint8 GetNumSwitchPoints( ValueID const& _id );
1351
1371 bool SetSwitchPoint( ValueID const& _id, uint8 const _hours, uint8 const _minutes, int8 const _setback );
1372
1388 bool RemoveSwitchPoint( ValueID const& _id, uint8 const _hours, uint8 const _minutes );
1389
1398 void ClearSwitchPoints( ValueID const& _id );
1399
1417 bool GetSwitchPoint( ValueID const& _id, uint8 const _idx, uint8* o_hours, uint8* o_minutes, int8* o_setback );
1418
1420
1421 //-----------------------------------------------------------------------------
1422 // SwitchAll
1423 //-----------------------------------------------------------------------------
1431
1436 void SwitchAllOn( uint32 const _homeId );
1437
1442 void SwitchAllOff( uint32 const _homeId );
1443
1445
1446 //-----------------------------------------------------------------------------
1447 // Configuration Parameters
1448 //-----------------------------------------------------------------------------
1458 public:
1474 bool SetConfigParam( uint32 const _homeId, uint8 const _nodeId, uint8 const _param, int32 _value, uint8 const _size = 2 );
1475
1491 void RequestConfigParam( uint32 const _homeId, uint8 const _nodeId, uint8 const _param );
1492
1499 void RequestAllConfigParams( uint32 const _homeId, uint8 const _nodeId );
1501
1502 //-----------------------------------------------------------------------------
1503 // Groups (wrappers for the Node methods)
1504 //-----------------------------------------------------------------------------
1509 public:
1519 uint8 GetNumGroups( uint32 const _homeId, uint8 const _nodeId );
1520
1532 uint32 GetAssociations( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx, uint8** o_associations );
1533
1545 uint32 GetAssociations( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx, InstanceAssociation** o_associations );
1546
1555 uint8 GetMaxAssociations( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx );
1556
1565 string GetGroupLabel( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx );
1566
1579 void AddAssociation( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx, uint8 const _targetNodeId, uint8 const _instance = 0x00 );
1580
1593 void RemoveAssociation( uint32 const _homeId, uint8 const _nodeId, uint8 const _groupIdx, uint8 const _targetNodeId, uint8 const _instance = 0x00 );
1594
1596
1597 //-----------------------------------------------------------------------------
1598 // Notifications
1599 //-----------------------------------------------------------------------------
1604 public:
1615 bool AddWatcher( pfnOnNotification_t _watcher, void* _context );
1616
1624 bool RemoveWatcher( pfnOnNotification_t _watcher, void* _context );
1626
1627 private:
1628 void NotifyWatchers( Notification* _notification ); // Passes the notifications to all the registered watcher callbacks in turn.
1629
1630 struct Watcher
1631 {
1632 pfnOnNotification_t m_callback;
1633 void* m_context;
1634
1635 Watcher
1636 (
1637 pfnOnNotification_t _callback,
1638 void* _context
1639 ):
1640 m_callback( _callback ),
1641 m_context( _context )
1642 {
1643 }
1644 };
1645
1647 list<Watcher*> m_watchers; // List of all the registered watchers.
1648 list<list<Watcher*>::iterator*> m_watcherIterators; // Iterators currently operating on the list of watchers
1650 Mutex* m_notificationMutex;
1651
1652 //-----------------------------------------------------------------------------
1653 // Controller commands
1654 //-----------------------------------------------------------------------------
1659 public:
1666 void ResetController( uint32 const _homeId );
1667
1674 void SoftReset( uint32 const _homeId );
1675
1732 DEPRECATED bool BeginControllerCommand( uint32 const _homeId, Driver::ControllerCommand _command, Driver::pfnControllerCallback_t _callback = NULL, void* _context = NULL, bool _highPower = false, uint8 _nodeId = 0xff, uint8 _arg = 0 );
1733
1740 bool CancelControllerCommand( uint32 const _homeId );
1742
1743 //-----------------------------------------------------------------------------
1744 // Network commands
1745 //-----------------------------------------------------------------------------
1751 public:
1759 void TestNetworkNode( uint32 const _homeId, uint8 const _nodeId, uint32 const _count );
1760
1768 void TestNetwork( uint32 const _homeId, uint32 const _count );
1769
1777 void HealNetworkNode( uint32 const _homeId, uint8 const _nodeId, bool _doRR );
1778
1786 void HealNetwork( uint32 const _homeId, bool _doRR );
1787
1801 bool AddNode( uint32 const _homeId, bool _doSecurity = true );
1802
1815 bool RemoveNode(uint32 const _homeId);
1816
1833 bool RemoveFailedNode(uint32 const _homeId, uint8 const _nodeId);
1834
1849 bool HasNodeFailed(uint32 const _homeId, uint8 const _nodeId);
1850
1863 bool RequestNodeNeighborUpdate(uint32 const _homeId, uint8 const _nodeId);
1864
1877 bool AssignReturnRoute(uint32 const _homeId, uint8 const _nodeId);
1878
1891 bool DeleteAllReturnRoutes(uint32 const _homeId, uint8 const _nodeId);
1892
1902 bool SendNodeInformation(uint32 const _homeId, uint8 const _nodeId);
1903
1915 bool CreateNewPrimary(uint32 const _homeId);
1916
1928 bool ReceiveConfiguration (uint32 const _homeId);
1929
1944 bool ReplaceFailedNode(uint32 const _homeId, uint8 const _nodeId);
1945
1957 bool TransferPrimaryRole(uint32 const _homeId);
1958
1970 bool RequestNetworkUpdate(uint32 const _homeId, uint8 const _nodeId);
1971
1983 bool ReplicationSend(uint32 const _homeId, uint8 const _nodeId);
1984
1999 bool CreateButton(uint32 const _homeId, uint8 const _nodeId, uint8 const _buttonid);
2000
2015 bool DeleteButton(uint32 const _homeId, uint8 const _nodeId, uint8 const _buttonid);
2016
2018
2019 //-----------------------------------------------------------------------------
2020 // Scene commands
2021 //-----------------------------------------------------------------------------
2026 public:
2032 uint8 GetNumScenes( );
2033
2040 uint8 GetAllScenes( uint8** _sceneIds );
2041
2047 void RemoveAllScenes( uint32 const _homeId );
2048
2055 uint8 CreateScene();
2056
2063 bool RemoveScene( uint8 const _sceneId );
2064
2073 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, bool const _value );
2074
2083 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, uint8 const _value );
2084
2093 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, float const _value );
2094
2103 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, int32 const _value );
2104
2113 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, int16 const _value );
2114
2123 bool AddSceneValue( uint8 const _sceneId, ValueID const& _valueId, string const& _value );
2124
2133 bool AddSceneValueListSelection( uint8 const _sceneId, ValueID const& _valueId, string const& _value );
2134
2143 bool AddSceneValueListSelection( uint8 const _sceneId, ValueID const& _valueId, int32 const _value );
2144
2152 bool RemoveSceneValue( uint8 const _sceneId, ValueID const& _valueId );
2153
2161 int SceneGetValues( uint8 const _sceneId, vector<ValueID>* o_value );
2162
2171 bool SceneGetValueAsBool( uint8 const _sceneId, ValueID const& _valueId, bool* o_value );
2172
2181 bool SceneGetValueAsByte( uint8 const _sceneId, ValueID const& _valueId, uint8* o_value );
2182
2191 bool SceneGetValueAsFloat( uint8 const _sceneId, ValueID const& _valueId, float* o_value );
2192
2201 bool SceneGetValueAsInt( uint8 const _sceneId, ValueID const& _valueId, int32* o_value );
2202
2211 bool SceneGetValueAsShort( uint8 const _sceneId, ValueID const& _valueId, int16* o_value );
2212
2221 bool SceneGetValueAsString( uint8 const _sceneId, ValueID const& _valueId, string* o_value );
2222
2231 bool SceneGetValueListSelection( uint8 const _sceneId, ValueID const& _valueId, string* o_value );
2232
2241 bool SceneGetValueListSelection( uint8 const _sceneId, ValueID const& _valueId, int32* o_value );
2242
2251 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, bool const _value );
2252
2261 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, uint8 const _value );
2262
2271 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, float const _value );
2272
2281 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, int32 const _value );
2282
2291 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, int16 const _value );
2292
2301 bool SetSceneValue( uint8 const _sceneId, ValueID const& _valueId, string const& _value );
2302
2311 bool SetSceneValueListSelection( uint8 const _sceneId, ValueID const& _valueId, string const& _value );
2312
2321 bool SetSceneValueListSelection( uint8 const _sceneId, ValueID const& _valueId, int32 const _value );
2322
2329 string GetSceneLabel( uint8 const _sceneId );
2330
2337 void SetSceneLabel( uint8 const _sceneId, string const& _value );
2338
2345 bool SceneExists( uint8 const _sceneId );
2346
2353 bool ActivateScene( uint8 const _sceneId );
2354
2356
2357 //-----------------------------------------------------------------------------
2358 // Statistics interface
2359 //-----------------------------------------------------------------------------
2364 public:
2370 void GetDriverStatistics( uint32 const _homeId, Driver::DriverData* _data );
2371
2378 void GetNodeStatistics( uint32 const _homeId, uint8 const _nodeId, Node::NodeData* _data );
2379
2380 };
2381
2382} // namespace OpenZWave
2383
2384#endif // _Manager_H
unsigned short uint16
Definition Defs.h:77
#define NULL
Definition Defs.h:70
unsigned int uint32
Definition Defs.h:80
signed char int8
Definition Defs.h:73
signed short int16
Definition Defs.h:76
signed int int32
Definition Defs.h:79
#define OPENZWAVE_EXPORT_WARNINGS_ON
Definition Defs.h:54
#define OPENZWAVE_EXPORT
Definition Defs.h:52
#define OPENZWAVE_EXPORT_WARNINGS_OFF
Definition Defs.h:53
#define DEPRECATED
Definition Defs.h:63
unsigned char uint8
Definition Defs.h:74
The Driver class handles communication between OpenZWave and a device attached via a serial port (typ...
Definition Driver.h:59
ControllerInterface
Definition Driver.h:84
@ ControllerInterface_Serial
Definition Driver.h:86
Platform-independent definition of event objects.
Definition Event.h:40
The main public interface to OpenZWave.
Definition Manager.h:110
void(* pfnOnNotification_t)(Notification const *_pNotification, void *_context)
Definition Manager.h:121
friend class CommandClass
Definition Manager.h:112
friend class Group
Definition Manager.h:113
static Manager * Create()
Creates the Manager singleton object. The Manager provides the public interface to OpenZWave,...
Definition Manager.cpp:79
Options * GetOptions() const
Gets a pointer to the locked Options object.
Definition Manager.h:210
friend class Node
Definition Manager.h:114
friend class Msg
Definition Manager.h:118
friend class Driver
Definition Manager.h:111
friend class ValueStore
Definition Manager.h:116
static Manager * Get()
Gets a pointer to the Manager object.
Definition Manager.h:150
friend class Value
Definition Manager.h:115
friend class ValueButton
Definition Manager.h:117
Message object to be passed to and from devices on the Z-Wave network.
Definition Msg.h:45
Implements a platform-independent mutex–for serializing access to a shared resource.
Definition Mutex.h:40
The Node class describes a Z-Wave node object...typically a device on the Z-Wave network.
Definition Node.h:65
Provides a container for data sent via the notification callback handler installed by a call to Manag...
Definition Notification.h:43
Manages library options read from XML files or the command line.
Definition Options.h:67
Implements a platform-independent thread management class.
Definition Thread.h:43
Boolean value sent to/received from a node.
Definition ValueBool.h:46
Byte value sent to/received from a node.
Definition ValueByte.h:45
Decimal value sent to/received from a node.
Definition ValueDecimal.h:45
Provides a unique ID for a value reported by a Z-Wave device.
Definition ValueID.h:54
Integer value sent to/received from a node.
Definition ValueInt.h:45
List of values sent to/received from a node.
Definition ValueList.h:46
A collection of bytes sent to/received from a node.
Definition ValueRaw.h:45
Short value sent to/received from a node.
Definition ValueShort.h:45
String value sent to/received from a node.
Definition ValueString.h:45
Base class for values associated with a node.
Definition Value.h:48
Definition Bitfield.h:35
Definition Group.h:42
Definition Defs.h:95