Esempio n. 1
0
bool QuestState::handleEvent(const sf::Event& event) {
    if (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Return) {
        setEnded();
    } else if (event.type == sf::Event::KeyPressed) {
        prepareText();
    }
    return true;
}
Esempio n. 2
0
void MediaStream::stop()
{
    if (ended())
        return;

    MediaStreamCenter::shared().didStopLocalMediaStream(descriptor());
    setEnded();
}
Esempio n. 3
0
/**
* @brief 
*/
void FeedProvider::cleanup()
{
    setEnded();
    removeFromMap();
    mConsumerMutex.lock();
    for ( ConsumerMap::iterator iter = mConsumers.begin(); iter != mConsumers.end(); iter++ )
        if ( iter->first->hasProvider( *this ) )
            iter->first->deregisterProvider( *this, false );
    mConsumers.clear();
    mConsumerMutex.unlock();
}
Esempio n. 4
0
void MediaStream::trackDidEnd()
{
    for (size_t i = 0; i < m_audioTracks.size(); ++i)
        if (!m_audioTracks[i]->ended())
            return;
    
    for (size_t i = 0; i < m_videoTracks.size(); ++i)
        if (!m_videoTracks[i]->ended())
            return;
    
    setEnded();
}
Esempio n. 5
0
void MediaStream::removeTrack(PassRefPtr<MediaStreamTrack> prpTrack, ExceptionCode& ec)
{
    if (ended()) {
        ec = INVALID_STATE_ERR;
        return;
    }

    if (!prpTrack) {
        ec = TYPE_MISMATCH_ERR;
        return;
    }

    RefPtr<MediaStreamTrack> track = prpTrack;

    size_t pos = notFound;
    switch (track->source()->type()) {
    case MediaStreamSource::Audio:
        pos = m_audioTracks.find(track);
        if (pos != notFound)
            m_audioTracks.remove(pos);
        break;
    case MediaStreamSource::Video:
        pos = m_videoTracks.find(track);
        if (pos != notFound)
            m_videoTracks.remove(pos);
        break;
    }

    if (pos == notFound)
        return;

    m_descriptor->removeSource(track->source());

    if (!m_audioTracks.size() && !m_videoTracks.size())
        setEnded();

    MediaStreamCenter::shared().didRemoveMediaStreamTrack(track->source());
}