=head1 NAME

GStreamer::Event

=cut

=for position DESCRIPTION

=head1 DESCRIPTION

The various event types are represented as subclasses:

=over

=item GStreamer::Event::FlushStart

=item GStreamer::Event::FlushStop

=item GStreamer::Event::EOS

=item GStreamer::Event::NewSegment

=item GStreamer::Event::Tag

=item GStreamer::Event::BufferSize

=item GStreamer::Event::QOS

=item GStreamer::Event::Seek

=item GStreamer::Event::Navigation

=item GStreamer::Event::Custom::UP

=item GStreamer::Event::Custom::DS

=item GStreamer::Event::Custom::DS::OOB

=item GStreamer::Event::Custom::Both

=item GStreamer::Event::Custom::Both::OOB

=back

To create a new event, you call the constructor of the corresponding class.

To check if an event is of a certain type, use the I<type> method:

  if ($event -> type eq "newsegment") {
    # ...
  }

  elsif ($event -> type eq "eos") {
    # ...
  }

To get to the content of an event, call the corresponding accessor:

  if ($event -> type eq "newsegment") {
    my $update = $event -> update;
    my $rate = $event -> rate;
    my $format = $event -> format;
    my $start_value = $event -> start_value;
    my $stop_value = $event -> stop_value;
    my $stream_time = $event -> stream_time;

    # ...
  }

  elsif ($event -> type eq "tag") {
    my $tag = $event -> tag;

    # ...
  }

=cut




=head1 METHODS

=head2 structure = $event-E<gt>B<get_structure> 

=head2 eventtype = $event-E<gt>B<type> 



=cut


=head1 ENUMS AND FLAGS

=head2 enum GStreamer::EventType

=over

=item * 'unknown' / 'GST_EVENT_UNKNOWN'

=item * 'flush-start' / 'GST_EVENT_FLUSH_START'

=item * 'flush-stop' / 'GST_EVENT_FLUSH_STOP'

=item * 'eos' / 'GST_EVENT_EOS'

=item * 'newsegment' / 'GST_EVENT_NEWSEGMENT'

=item * 'tag' / 'GST_EVENT_TAG'

=item * 'buffersize' / 'GST_EVENT_BUFFERSIZE'

=item * 'sink-message' / 'GST_EVENT_SINK_MESSAGE'

=item * 'qos' / 'GST_EVENT_QOS'

=item * 'seek' / 'GST_EVENT_SEEK'

=item * 'navigation' / 'GST_EVENT_NAVIGATION'

=item * 'latency' / 'GST_EVENT_LATENCY'

=item * 'step' / 'GST_EVENT_STEP'

=item * 'custom-upstream' / 'GST_EVENT_CUSTOM_UPSTREAM'

=item * 'custom-downstream' / 'GST_EVENT_CUSTOM_DOWNSTREAM'

=item * 'custom-downstream-oob' / 'GST_EVENT_CUSTOM_DOWNSTREAM_OOB'

=item * 'custom-both' / 'GST_EVENT_CUSTOM_BOTH'

=item * 'custom-both-oob' / 'GST_EVENT_CUSTOM_BOTH_OOB'

=back




=cut


=head1 SEE ALSO

L<GStreamer>


=cut


=head1 COPYRIGHT

Copyright (C) 2005-2011 by the gtk2-perl team.

This software is licensed under the LGPL.  See L<GStreamer> for a full notice.



=cut

