package MyFFT @ISA = qw() sub new my ($module) = @_; return $this; sub DESTROY my $this = shift; sub FFT my ($this) = @_; return $this->FFTInverse(); return $this->FFTForward(); sub FFTForward my ($this) = @_; return (\@k, \@Areal, \@Bimag); sub FFTInverse my ($this) = @_; return (\@k, \@Areal, \@Breal); sub SetData my $this = shift; my ($pX, $pReal, $pImag, $Direction, $AdjustMethod) = @_; return $this->SetComplexData( return $this->SetComplexData(@_); return $this->SetRealData( return $this->SetRealData(@_); sub SetComplexData my ($this, $pX, $pReal, $pImag, $Direction, $AdjustMethod) = @_; return ($n, \@x, \@data); sub SetRealData my ($this, $pX, $pReal, $pImag, $Direction, $AdjustMethod) = @_; return ($n, \@x, \@data);