Add support for collecting data for BMC dumps

When occ-control receives a USR1 signal, it will trigger the code to
collect the following data:
- number of OCC objects created
- for each active OCC: state, role, hwmon path, poll response, and WOF
data

The data will be written in JSON format to a file which can be collected
and added to a dump. (/tmp/occ_control_dump.json)

To force the data collection:
  killall -s SIGUSR1 openpower-occ-control

Change-Id: I7a304f7ce0eb1c9109f630f187adf9c95722652e
Signed-off-by: Chris Cain <cjcain@us.ibm.com>
diff --git a/utils.hpp b/utils.hpp
index 2085bf4..0fec395 100644
--- a/utils.hpp
+++ b/utils.hpp
@@ -96,6 +96,17 @@
  */
 bool isHostRunning();
 
+/**
+ * @brief Convert vector to hex dump string
+ *
+ * @param[in] data       - vector of uint8_ data
+ * @param[in] path       - length of data to use (0 = all data)
+ *
+ * @return vector of strings
+ */
+std::vector<std::string> hex_dump(const std::vector<std::uint8_t>& data,
+                                  const unsigned int data_len = 0);
+
 } // namespace utils
 } // namespace occ
 } // namespace open_power