PEL: Print action flags into JSON aligned

"User Header": {
    "Section Version":          "1",
    "Sub-section type":         "0",
    "Log Committed by":         "0x4552",
    "Subsystem":                "System Hypervisor Firmware",
    "Event Scope":              "Entire Platform",
    "Event Severity":           "Informational Event",
    "Event Type":               "Miscellaneous, Informational Only",
    "Action Flags": [
                                "Report Externally"
    ]
}

Testing: Manually run peltool and verified output
Signed-off-by: Harisuddin Mohamed Isa <harisuddin@gmail.com>
Change-Id: Ie8376953b5f1baa093fc0aa9564d50cd4208564e
diff --git a/extensions/openpower-pels/pel_values.cpp b/extensions/openpower-pels/pel_values.cpp
index 3502f92..f8c877c 100644
--- a/extensions/openpower-pels/pel_values.cpp
+++ b/extensions/openpower-pels/pel_values.cpp
@@ -196,8 +196,10 @@
     {0x8000, "service_action", "Service Action Required"},
     {0x4000, "hidden", "Event not customer viewable"},
     {0x2000, "report", "Report Externally"},
-    {0x1000, "dont_report", "Do Not Report"},
+    {0x1000, "dont_report", "Do Not Report To Hypervisor"},
     {0x0800, "call_home", "HMC Call Home"},
+    {0x0400, "isolation_incomplete",
+     "Isolation Incomplete, further analysis required"},
     {0x0100, "termination", "Service Processor Call Home Required"}};
 
 /**
@@ -276,6 +278,20 @@
         return "invalid";
     }
 }
+
+std::vector<std::string> getValuesBitwise(uint16_t value,
+                                          const pel_values::PELValues& table)
+{
+    std::vector<std::string> foundValues;
+    std::for_each(
+        table.begin(), table.end(), [&value, &foundValues](const auto& entry) {
+            if (value & std::get<fieldValuePos>(entry))
+            {
+                foundValues.push_back(std::get<descriptionPos>(entry));
+            }
+        });
+    return foundValues;
+}
 } // namespace pel_values
 } // namespace pels
 } // namespace openpower