eliminate use vars
[imager.git] / lib / Imager / Transform.pm
index 077c805..b6b945c 100644 (file)
@@ -1,8 +1,11 @@
 package Imager::Transform;
+use 5.006;
 use strict;
 use Imager;
 use Imager::Expr::Assem;
 
+our $VERSION = "1.007";
+
 my %funcs =
   (
    mandel=>
@@ -357,10 +360,10 @@ sub transform {
   my %opts = %$opts;
   $opts{$func->{type}} = $func->{$func->{type}};
   my %con = %$constants;
-  for my $name (keys %{$func->{constants}}) {
+  for my $name (keys %{$func->{'constants'}}) {
     unless (exists $con{$name}) {
-      if (exists $func->{constants}{$name}{default}) {
-       $con{$name} = $func->{constants}{$name}{default};
+      if (exists $func->{'constants'}{$name}{default}) {
+       $con{$name} = $func->{'constants'}{$name}{default};
       }
       else {
        $self->{error} = "No value or default for constant $name";
@@ -368,10 +371,10 @@ sub transform {
       }
     }
   }
-  $opts{constants} = \%con;
-  unless (@in == @{$func->{inputs}}) {
+  $opts{'constants'} = \%con;
+  unless (@in == @{$func->{'inputs'}}) {
     $self->{error} = @in." input images given, ".
-      @{$func->{inputs}}." supplied";
+      @{$func->{'inputs'}}." supplied";
     return;
   }
 
@@ -407,21 +410,21 @@ sub describe {
 Function   : $name
 Description: $func->{desc}
 EOS
-  if ($func->{inputs} && @{$func->{inputs}}) {
+  if ($func->{'inputs'} && @{$func->{'inputs'}}) {
     $desc .= "Input images:\n";
     my $i = 1;
-    for my $in (@{$func->{inputs}}) {
+    for my $in (@{$func->{'inputs'}}) {
       $desc .= "  $i: $in->{desc}\n";
     }
   }
   else {
     $desc .= "There are no input images\n";
   }
-  if ($func->{constants} && keys %{$func->{constants}}) {
+  if ($func->{'constants'} && keys %{$func->{'constants'}}) {
     $desc .= "Input constants:\n";
-    for my $key (keys %{$func->{constants}}) {
-      $desc .= "  $key: $func->{constants}{$key}{desc}\n";
-      $desc .= "       Default: $func->{constants}{$key}{default}\n";
+    for my $key (keys %{$func->{'constants'}}) {
+      $desc .= "  $key: $func->{'constants'}{$key}{desc}\n";
+      $desc .= "       Default: $func->{'constants'}{$key}{default}\n";
     }
   }
   else {
@@ -494,8 +497,18 @@ transformation.
 Returns a list of input image descriptions, or the number of them,
 depending on content.
 
-The list contains hashrefs, which current contain only one member,
-desc, a description of the use of the input image.
+The list contains hash references, which current contain only one
+member, C<desc>, a description of the use of the input image.
+
+=item $tran->constants
+
+Returns a list of names of constants that can be set for the
+transformation.
+
+=item $tran->constants($name, $name, ...)
+
+Returns a hashref for each named constant, which contains the default
+in key C<default> and a description in key C<desc>.
 
 =item my $out = $tran->transform(\%opts, \%constants, @imgs)
 
@@ -516,6 +529,10 @@ Needs more transformations.
 
 =head1 SEE ALSO
 
-Imager(3), transform.perl
+Imager(3), F<transform.perl>
+
+=head1 AUTHOR
+
+Tony Cook <tonyc@cpan.org>
 
 =cut