InbandTextTrackPrivateAVFObjC.h [plain text]
#ifndef InbandTextTrackPrivateAVFObjC_h
#define InbandTextTrackPrivateAVFObjC_h
#if ENABLE(VIDEO) && USE(AVFOUNDATION) && HAVE(AVFOUNDATION_MEDIA_SELECTION_GROUP)
#include "InbandTextTrackPrivateAVF.h"
#include <wtf/RetainPtr.h>
OBJC_CLASS AVMediaSelectionOption;
namespace WebCore {
class InbandTextTrackPrivateAVFObjC : public InbandTextTrackPrivateAVF {
public:
static PassRefPtr<InbandTextTrackPrivateAVFObjC> create(AVFInbandTrackParent* player, AVMediaSelectionOption *selection)
{
return adoptRef(new InbandTextTrackPrivateAVFObjC(player, selection));
}
~InbandTextTrackPrivateAVFObjC() { }
virtual InbandTextTrackPrivate::Kind kind() const OVERRIDE;
virtual bool isClosedCaptions() const OVERRIDE;
virtual bool isSDH() const OVERRIDE;
virtual bool containsOnlyForcedSubtitles() const OVERRIDE;
virtual bool isMainProgramContent() const OVERRIDE;
virtual bool isEasyToRead() const OVERRIDE;
virtual AtomicString label() const OVERRIDE;
virtual AtomicString language() const OVERRIDE;
virtual bool isDefault() const OVERRIDE;
virtual void disconnect() OVERRIDE;
virtual bool isLegacyClosedCaptionsTrack() const OVERRIDE { return false; }
AVMediaSelectionOption *mediaSelectionOption() const { return m_mediaSelectionOption.get(); }
protected:
InbandTextTrackPrivateAVFObjC(AVFInbandTrackParent*, AVMediaSelectionOption *);
RetainPtr<AVMediaSelectionOption> m_mediaSelectionOption;
};
}
#endif
#endif