diff options
Diffstat (limited to 'eg/callback')
-rw-r--r-- | eg/callback | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/eg/callback b/eg/callback new file mode 100644 index 0000000..958d409 --- /dev/null +++ b/eg/callback @@ -0,0 +1,32 @@ +#! /usr/local/bin/perl -w +# +# callback - demonstrate how callbacks can modify the parameters +# of a Tie::Cycle::Sinewave object +# +# This file is part of the Tie::Cycle::Sinewave perl extension +# Copyright (c) 2005 David Landgren. All rights reservered. + +use strict; +use Tie::Cycle::Sinewave; + +tie my $c, 'Tie::Cycle::Sinewave', { + start_min => 1, + min => 10, + max => 20, + period => 4, + at_max => sub { + my $s = shift; + $s->min($s->min() - 2); + $s->period($s->period() + 1 ); + }, + at_min => sub { + my $s = shift; + $s->max($s->max() + 5); + $s->period($s->period() + 1 ); + }, +}; + +while( 1 ) { + printf "%10.2f\n", $c; + select undef, undef, undef, 0.15; +} |