summaryrefslogtreecommitdiffstats
path: root/plugin/ucs2-vol/inc/device_value.h
diff options
context:
space:
mode:
authorTobias Jahnke <tobias.jahnke@microchip.com>2018-10-15 14:22:58 +0200
committerTobias Jahnke <tobias.jahnke@microchip.com>2018-12-18 13:01:13 +0100
commit2fac61e232dbdc5135345a07b19a66a5ebb2a015 (patch)
tree80d00b70d6adfa38a24829908f48fa8ad08df161 /plugin/ucs2-vol/inc/device_value.h
parent3798969ce5771058d9526e2b3cbfec2c74e23fed (diff)
4a-hal-unicens: prepare support for Fiberdyne Amp
Bug-AGL: SPEC-1758 - updated VolumeLib to support ctrl messages - added master volume setup for amplifier node - known issue: message transmission is commented out due to wrap_json issue Signed-off-by: Tobias Jahnke <tobias.jahnke@microchip.com>
Diffstat (limited to 'plugin/ucs2-vol/inc/device_value.h')
-rw-r--r--plugin/ucs2-vol/inc/device_value.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/plugin/ucs2-vol/inc/device_value.h b/plugin/ucs2-vol/inc/device_value.h
index fe6d3a5..ef57003 100644
--- a/plugin/ucs2-vol/inc/device_value.h
+++ b/plugin/ucs2-vol/inc/device_value.h
@@ -53,13 +53,14 @@ struct STxMessage {
enum DeviceValueType {
DEVICE_VAL_MASTER = 0,
DEVICE_VAL_LEFT = 1,
- DEVICE_VAL_RIGHT = 2
+ DEVICE_VAL_RIGHT = 2,
+ DEVICE_VAL_FIBERDYNE_MASTER = 3
};
class CDeviceValue {
public:
- CDeviceValue(uint16_t address, DeviceValueType type, uint16_t key);
+ CDeviceValue(uint16_t address, DeviceValueType type, uint16_t key, bool is_i2c);
virtual ~CDeviceValue();
uint16_t GetKey(){return _key;}
@@ -72,7 +73,8 @@ public:
bool FireUpdateMessage(lib_most_volume_writei2c_cb_t writei2c_fptr,
lib_most_volume_writei2c_result_cb_t result_fptr,
void *result_user_ptr);// fires message & updates actual value
-
+ bool FireControlMessage(lib_most_volume_sendmessage_cb_t sendmsg_fptr);
+
void SetAvailable(bool active){this->_is_available = active; _actual_value = 0x01u;}
bool IsAvailable() {return this->_is_available;}
uint16_t GetAddress() {return this->_address;}
@@ -84,6 +86,7 @@ private:
bool _is_available; // related node is available
bool _is_busy; // do not update while busy
+ bool _is_i2c;
DeviceValueType _type; // determines the remote i2c command
uint16_t _key; // lookup key
uint16_t _address; // target node/group address