MediaStreamCenterChromium.cpp [plain text]
#include "config.h"
#if ENABLE(MEDIA_STREAM)
#include "MediaStreamCenterChromium.h"
#include "IceCandidateDescriptor.h"
#include "MediaStreamDescriptor.h"
#include "MediaStreamSourcesQueryClient.h"
#include "SessionDescriptionDescriptor.h"
#include <public/Platform.h>
#include <public/WebICECandidateDescriptor.h>
#include <public/WebMediaStreamCenter.h>
#include <public/WebMediaStreamComponent.h>
#include <public/WebMediaStreamDescriptor.h>
#include <public/WebMediaStreamSourcesRequest.h>
#include <public/WebSessionDescriptionDescriptor.h>
#include <wtf/MainThread.h>
#include <wtf/PassOwnPtr.h>
namespace WebCore {
MediaStreamCenter& MediaStreamCenter::instance()
{
ASSERT(isMainThread());
DEFINE_STATIC_LOCAL(MediaStreamCenterChromium, center, ());
return center;
}
MediaStreamCenterChromium::MediaStreamCenterChromium()
: m_private(adoptPtr(WebKit::Platform::current()->createMediaStreamCenter(this)))
{
}
MediaStreamCenterChromium::~MediaStreamCenterChromium()
{
}
void MediaStreamCenterChromium::queryMediaStreamSources(PassRefPtr<MediaStreamSourcesQueryClient> client)
{
MediaStreamSourceVector audioSources, videoSources;
client->didCompleteQuery(audioSources, videoSources);
}
void MediaStreamCenterChromium::didSetMediaStreamTrackEnabled(MediaStreamDescriptor* stream, MediaStreamComponent* component)
{
if (m_private) {
if (component->enabled())
m_private->didEnableMediaStreamTrack(stream, component);
else
m_private->didDisableMediaStreamTrack(stream, component);
}
}
void MediaStreamCenterChromium::didStopLocalMediaStream(MediaStreamDescriptor* stream)
{
if (m_private)
m_private->didStopLocalMediaStream(stream);
}
void MediaStreamCenterChromium::didConstructMediaStream(MediaStreamDescriptor* stream)
{
if (m_private)
m_private->didConstructMediaStream(stream);
}
String MediaStreamCenterChromium::constructSDP(IceCandidateDescriptor* iceCandidate)
{
return m_private ? m_private->constructSDP(WebKit::WebICECandidateDescriptor(iceCandidate)) : "";
}
String MediaStreamCenterChromium::constructSDP(SessionDescriptionDescriptor* sessionDescription)
{
return m_private ? m_private->constructSDP(WebKit::WebSessionDescriptionDescriptor(sessionDescription)) : "";
}
void MediaStreamCenterChromium::stopLocalMediaStream(const WebKit::WebMediaStreamDescriptor& stream)
{
endLocalMediaStream(stream);
}
}
#endif // ENABLE(MEDIA_STREAM)