added --loop and --only 3M810
authorDobrica Pavlinusic <dpavlin@rot13.org>
Tue, 27 Jul 2010 11:46:56 +0000 (13:46 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Tue, 27 Jul 2010 11:46:56 +0000 (13:46 +0200)
scripts/scan.pl

index d28eb61..13fda83 100755 (executable)
@@ -4,18 +4,32 @@ use warnings;
 use strict;
 
 use Data::Dump qw(dump);
+use Getopt::Long;
+
+my $loop = 0;
+my $only;
+
+GetOptions(
+       'loop!'   => \$loop,
+       'only=s', => \$only,
+) || die $!;
+
+my @readers = ( '3M810', 'CPRM02' );
 
 use lib 'lib';
 
-foreach my $reader ( '3M810', 'CPRM02' ) {
-       my $module = "RFID::Serial::$reader";
-       eval "use $module";
-       die $@ if $@;
-       my $rfid = $module->new( device => '/dev/ttyUSB0' );
-       my $visible = $rfid->scan;
-       foreach my $tag ( keys %$visible ) {
-       warn "XXX $tag";
-               print "$tag\t", join('', @{ $visible->{$tag} }), $/;
+do {
+       foreach my $reader ( '3M810', 'CPRM02' ) {
+               next if $only && $only ne $reader;
+               my $module = "RFID::Serial::$reader";
+               eval "use $module";
+               die $@ if $@;
+               my $rfid = $module->new( device => '/dev/ttyUSB0' );
+               my $visible = $rfid->scan;
+               foreach my $tag ( keys %$visible ) {
+               warn "XXX $tag";
+                       print "$reader\t$tag\t", join('', @{ $visible->{$tag} }), $/;
+               }
        }
-}
 
+} while $loop;