Video::Xine::Event - An event emitted by Xine


Video-Xine documentation Contained in the Video-Xine distribution.

Index


Code Index:

NAME

Top

Video::Xine::Event -- An event emitted by Xine

SYNOPSIS

Top

  use Video::Xine;
  use Video::Xine::Event qw/:type_constants/;
  use Video::Xine::Event::Queue;

  # $stream is a Video::Xine::Stream
  # We get events from an event queue
  my $queue = Video::Xine::Event::Queue->new($stream);

  my $event = $queue->get_event();

  # Announce if we dropped frames
  if ( $event->get_type() == XINE_EVENT_DROPPED_FRAMES ) {
    print "Dropped frames!";
  }




DESCRIPTION

Top

Provides methods for accessing events that Xine generates.

EXPORTS

Top

Exports all XINE_EVENT* constants in the tag ':type_constants'.

TYPE CONSTANTS

METHODS

Top

get_type()

  $event->get_type()

Returns an integer indicating the event's type, which will be one of the type constants.


Video-Xine documentation Contained in the Video-Xine distribution.

package Video::Xine::Event;

use strict;
use warnings;

use Exporter;
our @ISA = 'Exporter';

our @EXPORT_OK = qw(
  XINE_EVENT_UI_PLAYBACK_FINISHED
  XINE_EVENT_UI_CHANNELS_CHANGED
  XINE_EVENT_UI_SET_TITLE
  XINE_EVENT_UI_MESSAGE
  XINE_EVENT_FRAME_FORMAT_CHANGE
  XINE_EVENT_AUDIO_LEVEL
  XINE_EVENT_QUIT
  XINE_EVENT_PROGRESS
  XINE_EVENT_MRL_REFERENCE
  XINE_EVENT_UI_NUM_BUTTONS
  XINE_EVENT_SPU_BUTTON
  XINE_EVENT_DROPPED_FRAMES
);

our %EXPORT_TAGS = 
  (
   type_constants => 
   [
    qw/
	    XINE_EVENT_UI_PLAYBACK_FINISHED
	    XINE_EVENT_UI_CHANNELS_CHANGED
	    XINE_EVENT_UI_SET_TITLE
	    XINE_EVENT_UI_MESSAGE
	    XINE_EVENT_FRAME_FORMAT_CHANGE
	    XINE_EVENT_AUDIO_LEVEL
	    XINE_EVENT_QUIT
	    XINE_EVENT_PROGRESS
	    XINE_EVENT_MRL_REFERENCE
	    XINE_EVENT_UI_NUM_BUTTONS
	    XINE_EVENT_SPU_BUTTON
	    XINE_EVENT_DROPPED_FRAMES
      /
   ]
  );

use constant {
  XINE_EVENT_UI_PLAYBACK_FINISHED   =>  1,
  XINE_EVENT_UI_CHANNELS_CHANGED    =>  2,
  XINE_EVENT_UI_SET_TITLE           =>  3,
  XINE_EVENT_UI_MESSAGE             =>  4,
  XINE_EVENT_FRAME_FORMAT_CHANGE    =>  5,
  XINE_EVENT_AUDIO_LEVEL            =>  6,
  XINE_EVENT_QUIT                   =>  7,
  XINE_EVENT_PROGRESS               =>  8,
  XINE_EVENT_MRL_REFERENCE          =>  9,
  XINE_EVENT_UI_NUM_BUTTONS         => 10,
  XINE_EVENT_SPU_BUTTON             => 11,
  XINE_EVENT_DROPPED_FRAMES         => 12
};

use Video::Xine;

sub get_type {
  xine_event_get_type($_[0]);
}

sub DESTROY {
  xine_event_free($_[0]);
}

1;

__END__