MediaControllerInterface.h [plain text]
#pragma once
#if ENABLE(VIDEO)
#include "ExceptionOr.h"
#include "HTMLMediaElementEnums.h"
namespace WebCore {
class TimeRanges;
class MediaControllerInterface : public HTMLMediaElementEnums {
public:
virtual ~MediaControllerInterface() { };
virtual Ref<TimeRanges> buffered() const = 0;
virtual Ref<TimeRanges> seekable() const = 0;
virtual Ref<TimeRanges> played() = 0;
virtual double duration() const = 0;
virtual double currentTime() const = 0;
virtual void setCurrentTime(double) = 0;
virtual bool paused() const = 0;
virtual void play() = 0;
virtual void pause() = 0;
virtual double defaultPlaybackRate() const = 0;
virtual void setDefaultPlaybackRate(double) = 0;
virtual double playbackRate() const = 0;
virtual void setPlaybackRate(double) = 0;
virtual double volume() const = 0;
virtual ExceptionOr<void> setVolume(double) = 0;
virtual bool muted() const = 0;
virtual void setMuted(bool) = 0;
using HTMLMediaElementEnums::ReadyState;
virtual ReadyState readyState() const = 0;
virtual bool supportsFullscreen(HTMLMediaElementEnums::VideoFullscreenMode) const = 0;
virtual bool isFullscreen() const = 0;
virtual void enterFullscreen() = 0;
virtual bool hasAudio() const = 0;
virtual bool hasVideo() const = 0;
virtual bool hasClosedCaptions() const = 0;
virtual void setClosedCaptionsVisible(bool) = 0;
virtual bool closedCaptionsVisible() const = 0;
virtual bool supportsScanning() const = 0;
virtual void beginScrubbing() = 0;
virtual void endScrubbing() = 0;
enum ScanDirection { Backward, Forward };
virtual void beginScanning(ScanDirection) = 0;
virtual void endScanning() = 0;
virtual bool canPlay() const = 0;
virtual bool isLiveStream() const = 0;
virtual bool hasCurrentSrc() const = 0;
virtual void returnToRealtime() = 0;
};
}
#endif