Module Vecosek_scene.Scene

Scene.t is the (lowest-level) description of the initial state of th sequencer.

This module wraps.Scene_format_t which is the “types” output of atdgen.

The submodule Json wraps functions from Scene_format_j.

module Midi_event : sig ... end

Midi_event.t is a description of a MIDI event (in the Jack Audio Connection Kit sense).

module Id : sig ... end

The tracks of the sequencer (Track.t values) are referenced through Id.t (strings for now).

module Event : sig ... end

The various kinds of events the sequencer can react to.

module Action : sig ... end

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

module Ticked_action : sig ... end

Tracks are sets of actions with timestamps (in “ticks”) within the track.

module Track : sig ... end

The main unit of loop in the Scene is the Track.t.

type t = Scene_format_t.scene = {
active : Id.t list;
handlers : Action.event_handler list;
bpm : int;
ppqn : int;

(** Pulses Per Quarter Note. *)

tracks : Track.t list;
}

The toplevel type of the description of a music scene for the sequencer.

val make : ?⁠active:Id.t list ‑> ?⁠handlers:Action.event_handler list ‑> ?⁠bpm:int ‑> ?⁠ppqn:int ‑> Track.t list ‑> t
val to_string : t ‑> string

to_string s renders a human-readable summary description of the scene.

val empty : t
module Json : sig ... end

The serialization-to-JSON functions (as defined by atdgen).

module Biniou : sig ... end

The serialization-to-Biniou functions (as defined by atdgen).