public void Foreach(Func <IntPtr, string, FluidTypes, IntPtr> func, IntPtr data = default(IntPtr))
 {
     LibFluidsynth.fluid_settings_foreach_t f = (d, nm, t) => func(d, nm, t);
     LibFluidsynth.Settings.fluid_settings_foreach(handle, name, data, f);
 }
 public void Foreach(Action <string, FluidTypes> func)
 {
     LibFluidsynth.fluid_settings_foreach_t f = (d, nm, t) => { func(nm, t); return(IntPtr.Zero); };
     LibFluidsynth.Settings.fluid_settings_foreach(handle, name, IntPtr.Zero, f);
 }