Add mmelody_active_p

main
Michael Hayes 15 years ago
parent 97712ead60
commit 0373ac2a1d

@ -100,8 +100,13 @@ static void button_task (__unused__ void *data)
button_update (); button_update ();
if (button_push_event_p (BUTTON1)) if (button_push_event_p (BUTTON1))
{
if (mmelody_active_p (melody))
mmelody_play (melody, 0);
else
mmelody_play (melody, tune1); mmelody_play (melody, tune1);
} }
}
int main (void) int main (void)

@ -257,6 +257,8 @@ mmelody_play (mmelody_t mmelody, const char *str)
mmelody->octave = MMELODY_OCTAVE_DEFAULT; mmelody->octave = MMELODY_OCTAVE_DEFAULT;
/* Default to quarter notes. */ /* Default to quarter notes. */
mmelody_note_fraction_set (mmelody, 4); mmelody_note_fraction_set (mmelody, 4);
/* Stop what is currently sounding. */
mmelody_note_play (mmelody, 0);
} }
@ -277,6 +279,13 @@ mmelody_volume_set (mmelody_t mmelody, mmelody_volume_t volume)
} }
bool
mmelody_active_p (mmelody_t mmelody)
{
return mmelody->cur != 0;
}
void void
mmelody_update (mmelody_t mmelody) mmelody_update (mmelody_t mmelody)
{ {

@ -68,4 +68,10 @@ mmelody_speed_set (mmelody_t mmelody, mmelody_speed_t speed);
void void
mmelody_volume_set (mmelody_t mmelody, mmelody_volume_t volume); mmelody_volume_set (mmelody_t mmelody, mmelody_volume_t volume);
/** Return non-zero if playing. */
bool
mmelody_active_p (mmelody_t mmelody);
#endif #endif

Loading…
Cancel
Save