control: Setup configured zone groups retrieval

Configured zone groups come from either a compile time YAML generated
`_zoneLayouts` list or from a future list created at runtime after
parsing a set of JSON configuration files.

Tested:
    No impact to YAML driven configurations
    Empty list of zone groups created when use of JSON enabled

Change-Id: I3253ccf5c54e5397d5de0b7105fc3918dc59e24a
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/control/json_parser.hpp b/control/json_parser.hpp
index 4a59b2e..42a89a6 100644
--- a/control/json_parser.hpp
+++ b/control/json_parser.hpp
@@ -15,9 +15,23 @@
  */
 #pragma once
 
+#include "types.hpp"
+
+#include <sdbusplus/bus.hpp>
+
 namespace phosphor::fan::control
 {
 
 constexpr auto confAppName = "control";
 
+/**
+ * @brief Get the configuration definitions for zone groups
+ *
+ * @param[in] bus - The dbus bus object
+ *
+ * @return List of zone group objects
+ *     Generated list of zone groups including their control configurations
+ */
+const std::vector<ZoneGroup> getZoneGroups(sdbusplus::bus::bus& bus);
+
 } // namespace phosphor::fan::control