• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/core/v8/ScriptWrappable.h"
9 #include "core/html/track/TrackBase.h"
10 
11 namespace blink {
12 
13 class AudioTrack FINAL : public TrackBase, public ScriptWrappable {
14     DEFINE_WRAPPERTYPEINFO();
15 public:
create(const String & id,const AtomicString & kind,const AtomicString & label,const AtomicString & language,bool enabled)16     static PassRefPtrWillBeRawPtr<AudioTrack> create(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled)
17     {
18         return adoptRefWillBeNoop(new AudioTrack(id, kind, label, language, enabled));
19     }
20     virtual ~AudioTrack();
21 
enabled()22     bool enabled() const { return m_enabled; }
23     void setEnabled(bool);
24 
25     // Valid kind keywords.
26     static const AtomicString& alternativeKeyword();
27     static const AtomicString& descriptionsKeyword();
28     static const AtomicString& mainKeyword();
29     static const AtomicString& mainDescriptionsKeyword();
30     static const AtomicString& translationKeyword();
31     static const AtomicString& commentaryKeyword();
32 
33 private:
34     AudioTrack(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled);
35 
36     // TrackBase
37     virtual bool isValidKind(const AtomicString&) const OVERRIDE;
38     virtual AtomicString defaultKind() const OVERRIDE;
39 
40     bool m_enabled;
41 };
42 
43 DEFINE_TRACK_TYPE_CASTS(AudioTrack, TrackBase::AudioTrack);
44 
45 } // namespace blink
46 
47 #endif // AudioTrack_h
48