diff options
Diffstat (limited to 'Source/WebCore/loader/TextTrackLoader.h')
-rw-r--r-- | Source/WebCore/loader/TextTrackLoader.h | 52 |
1 files changed, 19 insertions, 33 deletions
diff --git a/Source/WebCore/loader/TextTrackLoader.h b/Source/WebCore/loader/TextTrackLoader.h index cd62ca2f7..337c8e131 100644 --- a/Source/WebCore/loader/TextTrackLoader.h +++ b/Source/WebCore/loader/TextTrackLoader.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011 Apple Inc. All rights reserved. + * Copyright (C) 2011, 2014 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -23,8 +23,7 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef TextTrackLoader_h -#define TextTrackLoader_h +#pragma once #if ENABLE(VIDEO_TRACK) @@ -32,7 +31,7 @@ #include "CachedResourceHandle.h" #include "Timer.h" #include "WebVTTParser.h" -#include <wtf/OwnPtr.h> +#include <memory> namespace WebCore { @@ -47,54 +46,42 @@ public: virtual void newCuesAvailable(TextTrackLoader*) = 0; virtual void cueLoadingCompleted(TextTrackLoader*, bool loadingFailed) = 0; -#if ENABLE(WEBVTT_REGIONS) virtual void newRegionsAvailable(TextTrackLoader*) = 0; -#endif }; class TextTrackLoader : public CachedResourceClient, private WebVTTParserClient { WTF_MAKE_NONCOPYABLE(TextTrackLoader); WTF_MAKE_FAST_ALLOCATED; public: - static PassOwnPtr<TextTrackLoader> create(TextTrackLoaderClient& client, ScriptExecutionContext* context) - { - return adoptPtr(new TextTrackLoader(client, context)); - } + TextTrackLoader(TextTrackLoaderClient&, ScriptExecutionContext*); virtual ~TextTrackLoader(); - bool load(const URL&, const String& crossOriginMode); + bool load(const URL&, const String& crossOriginMode, bool isInitiatingElementInUserAgentShadowTree); void cancelLoad(); void getNewCues(Vector<RefPtr<TextTrackCue>>& outputCues); -#if ENABLE(WEBVTT_REGIONS) - void getNewRegions(Vector<RefPtr<TextTrackRegion>>& outputRegions); -#endif + void getNewRegions(Vector<RefPtr<VTTRegion>>& outputRegions); private: // CachedResourceClient - virtual void notifyFinished(CachedResource*); - virtual void deprecatedDidReceiveCachedResource(CachedResource*); - + void notifyFinished(CachedResource&) override; + void deprecatedDidReceiveCachedResource(CachedResource&) override; + // WebVTTParserClient - virtual void newCuesParsed(); -#if ENABLE(WEBVTT_REGIONS) - virtual void newRegionsParsed(); -#endif - virtual void fileFailedToParse(); - - TextTrackLoader(TextTrackLoaderClient&, ScriptExecutionContext*); - - void processNewCueData(CachedResource*); - void cueLoadTimerFired(Timer<TextTrackLoader>*); + void newCuesParsed() override; + void newRegionsParsed() override; + void fileFailedToParse() override; + + void processNewCueData(CachedResource&); + void cueLoadTimerFired(); void corsPolicyPreventedLoad(); enum State { Idle, Loading, Finished, Failed }; - + TextTrackLoaderClient& m_client; - OwnPtr<WebVTTParser> m_cueParser; + std::unique_ptr<WebVTTParser> m_cueParser; CachedResourceHandle<CachedTextTrack> m_resource; ScriptExecutionContext* m_scriptExecutionContext; - Timer<TextTrackLoader> m_cueLoadTimer; - String m_crossOriginMode; + Timer m_cueLoadTimer; State m_state; unsigned m_parseOffset; bool m_newCuesAvailable; @@ -102,5 +89,4 @@ private: } // namespace WebCore -#endif -#endif +#endif // ENABLE(VIDEO_TRACK) |