libpd-sys 0.3.4

Rust bindings for libpd
using System;
using System.Runtime.InteropServices;

namespace LibPDBinding.Native
{
	static class Midi
	{
		[DllImport (Defines.DllName, EntryPoint = "libpd_noteon", CallingConvention = Defines.CallingConvention)]
		public static extern int noteon (int channel, int pitch, int velocity);

		[DllImport (Defines.DllName, EntryPoint = "libpd_controlchange", CallingConvention = Defines.CallingConvention)]
		public static extern int controlchange (int channel, int controller, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_programchange", CallingConvention = Defines.CallingConvention)]
		public static extern int programchange (int channel, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_pitchbend", CallingConvention = Defines.CallingConvention)]
		public static extern int pitchbend (int channel, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_aftertouch", CallingConvention = Defines.CallingConvention)]
		public static extern int aftertouch (int channel, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_polyaftertouch", CallingConvention = Defines.CallingConvention)]
		public static extern int polyaftertouch (int channel, int pitch, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_midibyte", CallingConvention = Defines.CallingConvention)]
		public static extern int midibyte (int port, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_sysex", CallingConvention = Defines.CallingConvention)]
		public static extern int sysex (int port, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_sysrealtime", CallingConvention = Defines.CallingConvention)]
		public static extern int sysrealtime (int port, int value);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_noteonhook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_noteonhook (LibPDNoteOnHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_controlchangehook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_controlchangehook (LibPDControlChangeHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_programchangehook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_programchangehook (LibPDProgramChangeHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_pitchbendhook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_pitchbendhook (LibPDPitchbendHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_aftertouchhook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_aftertouchhook (LibPDAftertouchHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_polyaftertouchhook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_polyaftertouchhook (LibPDPolyAftertouchHook hook);

		[DllImport (Defines.DllName, EntryPoint = "libpd_set_midibytehook", CallingConvention = Defines.CallingConvention)]
		public static extern void set_midibytehook (LibPDMidiByteHook hook);
	}
}