File Coverage

lib/HTML/Object/DOM/MediaTrack.pm
Criterion Covered Total %
statement 19 27 70.3
branch 0 2 0.0
condition n/a
subroutine 7 12 58.3
pod 5 5 100.0
total 31 46 67.3


line stmt bran cond sub pod time code
1             ##----------------------------------------------------------------------------
2             ## HTML Object - ~/lib/HTML/Object/DOM/MediaTrack.pm
3             ## Version v0.2.0
4             ## Copyright(c) 2021 DEGUEST Pte. Ltd.
5             ## Author: Jacques Deguest <jack@deguest.jp>
6             ## Created 2021/12/30
7             ## Modified 2022/09/18
8             ## All rights reserved
9             ##
10             ##
11             ## This program is free software; you can redistribute it and/or modify it
12             ## under the same terms as Perl itself.
13             ##----------------------------------------------------------------------------
14             package HTML::Object::DOM::MediaTrack;
15             BEGIN
16             {
17 1     1   418 use strict;
  1         2  
  1         37  
18 1     1   5 use warnings;
  1         1  
  1         42  
19 1     1   5 use parent qw( HTML::Object::EventTarget );
  1         4  
  1         6  
20 1     1   62 use vars qw( $VERSION );
  1         3  
  1         42  
21 1     1   22 our $VERSION = 'v0.2.0';
22             };
23              
24 1     1   5 use strict;
  1         4  
  1         24  
25 1     1   7 use warnings;
  1         5  
  1         185  
26              
27             sub init
28             {
29 0     0 1   my $self = shift( @_ );
30 0           $self->{_init_strict_use_sub} = 1;
31 0 0         $self->SUPER::init( @_ ) || return( $self->pass_error );
32 0           return( $self );
33             }
34              
35             # Note: property
36 0     0 1   sub id : lvalue { return( shift->_set_get_scalar_as_object( 'id', @_ ) ); }
37              
38             # Note: property
39 0     0 1   sub kind : lvalue { return( shift->_set_get_scalar_as_object( 'kind', @_ ) ); }
40              
41             # Note: property
42 0     0 1   sub label : lvalue { return( shift->_set_get_scalar_as_object( 'label', @_ ) ); }
43              
44             # Note: property
45 0     0 1   sub language : lvalue { return( shift->_set_get_scalar_as_object( 'language', @_ ) ); }
46              
47             1;
48             # NOTE: POD
49             __END__
50              
51             =encoding utf-8
52              
53             =head1 NAME
54              
55             HTML::Object::DOM::MediaTrack - HTML Object
56              
57             =head1 SYNOPSIS
58              
59             use HTML::Object::DOM::MediaTrack;
60             my $this = HTML::Object::DOM::MediaTrack->new ||
61             die( HTML::Object::DOM::MediaTrack->error, "\n" );
62              
63             =head1 VERSION
64              
65             v0.2.0
66              
67             =head1 DESCRIPTION
68              
69             This is a shared interface for L<HTML::Object::DOM::AudioTrack> and L<HTML::Object::DOM::VideoTrack>
70              
71             =head1 INHERITANCE
72              
73             +-----------------------+ +---------------------------+ +-------------------------------+
74             | HTML::Object::Element | --> | HTML::Object::EventTarget | --> | HTML::Object::DOM::MediaTrack |
75             +-----------------------+ +---------------------------+ +-------------------------------+
76              
77             =head1 METHODS
78              
79             =head2 id
80              
81             A string which uniquely identifies the track within the media. This ID can be used to locate a specific track within an audio track list by calling C<AudioTrackList>.getTrackById(). The ID can also be used as the fragment part of the URL if the media supports seeking by media fragment per the Media Fragments URI specification.
82              
83             See also L<Mozilla documentation for audio id|https://developer.mozilla.org/en-US/docs/Web/API/AudioTrack/id> and See also L<Mozilla documentation for video id|https://developer.mozilla.org/en-US/docs/Web/API/VideoTrack/id>
84              
85             =head2 kind
86              
87             A string specifying the category into which the track falls. For example, the main audio track would have a kind of "main".
88              
89             See also L<Mozilla documentation for audio kind|https://developer.mozilla.org/en-US/docs/Web/API/AudioTrack/kind> and L<Mozilla documentation for video kind|https://developer.mozilla.org/en-US/docs/Web/API/VideoTrack/kind>
90              
91             =head2 label
92              
93             A string providing a human-readable label for the track. For example, an audio commentary track for a movie might have a label of "Commentary with director John Q. Public and actors John Doe and Jane Eod." This string is empty if no label is provided.
94              
95             See also L<Mozilla documentation for audio label|https://developer.mozilla.org/en-US/docs/Web/API/AudioTrack/label> and L<Mozilla documentation for vide label|https://developer.mozilla.org/en-US/docs/Web/API/VideoTrack/label>
96              
97             =head2 language
98              
99             A string specifying the audio track's primary language, or an empty string if unknown. The language is specified as a BCP 47 (RFC 5646) language code, such as "en-US" or "pt-BR".
100              
101             See also L<Mozilla documentation for audio language|https://developer.mozilla.org/en-US/docs/Web/API/AudioTrack/language> and L<Mozilla documentation for video language|https://developer.mozilla.org/en-US/docs/Web/API/VideoTrack/language>
102              
103             =head1 AUTHOR
104              
105             Jacques Deguest E<lt>F<jack@deguest.jp>E<gt>
106              
107             =head1 SEE ALSO
108              
109             L<HTML::Object::DOM::AudioTrack>, L<HTML::Object::DOM::VideoTrack>
110              
111             =head1 COPYRIGHT & LICENSE
112              
113             Copyright(c) 2021 DEGUEST Pte. Ltd.
114              
115             All rights reserved
116              
117             This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
118              
119             =cut