/// Handle events (basically just pass it on) void AudioDataOutput::upstreamEvent(Event *e) { Q_ASSERT(e); if (e->type() == Event::IsThereAXineEngineForMe) { // yes there is MediaObject *mediaObject = dynamic_cast<MediaObject*>(m_source); //TODO; qobject_cast? if (mediaObject) { SourceNode::downstreamEvent(new HeresYourXineStreamEvent(mediaObject->stream())); m_mediaObject = mediaObject; } } else SourceNode::upstreamEvent(e); }