control: set_parameter_from_group_max action

This action will write a D-Bus property value to the Manager's parameter
cache.  The property value written is the maximum value of all the
configured groups. The value can be modified using the Modifier utility
class's expressions before storing it.

The use case for this is that this action would be configured to write a
parameter that could then be used by another action.

An example JSON config is:

  {
    "name": "set_parameter_from_group",
    "parameter_name": "proc_0_throttle_temp",
    "modifier": {
      "operator": "minus",
      "value": 4
    }
  }

This would read the maximum D-Bus property found in all the groups
configured for the action, subtract 4 from it, and then store it as a
Manager parameter under the name proc_0_throttle_temp.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I75d91110023e0de9908d694997676e4854917ea8
diff --git a/control/Makefile.am b/control/Makefile.am
index d78ec47..0af34d2 100644
--- a/control/Makefile.am
+++ b/control/Makefile.am
@@ -71,6 +71,7 @@
 	json/actions/net_target_decrease.cpp \
 	json/actions/timer_based_actions.cpp \
 	json/actions/mapped_floor.cpp \
+	json/actions/set_parameter_from_group_max.cpp \
 	json/utils/modifier.cpp
 else
 phosphor_fan_control_SOURCES += \