new returns object only on succeful init
[Biblio-RFID.git] / lib / RFID / Biblio.pm
index df44707..f8c7b35 100644 (file)
@@ -11,7 +11,7 @@ use Data::Dump qw(dump);
 
 =head1 NAME
 
-RFID::Biblio - support serial RFID devices
+RFID::Biblio - easy to use API for writing RFID enabled appliaction
 
 =cut
 
@@ -27,17 +27,21 @@ which is sutable for direct mapping to REST JSONP service.
 
 Perhaps a little code snippet.
 
-    use RFID::Biblio;
+       use RFID::Biblio;
 
-    my $rfid = RFID::Biblio->new(
+       my $rfid = RFID::Biblio->new(
                device => '/dev/ttyUSB0', # with fallback to RFID_DEVICE
        );
+
+       # invetory tags in reader range and read data from them
        my $visible = $rfid->scan;
 
-=head1 SUBROUTINES/METHODS
+=head1 METHODS
 
 =head2 new
 
+Open serial port (if needed) and init reader
+
 =cut
 
 sub new {
@@ -47,9 +51,7 @@ sub new {
 
        $self->port;
 
-       $self->init;
-
-       return $self;
+       $self->init && return $self;
 }
 
 =head2 port
@@ -110,7 +112,7 @@ sub scan {
 }
 
 
-=head1 MANDATORY IMPLEMENTATIONS
+=head1 READER IMPLEMENTATION
 
 Each reader must implement following hooks as sub-classes.
 
@@ -197,6 +199,22 @@ sub as_hex {
 sub hex_tag { uc(unpack('H16', shift)) }
 
 
+=head1 SUPPORTED READERS
+
+Support for different RFID readers is implemented in subclasses:
+
+=head2 3M 810
+
+L<RFID::Biblio::3M810>
+
+=head2 CPR-M02
+
+L<RFID::Biblio::CPRM02>
+
+=head2 librfid
+
+L<RFID::Biblio::librfid>
+
 =head1 AUTHOR
 
 Dobrica Pavlinusic, C<< <dpavlin at rot13.org> >>