# BumpJuggler

Bumps the Juggler data-structure index.

### Synopsis

`int32 BumpJuggler( Time CurrentTime, Time *NextTime,int32 CurrentSignals, int32 *NextSignals )`

### Description

This function provides the Juggler with a current time value. The Juggler checks unexecuted events in any currently active sequences or jobs to see if their time value is less than or equal to the current time value. If so, it executes the event. The Juggler also checks all unexecuted events in all currently active sequences or jobs to see which event should be executed next. It writes the time of that event into the NextTime variable so the calling task can wait until that time to bump the Juggler once again. The time value supplied is an arbitrary value in ticks and must be supplied from an external source. Typically, the time value comes from the audio clock.

See the example program "playmf.c" to see how `BumpJuggler()` is used.

### Arguments

CurrentTime
  Value indicating the current time that the function is called.

NextTime
  Pointer to a value where this function writes the time that it should be called again.

CurrentSignals
  The current signal mask.

NextSignals
  Pointer to a signal mask where this function writes the signal bits for which the task should wait before making this call again.

### Return Value

This function returns 0 if successful or an error code (a negative value) if an error occurs. If everything is finished or there are no active objects, this function returns 1.

### Implementation

Library call implemented in music.lib V20.

### Associated Files

juggler.h, music.lib

### See Also

``InitJuggler`(), TermJuggler()`