WFDB SWIG 1.0.0

File: <base>/examples/rdsamp.pl (943 bytes)
#!/usr/bin/perl
#
# File: rdsamp.pl       I. Henry   March 29 2005
#
# Minimal WFDB sample reader written in Perl, based on rdsamp.c
# 							   
# Copyright (C) 2005 Isaac C. Henry (ihenry@physionet.org)


package wfdb;
use wfdb;

if ( @ARGV < 2 ) {
    usage();
    exit;
} 

# parse the arguments
for ($i=0; $i<@ARGV; $i++ ) {
    if ( $ARGV[$i] =~ m/\-r/ ) {
	$record = $ARGV[++$i];
    }
    else {
	usage();
	exit;
    }
}

if ( ! $record ) {
    usage();
    exit(2);
}

$nsig = isigopen($record, undef, 0);

if ( $nsig < 1 ) {
    usage();
    exit(2);
} 

$siarray = new wfdb::WFDB_SiginfoArray($nsig);
$nsig = isigopen($record, $siarray->cast(), $nsig);

$n = 0;

$v = new wfdb::WFDB_SampleArray($nsig);
while ( getvec($v->cast()) > 0 ) {
    print $n;
    for ($i=0; $i < $nsig; $i++) {
    	print "\t", $v->getitem($i);
    }
    print "\n";
    $n++;
}

wfdbquit();

sub usage {
    print STDERR "Usage: rdsamp.pl -r record\n";
}