OpenZWave Library
1.6.1914
Toggle main menu visibility
Loading...
Searching...
No Matches
cpp
src
command_classes
Color.h
Go to the documentation of this file.
1
//-----------------------------------------------------------------------------
2
//
3
// Color.h
4
//
5
// Implementation of the Z-Wave COMMAND_CLASS_COLOR
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 _Color_H
29
#define _Color_H
30
31
#include "
command_classes/CommandClass.h
"
32
33
namespace
OpenZWave
34
{
35
namespace
Internal
36
{
37
namespace
CC
38
{
39
43
class
Color:
public
CommandClass
44
{
45
public
:
46
static
CommandClass
*
Create
(
uint32
const
_homeId,
uint8
const
_nodeId)
47
{
48
return
new
Color(_homeId, _nodeId);
49
}
50
virtual
~Color
()
51
{
52
}
53
54
static
uint8
const
StaticGetCommandClassId
()
55
{
56
return
0x33;
57
}
58
static
string
const
StaticGetCommandClassName
()
59
{
60
return
"COMMAND_CLASS_COLOR"
;
61
}
62
63
// From CommandClass
64
virtual
bool
RequestState
(
uint32
const
_requestFlags,
uint8
const
_instance,
Driver::MsgQueue
const
_queue)
override
;
65
virtual
bool
RequestValue
(
uint32
const
_requestFlags,
uint16
const
_index,
uint8
const
_instance,
Driver::MsgQueue
const
_queue)
override
;
66
bool
RequestColorChannelReport
(
uint8
const
coloridx,
uint8
const
_instance,
Driver::MsgQueue
const
_queue);
67
virtual
uint8
const
GetCommandClassId
()
const override
68
{
69
return
StaticGetCommandClassId
();
70
}
71
virtual
string
const
GetCommandClassName
()
const override
72
{
73
return
StaticGetCommandClassName
();
74
}
75
virtual
bool
HandleMsg
(
uint8
const
* _data,
uint32
const
_length,
uint32
const
_instance = 1)
override
;
76
virtual
bool
SetValue
(
Internal::VC::Value
const
& _value)
override
;
77
virtual
uint8
GetMaxVersion
()
override
78
{
79
return
2;
80
}
81
virtual
void
SetValueBasic
(
uint8
const
_instance,
uint8
const
_value)
override
;
82
83
protected
:
84
virtual
void
CreateVars
(
uint8
const
_instance)
override
;
85
string
decodeColor
(
uint8
valueArray[9]);
86
uint8
decodeColorList
(
string
color);
87
88
private
:
89
Color
(
uint32
const
_homeId,
uint8
const
_nodeId);
90
bool
m_refreshinprogress;
91
uint8
m_coloridxcount;
92
uint8
m_colorvalues[9];
93
uint8
m_colorTargetValues[9];
94
};
95
}
// namespace CC
96
}
// namespace Internal
97
}
// namespace OpenZWave
98
99
#endif
100
CommandClass.h
uint16
unsigned short uint16
Definition
Defs.h:88
uint32
unsigned int uint32
Definition
Defs.h:91
uint8
unsigned char uint8
Definition
Defs.h:85
OpenZWave::Driver::MsgQueue
MsgQueue
Definition
Driver.h:660
OpenZWave::Internal::CC::Color
Implements COMMAND_CLASS_COLOR (0x33), a Z-Wave device command class.
Definition
Color.h:44
OpenZWave::Internal::CC::Color::RequestColorChannelReport
bool RequestColorChannelReport(uint8 const coloridx, uint8 const _instance, Driver::MsgQueue const _queue)
Definition
Color.cpp:187
OpenZWave::Internal::CC::Color::RequestState
virtual bool RequestState(uint32 const _requestFlags, uint8 const _instance, Driver::MsgQueue const _queue) override
Definition
Color.cpp:110
OpenZWave::Internal::CC::Color::GetMaxVersion
virtual uint8 GetMaxVersion() override
Definition
Color.h:77
OpenZWave::Internal::CC::Color::~Color
virtual ~Color()
Definition
Color.h:50
OpenZWave::Internal::CC::Color::GetCommandClassId
virtual uint8 const GetCommandClassId() const override
Definition
Color.h:67
OpenZWave::Internal::CC::Color::StaticGetCommandClassName
static string const StaticGetCommandClassName()
Definition
Color.h:58
OpenZWave::Internal::CC::Color::RequestValue
virtual bool RequestValue(uint32 const _requestFlags, uint16 const _index, uint8 const _instance, Driver::MsgQueue const _queue) override
Definition
Color.cpp:162
OpenZWave::Internal::CC::Color::HandleMsg
virtual bool HandleMsg(uint8 const *_data, uint32 const _length, uint32 const _instance=1) override
Definition
Color.cpp:234
OpenZWave::Internal::CC::Color::GetCommandClassName
virtual string const GetCommandClassName() const override
Definition
Color.h:71
OpenZWave::Internal::CC::Color::decodeColorList
uint8 decodeColorList(string color)
Definition
Color.cpp:400
OpenZWave::Internal::CC::Color::SetValueBasic
virtual void SetValueBasic(uint8 const _instance, uint8 const _value) override
Definition
Color.cpp:1129
OpenZWave::Internal::CC::Color::SetValue
virtual bool SetValue(Internal::VC::Value const &_value) override
Definition
Color.cpp:631
OpenZWave::Internal::CC::Color::decodeColor
string decodeColor(uint8 valueArray[9])
Definition
Color.cpp:523
OpenZWave::Internal::CC::Color::StaticGetCommandClassId
static uint8 const StaticGetCommandClassId()
Definition
Color.h:54
OpenZWave::Internal::CC::Color::Create
static CommandClass * Create(uint32 const _homeId, uint8 const _nodeId)
Definition
Color.h:46
OpenZWave::Internal::CC::CommandClass::CommandClass
CommandClass(uint32 const _homeId, uint8 const _nodeId)
Definition
CommandClass.cpp:62
OpenZWave::Internal::CC::CommandClass::CreateVars
void CreateVars()
Definition
CommandClass.cpp:841
OpenZWave::Internal::VC::Value
Base class for values associated with a node.
Definition
Value.h:55
OpenZWave::Internal::CC
Definition
Alarm.cpp:54
OpenZWave::Internal
Definition
Bitfield.cpp:33
OpenZWave
Definition
Bitfield.cpp:31
Generated on
for OpenZWave Library by
1.17.0