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.
8 #include "bindings/core/v8/ScriptWrappable.h"
9 #include "core/html/track/TrackBase.h"
13 class AudioTrack final : public TrackBase, public ScriptWrappable {
14 DEFINE_WRAPPERTYPEINFO();
16 static PassRefPtrWillBeRawPtr<AudioTrack> create(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled)
18 return adoptRefWillBeNoop(new AudioTrack(id, kind, label, language, enabled));
20 virtual ~AudioTrack();
22 bool enabled() const { return m_enabled; }
23 void setEnabled(bool);
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();
34 AudioTrack(const String& id, const AtomicString& kind, const AtomicString& label, const AtomicString& language, bool enabled);
37 virtual bool isValidKind(const AtomicString&) const override;
38 virtual AtomicString defaultKind() const override;
43 DEFINE_TRACK_TYPE_CASTS(AudioTrack, TrackBase::AudioTrack);
47 #endif // AudioTrack_h