Home | History | Annotate | Download | only in track
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef AudioTrack_h
      6 #define AudioTrack_h
      7 
      8 #include "bindings/v8/ScriptWrappable.h"
      9 #include "core/html/track/TrackBase.h"
     10 
     11 namespace WebCore {
     12 
     13 class AudioTrack FINAL : public TrackBase, public ScriptWrappable {
     14 public:
     15     static PassRefPtrWillBeRawPtr<AudioTrack> create(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled)
     16     {
     17         return adoptRefWillBeRefCountedGarbageCollected(new AudioTrack(id, kind, label, language, enabled));
     18     }
     19     virtual ~AudioTrack();
     20 
     21     bool enabled() const { return m_enabled; }
     22     void setEnabled(bool);
     23 
     24     // Valid kind keywords.
     25     static const AtomicString& alternativeKeyword();
     26     static const AtomicString& descriptionsKeyword();
     27     static const AtomicString& mainKeyword();
     28     static const AtomicString& mainDescriptionsKeyword();
     29     static const AtomicString& translationKeyword();
     30     static const AtomicString& commentaryKeyword();
     31 
     32 private:
     33     AudioTrack(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled);
     34 
     35     // TrackBase
     36     virtual bool isValidKind(const AtomicString&) const OVERRIDE;
     37     virtual AtomicString defaultKind() const OVERRIDE;
     38 
     39     bool m_enabled;
     40 };
     41 
     42 }
     43 
     44 #endif
     45