package portmidi

  1. Overview
  2. Docs
Bindings to libportmidi

Install

dune-project
 Dependency

Authors

Maintainers

Sources

0.4.tar.gz
md5=ac8719719b872e97f0f0b7ff837aec97
sha512=9d20f6f834b601f21d34d424fb187cb89da4bc6919aab90fbf24e4d9a852316e3e8a5ee46894c35a1b412295082cba7a755e20fd29fd85a6299d01c40e929ee3

doc/src/portmidi.c_function_descriptions/portmidi_c_function_descriptions.ml.html

Source file portmidi_c_function_descriptions.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
open Ctypes
module Types = Portmidi_c_types

module Functions (F : Ctypes.FOREIGN) = struct
  open F

  let pm_initialize = foreign "Pm_Initialize" (void @-> returning int)
  let pm_terminate = foreign "Pm_Terminate" (void @-> returning void)
  let pm_count_devices = foreign "Pm_CountDevices" (void @-> returning int)
  let pm_get_device_info = foreign "Pm_GetDeviceInfo" (int @-> returning (ptr Types.PmDeviceInfo.t))
  let pm_get_error_text = foreign "Pm_GetErrorText" (int @-> returning string_opt)

  let pm_open_input =
    foreign
      "Pm_OpenInput"
      (ptr (ptr void) @-> int @-> ptr void @-> int32_t @-> ptr void @-> ptr void @-> returning int)

  let pm_open_output =
    foreign
      "Pm_OpenOutput"
      (ptr (ptr void)
      @-> int
      @-> ptr void
      @-> int32_t
      @-> ptr void
      @-> ptr void
      @-> int32_t
      @-> returning int)

  let pm_abort = foreign "Pm_Abort" (ptr void @-> returning int)
  let pm_close = foreign "Pm_Close" (ptr void @-> returning int)
  let pm_read = foreign "Pm_Read" (ptr void @-> ptr Types.PmEvent.t @-> int32_t @-> returning int)
  let pm_write = foreign "Pm_Write" (ptr void @-> ptr Types.PmEvent.t @-> int32_t @-> returning int)
  let pm_write_sysex = foreign "Pm_WriteSysEx" (ptr void @-> int32_t @-> ptr char @-> returning int)
  let pm_poll = foreign "Pm_Poll" (ptr void @-> returning int)
  let pt_time = foreign "Pt_Time" (void @-> returning int32_t)
end