#ifndef MockTracks_h
#define MockTracks_h
#if ENABLE(MEDIA_SOURCE)
#include "AudioTrackPrivate.h"
#include "InbandTextTrackPrivate.h"
#include "MockBox.h"
#include "VideoTrackPrivate.h"
namespace WebCore {
class MockAudioTrackPrivate : public AudioTrackPrivate {
public:
static RefPtr<MockAudioTrackPrivate> create(const MockTrackBox& box) { return adoptRef(new MockAudioTrackPrivate(box)); }
virtual ~MockAudioTrackPrivate() { }
virtual AtomicString id() const { return m_id; }
protected:
MockAudioTrackPrivate(const MockTrackBox& box)
: m_box(box)
, m_id(String::format("%d", box.trackID()))
{
}
MockTrackBox m_box;
AtomicString m_id;
};
class MockTextTrackPrivate : public InbandTextTrackPrivate {
public:
static RefPtr<MockTextTrackPrivate> create(const MockTrackBox& box) { return adoptRef(new MockTextTrackPrivate(box)); }
virtual ~MockTextTrackPrivate() { }
virtual AtomicString id() const { return m_id; }
protected:
MockTextTrackPrivate(const MockTrackBox& box)
: InbandTextTrackPrivate(InbandTextTrackPrivate::Generic)
, m_box(box)
, m_id(String::format("%d", box.trackID()))
{
}
MockTrackBox m_box;
AtomicString m_id;
};
class MockVideoTrackPrivate : public VideoTrackPrivate {
public:
static RefPtr<MockVideoTrackPrivate> create(const MockTrackBox& box) { return adoptRef(new MockVideoTrackPrivate(box)); }
virtual ~MockVideoTrackPrivate() { }
virtual AtomicString id() const { return m_id; }
protected:
MockVideoTrackPrivate(const MockTrackBox& box)
: m_box(box)
, m_id(String::format("%d", box.trackID()))
{
}
MockTrackBox m_box;
AtomicString m_id;
};
}
#endif
#endif