WebPlaybackSessionInterface.h [plain text]
#ifndef WebPlaybackSessionInterface_h
#define WebPlaybackSessionInterface_h
#if PLATFORM(IOS) || (PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE))
#include <wtf/Vector.h>
namespace WTF {
class String;
}
namespace WebCore {
class TimeRanges;
class WebPlaybackSessionInterface {
public:
enum ExternalPlaybackTargetType { TargetTypeNone, TargetTypeAirPlay, TargetTypeTVOut };
virtual ~WebPlaybackSessionInterface() { };
virtual void resetMediaState() = 0;
virtual void setDuration(double) = 0;
virtual void setCurrentTime(double currentTime, double anchorTime) = 0;
virtual void setBufferedTime(double) = 0;
virtual void setRate(bool isPlaying, float playbackRate) = 0;
virtual void setSeekableRanges(const TimeRanges&) = 0;
virtual void setCanPlayFastReverse(bool) = 0;
virtual void setAudioMediaSelectionOptions(const Vector<WTF::String>& options, uint64_t selectedIndex) = 0;
virtual void setLegibleMediaSelectionOptions(const Vector<WTF::String>& options, uint64_t selectedIndex) = 0;
virtual void setExternalPlayback(bool enabled, ExternalPlaybackTargetType, WTF::String localizedDeviceName) = 0;
virtual void setWirelessVideoPlaybackDisabled(bool) = 0;
};
}
#endif // PLATFORM(IOS) || (PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE))
#endif