28 #ifndef _CommandClass_H 29 #define _CommandClass_H 60 RequestFlag_Static = 0x00000001,
61 RequestFlag_Session = 0x00000002,
62 RequestFlag_Dynamic = 0x00000004,
63 RequestFlag_AfterMark = 0x00000008
69 virtual void ReadXML( TiXmlElement
const* _ccElement );
70 virtual void WriteXML( TiXmlElement* _ccElement );
74 virtual uint8 const GetCommandClassId()
const = 0;
75 virtual string const GetCommandClassName()
const = 0;
76 virtual bool HandleMsg(
uint8 const* _data,
uint32 const _length,
uint32 const _instance = 1 ) = 0;
83 bool CheckForRefreshValues(
Value const* _value );
94 Node* GetNodeUnsafe()
const;
96 bool RemoveValue(
uint8 const _instance,
uint16 const _index );
99 map<uint8,uint8>::iterator it = m_endPointMap.find( _instance );
100 return( it == m_endPointMap.end() ? 0 : it->second );
104 for( map<uint8,uint8>::iterator it = m_endPointMap.begin(); it != m_endPointMap.end(); ++it )
106 if( _endPoint == it->second )
114 void SetInstances(
uint8 const _instances );
115 void SetInstance(
uint8 const _endPoint );
130 string ExtractValue(
uint8 const* _data,
uint8* _scale,
uint8* _precision,
uint8 _valueOffset = 1 )
const;
139 void AppendValue(
Msg* _msg,
string const& _value,
uint8 const _scale )
const;
140 uint8 const GetAppendValueSize(
string const& _value )
const;
141 int32 ValueToInteger(
string const& _value,
uint8* o_precision,
uint8* o_size )
const;
143 void UpdateMappedClass(
uint8 const _instance,
uint8 const _classId,
uint8 const _value );
155 void ReadValueRefreshXML ( TiXmlElement
const* _ccElement );
166 map<uint8,uint8> m_endPointMap;
170 int8 m_overridePrecision;
173 bool m_SecureSupport;
174 std::vector<RefreshValue *> m_RefreshClassValues;
182 StaticRequest_Instances = 0x01,
183 StaticRequest_Values = 0x02,
184 StaticRequest_Version = 0x04
189 void ClearStaticRequest(
uint8 _request );
192 uint8 m_staticRequests;
virtual void SetValueBasic(uint8 const _instance, uint8 const _level)
Definition: CommandClass.h:79
virtual bool HandleIncomingMsg(uint8 const *_data, uint32 const _length, uint32 const _instance=1)
Definition: CommandClass.h:77
uint32 GetReceivedCnt() const
Definition: CommandClass.h:199
Message object to be passed to and from devices on the Z-Wave network.
Definition: Msg.h:44
Definition: Bitfield.h:34
bool IsGetSupported() const
Definition: CommandClass.h:120
MsgQueue
Definition: Driver.h:575
#define OPENZWAVE_EXPORT
Definition: Defs.h:52
void SentCntIncr()
Definition: CommandClass.h:200
unsigned short uint16
Definition: Defs.h:93
#define OPENZWAVE_EXPORT_WARNINGS_ON
Definition: Defs.h:54
bool IsAfterMark() const
Definition: CommandClass.h:118
uint8 cc
Definition: CommandClass.h:146
void ClearSecureSupport()
Definition: CommandClass.h:124
bool IsCreateVars() const
Definition: CommandClass.h:119
Bitfield const * GetInstances() const
Definition: CommandClass.h:90
std::vector< RefreshValue * > RefreshClasses
Definition: CommandClass.h:150
virtual void CreateVars(uint8 const _instance, uint8 const _index)
Definition: CommandClass.h:158
uint8 genre
Definition: CommandClass.h:147
uint8 GetEndPoint(uint8 const _instance)
Definition: CommandClass.h:97
Definition: CommandClass.h:145
StaticRequest
Definition: CommandClass.h:180
#define OPENZWAVE_EXPORT_WARNINGS_OFF
Definition: Defs.h:53
uint32 GetSentCnt() const
Definition: CommandClass.h:198
Definition: Bitfield.h:36
The Node class describes a Z-Wave node object...typically a device on the Z-Wave network.
Definition: Node.h:65
uint32 GetHomeId() const
Definition: CommandClass.h:91
bool IsSecured() const
Definition: CommandClass.h:121
virtual void CreateVars(uint8 const _instance)
Definition: CommandClass.h:154
Base class for all Z-Wave command classes.
Definition: CommandClass.h:54
void SetEndPoint(uint8 const _instance, uint8 const _endpoint)
Definition: CommandClass.h:117
uint8 GetVersion() const
Definition: CommandClass.h:89
uint8 GetNodeId() const
Definition: CommandClass.h:92
uint16 index
Definition: CommandClass.h:149
void SetSecured()
Definition: CommandClass.h:122
signed char int8
Definition: Defs.h:89
The Driver class handles communication between OpenZWave and a device attached via a serial port (typ...
Definition: Driver.h:63
signed int int32
Definition: Defs.h:95
unsigned int uint32
Definition: Defs.h:96
virtual uint8 GetMaxVersion()
Definition: CommandClass.h:87
void SetSecureSupport()
Definition: CommandClass.h:125
bool IsSecureSupported() const
Definition: CommandClass.h:123
void SetInNIF()
Definition: CommandClass.h:126
void SetStaticRequest(uint8 _request)
Definition: CommandClass.h:188
virtual void SetVersion(uint8 const _version)
Definition: CommandClass.h:80
virtual bool RequestState(uint32 const _requestFlags, uint8 const _instance, Driver::MsgQueue const _queue)
Definition: CommandClass.h:71
Base class for values associated with a node.
Definition: Value.h:48
uint8 GetInstance(uint8 const _endPoint)
Definition: CommandClass.h:102
bool IsInNIF()
Definition: CommandClass.h:127
uint8 instance
Definition: CommandClass.h:148
bool HasStaticRequest(uint8 _request) const
Definition: CommandClass.h:187
void SetAfterMark()
Definition: CommandClass.h:116
void ReceivedCntIncr()
Definition: CommandClass.h:201
virtual bool SetValue(Value const &_value)
Definition: CommandClass.h:78
virtual bool RequestValue(uint32 const _requestFlags, uint16 const _index, uint8 const _instance, Driver::MsgQueue const _queue)
Definition: CommandClass.h:72
unsigned char uint8
Definition: Defs.h:90