← Index
NYTProf Performance Profile   « block view • line view • sub view »
For ddd2.pl
  Run on Tue May 25 16:52:24 2010
Reported on Tue May 25 16:57:05 2010

File /project/perl/lib/IO/Compress/Adapter/Deflate.pm
Statements Executed 18
Statement Execution Time 2.21ms
Subroutines — ordered by exclusive time
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
0000s0sIO::Compress::Adapter::Deflate::::BEGINIO::Compress::Adapter::Deflate::BEGIN
0000s0sIO::Compress::Adapter::Deflate::::adler32IO::Compress::Adapter::Deflate::adler32
0000s0sIO::Compress::Adapter::Deflate::::closeIO::Compress::Adapter::Deflate::close
0000s0sIO::Compress::Adapter::Deflate::::comprIO::Compress::Adapter::Deflate::compr
0000s0sIO::Compress::Adapter::Deflate::::compressedBytesIO::Compress::Adapter::Deflate::compressedBytes
0000s0sIO::Compress::Adapter::Deflate::::crc32IO::Compress::Adapter::Deflate::crc32
0000s0sIO::Compress::Adapter::Deflate::::deflateParamsIO::Compress::Adapter::Deflate::deflateParams
0000s0sIO::Compress::Adapter::Deflate::::flushIO::Compress::Adapter::Deflate::flush
0000s0sIO::Compress::Adapter::Deflate::::mkCompObjectIO::Compress::Adapter::Deflate::mkCompObject
0000s0sIO::Compress::Adapter::Deflate::::resetIO::Compress::Adapter::Deflate::reset
0000s0sIO::Compress::Adapter::Deflate::::uncompressedBytesIO::Compress::Adapter::Deflate::uncompressedBytes
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package IO::Compress::Adapter::Deflate ;
2
3392µs127µsuse strict;
# spent 27µs making 1 call to strict::import
4381µs1117µsuse warnings;
# spent 117µs making 1 call to warnings::import
5394µs115µsuse bytes;
# spent 15µs making 1 call to bytes::import
6
73406µs2966µsuse IO::Compress::Base::Common 2.005 qw(:Status);
# spent 732µs making 1 call to Exporter::import # spent 234µs making 1 call to UNIVERSAL::VERSION
8
931.52ms21.15msuse Compress::Raw::Zlib 2.005 qw(Z_OK Z_FINISH MAX_WBITS) ;
# spent 928µs making 1 call to Exporter::import # spent 219µs making 1 call to UNIVERSAL::VERSION
1015µsour ($VERSION);
11
1216µs$VERSION = '2.005';
13
14sub mkCompObject
15{
16 my $crc32 = shift ;
17 my $adler32 = shift ;
18 my $level = shift ;
19 my $strategy = shift ;
20
21 my ($def, $status) = new Compress::Raw::Zlib::Deflate
22 -AppendOutput => 1,
23 -CRC32 => $crc32,
24 -ADLER32 => $adler32,
25 -Level => $level,
26 -Strategy => $strategy,
27 -WindowBits => - MAX_WBITS;
28
29 return (undef, "Cannot create Deflate object: $status", $status)
30 if $status != Z_OK;
31
32 return bless {'Def' => $def,
33 'Error' => '',
34 } ;
35}
36
37sub compr
38{
39 my $self = shift ;
40
41 my $def = $self->{Def};
42
43 my $status = $def->deflate($_[0], $_[1]) ;
44 $self->{ErrorNo} = $status;
45
46 if ($status != Z_OK)
47 {
48 $self->{Error} = "Deflate Error: $status";
49 return STATUS_ERROR;
50 }
51
52 return STATUS_OK;
53}
54
55sub flush
56{
57 my $self = shift ;
58
59 my $def = $self->{Def};
60
61 my $opt = $_[1] || Z_FINISH;
62 my $status = $def->flush($_[0], $opt);
63 $self->{ErrorNo} = $status;
64
65 if ($status != Z_OK)
66 {
67 $self->{Error} = "Deflate Error: $status";
68 return STATUS_ERROR;
69 }
70
71 return STATUS_OK;
72
73}
74
75sub close
76{
77 my $self = shift ;
78
79 my $def = $self->{Def};
80
81 $def->flush($_[0], Z_FINISH)
82 if defined $def ;
83}
84
85sub reset
86{
87 my $self = shift ;
88
89 my $def = $self->{Def};
90
91 my $status = $def->deflateReset() ;
92 $self->{ErrorNo} = $status;
93 if ($status != Z_OK)
94 {
95 $self->{Error} = "Deflate Error: $status";
96 return STATUS_ERROR;
97 }
98
99 return STATUS_OK;
100}
101
102sub deflateParams
103{
104 my $self = shift ;
105
106 my $def = $self->{Def};
107
108 my $status = $def->deflateParams(@_);
109 $self->{ErrorNo} = $status;
110 if ($status != Z_OK)
111 {
112 $self->{Error} = "deflateParams Error: $status";
113 return STATUS_ERROR;
114 }
115
116 return STATUS_OK;
117}
118
119
120
121#sub total_out
122#{
123# my $self = shift ;
124# $self->{Def}->total_out();
125#}
126#
127#sub total_in
128#{
129# my $self = shift ;
130# $self->{Def}->total_in();
131#}
132
133sub compressedBytes
134{
135 my $self = shift ;
136
137 $self->{Def}->compressedBytes();
138}
139
140sub uncompressedBytes
141{
142 my $self = shift ;
143 $self->{Def}->uncompressedBytes();
144}
145
146
147
148
149sub crc32
150{
151 my $self = shift ;
152 $self->{Def}->crc32();
153}
154
155sub adler32
156{
157 my $self = shift ;
158 $self->{Def}->adler32();
159}
160
161
162113µs1;
163
164__END__
165