individual queues for status types
This commit is contained in:
parent
ec80a809db
commit
57c3247eaf
@ -39,6 +39,14 @@ Responder::Responder()
|
|||||||
deviceModelDescription = "Basic RDM Responder";
|
deviceModelDescription = "Basic RDM Responder";
|
||||||
subdevice_flag = true;
|
subdevice_flag = true;
|
||||||
|
|
||||||
|
queued_statuses_.emplace(STATUS_GET_LAST_MESSAGE, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_ADVISORY, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_WARNING, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_ERROR, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_ADVISORY_CLEARED, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_WARNING_CLEARED, std::vector<MsgPtr>());
|
||||||
|
queued_statuses_.emplace(STATUS_ERROR_CLEARED, std::vector<MsgPtr>());
|
||||||
|
|
||||||
/// 7.5 Discovery Unique Branch Message (DISC_UNIQUE_BRANCH)
|
/// 7.5 Discovery Unique Branch Message (DISC_UNIQUE_BRANCH)
|
||||||
parameters_.try_emplace(DISC_UNIQUE_BRANCH, new Parameter());
|
parameters_.try_emplace(DISC_UNIQUE_BRANCH, new Parameter());
|
||||||
parameters_.at(DISC_UNIQUE_BRANCH)->discAction(std::bind(
|
parameters_.at(DISC_UNIQUE_BRANCH)->discAction(std::bind(
|
||||||
|
@ -67,7 +67,7 @@ protected:
|
|||||||
void actionGetCommsStatus (const MsgPtr message, MsgPtr response);
|
void actionGetCommsStatus (const MsgPtr message, MsgPtr response);
|
||||||
void actionSetCommsStatus (const MsgPtr message, MsgPtr response);
|
void actionSetCommsStatus (const MsgPtr message, MsgPtr response);
|
||||||
|
|
||||||
std::queue<Message*> queued_messages_;
|
std::unordered_map<uint8_t, std::queue<MsgPtr>> queued_statuses_;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool discovery_mute_flag_ = false;
|
bool discovery_mute_flag_ = false;
|
||||||
|
Loading…
Reference in New Issue
Block a user