The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Audio::TagLib::APE::Item - An implementation of APE-items

SYNOPSIS

  use Audio::TagLib::APE::Item;
  
  my $key   = Audio::TagLib::String->new("key");
  my $value = Audio::TagLib::String->new("value");
  my $i     = Audio::TagLib::APE::Item->new($key, $value);
  $i->setType("Text");
  $i->setReadOnly(1) unless $i->isReadOnly();
  my $data  = $i->render();

DESCRIPTION

This class provides the features of items in the APEv2 standard.

new()

Constructs an empty item.

new(String $key, String $value)

Constructs an item with $key and $value.

new(String $key, StringList $values)

Constructs an item with $key and $values.

new(Item $item)

Construct an item as a copy of $item.

DESTROY()

Destroys the item.

copy(Item $item)

Copies the contents of $item into this item.

String key()

Returns the key.

ByteVector value()

Returns the binary value.

IV size()

Returns the size of the full item.

String toString()

Returns the value as a single string. In case of multiple strings, the first is returned.

StringList toStringList()

Returns the value as a string list.

ByteVector render()

Render the item to a ByteVector.

void parse(ByteVector $data)

Parse the item from the ByteVector $data.

void setReadOnly(BOOL $b)

Set the item to read-only.

BOOL isReadOnly()
 Return true if the item is read-only.
void setType(PV $type)

Sets the type of the item to $type.

see %_ItemTypes

PV type()

Returns the type of the item.

see %_ItemTypes

BOOL isEmpty()

Returns if the item has any real content.

%_ItemTypes

keys %Audio::TagLib::APE::Item::_ItemTypes lists all available itemtypes used in Perl.

see setType

EXPORT

None by default.

SEE ALSO

Audio::TagLib

AUTHOR

Dongxu Ma, <dongxu@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2005 by Dongxu Ma

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.