+Stream_event*
+Grob::event_cause ()
+{
+ SCM cause = get_property ("cause");
+ if (to_boolean (Stream_event::smob_p (cause)))
+ return unsmob_stream_event (cause);
+ else if (to_boolean (Grob::smob_p (cause)))
+ return unsmob_grob (cause)->event_cause ();