Go to the source code of this file.
Defines | |
#define | FLUID_SEQ_WITH_TRACE 0 |
Typedefs | |
typedef void(*) | fluid_event_callback_t (unsigned int time, fluid_event_t *event, fluid_sequencer_t *seq, void *data) |
Functions | |
FLUIDSYNTH_API fluid_sequencer_t * | new_fluid_sequencer (void) |
Allocate a new sequencer structure. | |
FLUIDSYNTH_API void | delete_fluid_sequencer (fluid_sequencer_t *seq) |
Free the sequencer structure. | |
FLUIDSYNTH_API short | fluid_sequencer_register_client (fluid_sequencer_t *seq, char *name, fluid_event_callback_t callback, void *data) |
Register a client. | |
FLUIDSYNTH_API void | fluid_sequencer_unregister_client (fluid_sequencer_t *seq, short id) |
Unregister a previously registered client. | |
FLUIDSYNTH_API int | fluid_sequencer_count_clients (fluid_sequencer_t *seq) |
Returns the number of register clients. | |
FLUIDSYNTH_API short | fluid_sequencer_get_client_id (fluid_sequencer_t *seq, int index) |
Returns the id of a registered client (-1 if non existing). | |
FLUIDSYNTH_API char * | fluid_sequencer_get_client_name (fluid_sequencer_t *seq, int id) |
Returns the name of a registered client, given its id. | |
FLUIDSYNTH_API int | fluid_sequencer_client_is_dest (fluid_sequencer_t *seq, int id) |
Returns 1 if client is a destination (has a callback). | |
FLUIDSYNTH_API void | fluid_sequencer_send_now (fluid_sequencer_t *seq, fluid_event_t *evt) |
Sending an event immediately. | |
FLUIDSYNTH_API int | fluid_sequencer_send_at (fluid_sequencer_t *seq, fluid_event_t *evt, unsigned int time, int absolute) |
Schedule an event for later sending. | |
FLUIDSYNTH_API void | fluid_sequencer_remove_events (fluid_sequencer_t *seq, short source, short dest, int type) |
Remove events from the event queue. | |
FLUIDSYNTH_API unsigned int | fluid_sequencer_get_tick (fluid_sequencer_t *seq) |
Get the current tick. | |
FLUIDSYNTH_API void | fluid_sequencer_set_time_scale (fluid_sequencer_t *seq, double scale) |
Set the conversion from tick to absolute time. | |
FLUIDSYNTH_API double | fluid_sequencer_get_time_scale (fluid_sequencer_t *seq) |
Set the conversion from tick to absolute time (ticks per second). |
typedef void(*) fluid_event_callback_t(unsigned int time, fluid_event_t *event, fluid_sequencer_t *seq, void *data) |
FLUIDSYNTH_API void delete_fluid_sequencer | ( | fluid_sequencer_t * | seq | ) |
Free the sequencer structure.
FLUIDSYNTH_API int fluid_sequencer_client_is_dest | ( | fluid_sequencer_t * | seq, | |
int | id | |||
) |
Returns 1 if client is a destination (has a callback).
FLUIDSYNTH_API int fluid_sequencer_count_clients | ( | fluid_sequencer_t * | seq | ) |
Returns the number of register clients.
FLUIDSYNTH_API short fluid_sequencer_get_client_id | ( | fluid_sequencer_t * | seq, | |
int | index | |||
) |
Returns the id of a registered client (-1 if non existing).
FLUIDSYNTH_API char* fluid_sequencer_get_client_name | ( | fluid_sequencer_t * | seq, | |
int | id | |||
) |
Returns the name of a registered client, given its id.
FLUIDSYNTH_API unsigned int fluid_sequencer_get_tick | ( | fluid_sequencer_t * | seq | ) |
Get the current tick.
FLUIDSYNTH_API double fluid_sequencer_get_time_scale | ( | fluid_sequencer_t * | seq | ) |
Set the conversion from tick to absolute time (ticks per second).
FLUIDSYNTH_API short fluid_sequencer_register_client | ( | fluid_sequencer_t * | seq, | |
char * | name, | |||
fluid_event_callback_t | callback, | |||
void * | data | |||
) |
Register a client.
The registration returns a unique client ID (-1 if error)
FLUIDSYNTH_API void fluid_sequencer_remove_events | ( | fluid_sequencer_t * | seq, | |
short | source, | |||
short | dest, | |||
int | type | |||
) |
Remove events from the event queue.
The events can be filtered on the source, the destination, and the type of the event. To avoid filtering, set either source, dest, or type to -1.
FLUIDSYNTH_API int fluid_sequencer_send_at | ( | fluid_sequencer_t * | seq, | |
fluid_event_t * | evt, | |||
unsigned int | time, | |||
int | absolute | |||
) |
Schedule an event for later sending.
If absolute is 0, the time of the event will be offset with the current tick of the sequencer. If absolute is different from 0, the time will assumed to be absolute (starting from the creation of the sequencer). MAKES A COPY
FLUIDSYNTH_API void fluid_sequencer_send_now | ( | fluid_sequencer_t * | seq, | |
fluid_event_t * | evt | |||
) |
Sending an event immediately.
FLUIDSYNTH_API void fluid_sequencer_set_time_scale | ( | fluid_sequencer_t * | seq, | |
double | scale | |||
) |
Set the conversion from tick to absolute time.
scale should be expressed as ticks per second.
FLUIDSYNTH_API void fluid_sequencer_unregister_client | ( | fluid_sequencer_t * | seq, | |
short | id | |||
) |
Unregister a previously registered client.
FLUIDSYNTH_API fluid_sequencer_t* new_fluid_sequencer | ( | void | ) |
Allocate a new sequencer structure.