You're correct, the HEU_ParameterUtility doesn't have an example for buttons. But button parms are integers that simply need to have their value toggled between 0 and 1. Here is a code example of how to do so:
[MenuItem("HEngineiActions/DoExportButton", false, 0)]
public static void DoExportButton()
{
GameObject[] selectedObjects = Selection.gameObjects;
if (selectedObjects == null || selectedObjects.Length == 0)
{
return;
}
GameObject go = selectedObjects[0];
HEU_HoudiniAssetRoot root = go.GetComponent<HEU_HoudiniAssetRoot>();
if (root == null || root._houdiniAsset == null)
{
return;
}
HEU_HoudiniAsset asset = root._houdiniAsset;
// Button name is "reload". Its node must be marked as editable.
HEU_ParameterData paramData = asset.Parameters.GetParameter("reload");
if (paramData != null)
{
// Triggering button and cooking
// Buttons are integer values that need to switch between 0 and 1 in
// order to trigger them.
paramData._intValues[0] = paramData._intValues[0] == 0 ? 1 : 0;
asset.RequestCook(false, true, true, true);
}
}