]> git.vpit.fr Git - perl/modules/Bit-MorseSignals.git/blobdiff - lib/Bit/MorseSignals/Emitter.pm
Better be on irc.perl.org
[perl/modules/Bit-MorseSignals.git] / lib / Bit / MorseSignals / Emitter.pm
index 9d0273a34d44197b017b6c55b8139007562654af..af654a20587f4b5afe2c939a515eca3b3dd9f5ac 100644 (file)
@@ -15,15 +15,15 @@ Bit::MorseSignals::Emitter - Base class for Bit::MorseSignals emitters.
 
 =head1 VERSION
 
-Version 0.02
+Version 0.06
 
 =cut
 
-our $VERSION = '0.02';
+our $VERSION = '0.06';
 
 =head1 SYNOPSIS
 
-    use Bit::MorseSignals;
+    use Bit::MorseSignals::Emitter;
 
     my $deuce = new Bit::MorseSignals::Emitter;
     $deuce->post("hlagh") for 1 .. 3;
@@ -70,7 +70,7 @@ L<Bit::MorseSignals::Emitter> object constructor. Currently does not take any op
 
 sub new {
  my $class = shift;
$class = ref $class || $class || return;
return unless $class = ref $class || $class;
  croak 'Optional arguments must be passed as key => value pairs' if @_ % 2;
  my %opts = @_;
  my $self = {
@@ -81,7 +81,7 @@ sub new {
  return $self;
 }
 
-=head2 C<< post $msg, [ type => $type ] >>
+=head2 C<< post $msg, < type => $type > >>
 
 Adds C<$msg> to the message queue and, if no other message is currently processed, dequeue the oldest item and prepare it. The type is automatically chosen, but you may want to try to force it with the C<type> option : C<$type> is then one of the C<BM_DATA_*> constants listed in L<Bit::MorseSignals/CONSTANTS>
 
@@ -128,8 +128,8 @@ sub post {
  $self->{state} = 2;
 
  my $head = '';
- vec($head, 0, 1) = ($type & 2) >> 1;
- vec($head, 1, 1) = ($type & 1);
+ vec($head, 0, 1) = ($type & 1);
+ vec($head, 1, 1) = ($type & 2) >> 1;
  vec($head, 2, 1) = 0;
  my $hlen = 3;
 
@@ -176,6 +176,30 @@ sub pop {
  return $bit;
 }
 
+=head2 C<len>
+
+The length of the currently posted message.
+
+=cut
+
+sub len {
+ my ($self) = @_;
+ _check_self($self);
+ return $self->{len};
+}
+
+=head2 C<pos>
+
+The number of bits that have already been sent for the current message.
+
+=cut
+
+sub pos {
+ my ($self) = @_;
+ _check_self($self);
+ return $self->{pos};
+}
+
 =head2 C<reset>
 
 Cancels the current transfer, but does not empty the queue.
@@ -241,9 +265,9 @@ L<Bit::MorseSignals>, L<Bit::MorseSignals::Receiver>.
 
 =head1 AUTHOR
 
-Vincent Pit, C<< <perl at profvince.com> >>
+Vincent Pit, C<< <perl at profvince.com> >>, L<http://www.profvince.com>.
 
-You can contact me by mail or on #perl @ FreeNode (vincent or Prof_Vince).
+You can contact me by mail or on C<irc.perl.org> (vincent).
 
 =head1 BUGS
 
@@ -255,6 +279,8 @@ You can find documentation for this module with the perldoc command.
 
     perldoc Bit::MorseSignals::Emitter
 
+Tests code coverage report is available at L<http://www.profvince.com/perl/cover/Bit-MorseSignals>.
+
 =head1 COPYRIGHT & LICENSE
 
 Copyright 2008 Vincent Pit, all rights reserved.