led-layout: use common types everywhere
Rather than scattered map and set typedefs, centralize the two common
structures into 'ledlayout.hpp': ActionSet, GroupMap. Use them
everywhere where previous raw maps and sets were used.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I0ed5203146a6486a49caf4000f545ded0088dc15
diff --git a/test/led-test-map.hpp b/test/led-test-map.hpp
index b5f90ca..60d0363 100644
--- a/test/led-test-map.hpp
+++ b/test/led-test-map.hpp
@@ -1,133 +1,112 @@
#include "ledlayout.hpp"
-#include <set>
-#include <string>
-#include <unordered_map>
-
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- singleLedOn = {
- {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- }},
+static const phosphor::led::GroupMap singleLedOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- singleLedBlink = {
- {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
- {
- {"One", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::Blink},
- }},
+static const phosphor::led::GroupMap singleLedBlink = {
+ {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
+ {
+ {"One", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- singleLedBlinkOverrideOn = {
- {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
- {
- {"One", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap singleLedBlinkOverrideOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
+ {
+ {"One", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- multipleLedsOn = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap multipleLedsOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- multipleLedsBlink = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
- {
- {"One", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Two", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::Blink},
- }},
+static const phosphor::led::GroupMap multipleLedsBlink = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
+ {
+ {"One", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Two", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- multipleLedsOnAndBlink = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsMix",
- {
- {"One", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Four", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Five", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- }},
+static const phosphor::led::GroupMap multipleLedsOnAndBlink = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsMix",
+ {
+ {"One", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Four", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Five", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- twoGroupsWithDistinctLEDsOn = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- }},
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
- {
- {"Four", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Five", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::Blink},
- {"Six", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap twoGroupsWithDistinctLEDsOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ }},
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
+ {
+ {"Four", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Five", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::Blink},
+ {"Six", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- twoGroupsWithOneComonLEDOn = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
- {
- {"Four", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Six", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap twoGroupsWithOneComonLEDOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
+ {
+ {"Four", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Six", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
+static const phosphor::led::GroupMap
twoGroupsWithOneComonLEDOnOneLEDBlinkPriority = {
{"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
{
@@ -149,56 +128,51 @@
}},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- twoGroupsWithOneComonLEDOnPriority = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
- {
- {"Four", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Six", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap twoGroupsWithOneComonLEDOnPriority = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
+ {
+ {"Four", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Six", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
- twoGroupsWithMultiplComonLEDOn = {
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
- {
- {"One", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
- {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
- {
- {"Two", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Six", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Three", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- {"Seven", phosphor::led::Layout::Action::On, 0, 0,
- phosphor::led::Layout::Action::On},
- }},
+static const phosphor::led::GroupMap twoGroupsWithMultiplComonLEDOn = {
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
+ {
+ {"One", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
+ {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
+ {
+ {"Two", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Six", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Three", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ {"Seven", phosphor::led::Layout::Action::On, 0, 0,
+ phosphor::led::Layout::Action::On},
+ }},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
+static const phosphor::led::GroupMap
twoGroupsWithMultipleComonLEDInDifferentState = {
{"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
{
@@ -224,8 +198,7 @@
}},
};
-static const std::unordered_map<std::string,
- std::set<phosphor::led::Layout::LedAction>>
+static const phosphor::led::GroupMap
twoGroupsWithMultipleComonLEDInDifferentStateDiffPriority = {
{"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
{