package vecosek-scene

  1. Overview
  2. Docs

Both tracks and event handlers perform “actions” (Action.t).

type event_handler = Scene_format_t.event_handler = {
  1. name : string;
  2. events : Event.t list;
  3. actions : t list;
}
and t = Scene_format_t.action =
  1. | Raw_midi of Midi_event.t
  2. | Track_on of Id.t * int
    (*

    Start track by id after a given number of “ticks.”

    *)
  3. | Track_off of Id.t
  4. | Bpm_operation of [ `Decr of int | `Incr of int | `Mul of float | `Set of int ]
  5. | Add_event_handler of event_handler
  6. | Remove_event_handler of event_handler
  7. | Remove_event_handler_by_event of Event.t
    (*

    Remove all handlers for a given event.

    *)
  8. | All_tracks_off
    (*

    Stop all the tracks but keep the sequencer running.

    *)
  9. | Stop
    (*

    Stop and quit the whole sequencer application.

    *)
val handler : string -> events:Event.t list -> actions:t list -> event_handler
val add_handler : string -> events:Event.t list -> actions:t list -> t
val remove_handler : string -> events:Event.t list -> actions:t list -> t