Lines Matching defs:midisyn

37 typedef struct midisyn midisyn;
40 * Important: any synth driver that uses midisyn must set up its methods
45 * versioning burden. Because midisyn is at present a very rudimentary and
52 int (*open) (midisyn *, int /* flags */);
53 void (*close) (midisyn *);
54 int (*ioctl) (midisyn *, u_long, void *, int, struct lwp *);
56 * allocv(midisyn *ms, uint_fast8_t chan, uint_fast8_t key);
66 uint_fast16_t (*allocv) (midisyn *, uint_fast8_t, uint_fast8_t);
68 * attackv(midisyn *ms,
72 * adjustment controls that midisyn supports and that the driver has
75 * negative) and again accounts for all level adjustments midisyn
80 void (*attackv) (midisyn *, uint_fast16_t, midipitch_t, int16_t);
82 * attackv_vel(midisyn *ms, uint_fast16_t voice,
88 * does not supply this method, midisyn will call the attackv method
91 void (*attackv_vel) (midisyn *,
94 * releasev(midisyn *ms, uint_fast16_t voice, uint_fast8_t vel);
99 void (*releasev) (midisyn *, uint_fast16_t, uint_fast8_t);
101 * repitchv(midisyn *ms, uint_fast16_t voice, midipitch_t mp);
104 * [not yet implemented in midisyn]
106 void (*repitchv) (midisyn *, uint_fast16_t, midipitch_t);
108 * relevelv(midisyn *ms, uint_fast16_t voice, int16_t level_cB);
113 * driver may save the last level it got from midisyn, subtract from
115 * the envelope generator. Or not.... [not yet implemented in midisyn]
117 void (*relevelv) (midisyn *, uint_fast16_t, int16_t);
119 * pgmchg(midisyn *ms, uint_fast8_t chan, uint_fast8_t pgm);
123 void (*pgmchg) (midisyn *, uint_fast8_t, uint_fast8_t);
125 * ctlnotice(midisyn *ms,
130 * by midisyn if the driver ignores them, but will be left to the driver
131 * if it returns non-zero. For example, midisyn will usually combine
134 * responding to the volume controller on its own, midisyn will leave
144 int (*ctlnotice) (midisyn *, midictl_evt, uint_fast8_t, uint_fast16_t);
160 struct midisyn {
169 /* Set up by midisyn but available to synth driver for reading ctls */
173 * processing a call from midisyn, and not at other times such as upon
178 /* Used by midisyn driver */
189 void midisyn_init(midisyn *);