File Coverage

blib/lib/Audio/DSP.pm
Criterion Covered Total %
statement 12 24 50.0
branch 0 8 0.0
condition n/a
subroutine 4 6 66.6
pod n/a
total 16 38 42.1


line stmt bran cond sub pod time code
1             package Audio::DSP;
2              
3 1     1   784 use strict;
  1         2  
  1         38  
4 1     1   5 use Carp;
  1         2  
  1         101  
5 1     1   6 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD);
  1         3  
  1         343  
6              
7             require Exporter;
8             require DynaLoader;
9             require AutoLoader;
10              
11             @ISA = qw(Exporter DynaLoader);
12             @EXPORT = qw(AFMT_A_LAW
13             AFMT_IMA_ADPCM
14             AFMT_MPEG
15             AFMT_MU_LAW
16             AFMT_QUERY
17             AFMT_S16_BE
18             AFMT_S16_LE
19             AFMT_S16_NE
20             AFMT_S8
21             AFMT_U16_BE
22             AFMT_U16_LE
23             AFMT_U8
24             );
25              
26             $VERSION = '0.02';
27              
28             sub AUTOLOAD {
29             # This AUTOLOAD is used to 'autoload' constants from the constant()
30             # XS function. If a constant is not found then control is passed
31             # to the AUTOLOAD in AutoLoader.
32              
33 0     0     my $constname;
34 0           ($constname = $AUTOLOAD) =~ s/.*:://;
35 0 0         croak "& not defined" if $constname eq 'constant';
36 0 0         my $val = constant($constname, @_ ? $_[0] : 0);
37 0 0         if ($! != 0) {
38 0 0         if ($! =~ /Invalid/) {
39 0           $AutoLoader::AUTOLOAD = $AUTOLOAD;
40 0           goto &AutoLoader::AUTOLOAD;
41             }
42             else {
43 0           croak "Your vendor has not defined Audio::DSP macro $constname";
44             }
45             }
46 1     1   7 no strict 'refs';
  1         2  
  1         126  
47 0     0     *$AUTOLOAD = sub { $val };
  0            
48 0           goto &$AUTOLOAD;
49             }
50              
51             bootstrap Audio::DSP $VERSION;
52              
53             1;
54             __END__