NAME
SWF::BinStream::Codec - Document for SWF::BinStream codecs.
SYNOPSIS
use SWF::BinStream;
....
$stream->add_codec('Foo');
----
package SWF::BinStream::Codec::Foo;
$VERSION='x.xx';
package SWF::BinStream::Codec::Foo::Read;
sub new {}
sub decode {}
sub close {}
package SWF::BinStream::Codec::Foo::Write;
sub new {}
sub encode {}
sub close {}
1;
DESCRIPTION
SWF::BinStream:Codec::* package provides additive codecs for SWF::BinStream.
The whole package name must be 'SWF::BinStream::Codec::[name]'. SWF::BinStream use the package when its add_codec method is called with the name. Two sub package, 'SWF::BinStream::Codec::[name]::Read' and 'SWF::BinStream::Codec::[name]::Write' should contain the package.
METHODS
The codec class must equip these methods. Each method should die when error occurs.
SWF::BinStream::[name]::Read
- SWF::BinStream::[name]::Read->new;
-
should return a new decoder. It does not take any parameters.
- $codec->decode( $data );
-
is called with the data read from the stream. It should return decoded data.
- $codec->close;
-
is called when the stream is closed. It does not take any parameters.
SWF::BinStream::[name]::Write
- SWF::BinStream::[name]::Write->new;
-
should return a new encoder. It does not take any parameters.
- $codec->encode( $data );
-
is called with the data to write to the stream. It should return encoded data.
- $codec->close( $data );
-
is called when the stream is to be closed. It is called with the rest of bufferred data. It should return encoded data.
COPYRIGHT
Copyright 2002 Yasuhiro Sasama (ySas), <ysas@nmt.ne.jp>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.