![]() |
|
An implementation of TagLib::File with TrueAudio specific methods. More...
#include <trueaudiofile.h>
Public Types | |
enum | TagTypes { NoTags = 0x0000, ID3v1 = 0x0001, ID3v2 = 0x0002, AllTags = 0xffff } |
![]() | |
enum | Position { Beginning, Current, End } |
Public Member Functions | |
File (FileName file, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
File (FileName file, ID3v2::FrameFactory *frameFactory, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
File (IOStream *stream, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
File (IOStream *stream, ID3v2::FrameFactory *frameFactory, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
virtual | ~File () |
virtual TagLib::Tag * | tag () const |
PropertyMap | properties () const |
PropertyMap | setProperties (const PropertyMap &) |
void | removeUnsupportedProperties (const StringList &properties) |
virtual Properties * | audioProperties () const |
void | setID3v2FrameFactory (const ID3v2::FrameFactory *factory) |
virtual bool | save () |
ID3v1::Tag * | ID3v1Tag (bool create=false) |
ID3v2::Tag * | ID3v2Tag (bool create=false) |
void | strip (int tags=AllTags) |
bool | hasID3v1Tag () const |
bool | hasID3v2Tag () const |
![]() | |
FileName | name () const |
ByteVector | readBlock (ulong length) |
void | writeBlock (const ByteVector &data) |
long | find (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector::null) |
long | rfind (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector::null) |
void | insert (const ByteVector &data, ulong start=0, ulong replace=0) |
void | removeBlock (ulong start=0, ulong length=0) |
bool | readOnly () const |
bool | isOpen () const |
bool | isValid () const |
void | seek (long offset, Position p=Beginning) |
void | clear () |
long | tell () const |
long | length () |
Additional Inherited Members | |
![]() | |
static bool | isReadable (const char *file) |
static bool | isWritable (const char *name) |
![]() | |
File (FileName file) | |
File (IOStream *stream) | |
void | setValid (bool valid) |
void | truncate (long length) |
![]() | |
static uint | bufferSize () |
An implementation of TagLib::File with TrueAudio specific methods.
This implements and provides an interface for TrueAudio files to the TagLib::Tag and TagLib::AudioProperties interfaces by way of implementing the abstract TagLib::File API as well as providing some additional information specific to TrueAudio files.
TagLib::TrueAudio::File::File | ( | FileName | file, |
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
Constructs a TrueAudio file from file. If readProperties is true the file's audio properties will also be read.
TagLib::TrueAudio::File::File | ( | FileName | file, |
ID3v2::FrameFactory * | frameFactory, | ||
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
TagLib::TrueAudio::File::File | ( | IOStream * | stream, |
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
TagLib::TrueAudio::File::File | ( | IOStream * | stream, |
ID3v2::FrameFactory * | frameFactory, | ||
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
Constructs a TrueAudio file from stream. If readProperties is true the file's audio properties will also be read.
If this file contains and ID3v2 tag the frames will be created using frameFactory.
|
virtual |
Destroys this instance of the File.
Reimplemented from TagLib::File.
|
virtual |
Returns the TrueAudio::Properties for this file. If no audio properties were read then this will return a null pointer.
Implements TagLib::File.
bool TagLib::TrueAudio::File::hasID3v1Tag | ( | ) | const |
Returns whether or not the file on disk actually has an ID3v1 tag.
bool TagLib::TrueAudio::File::hasID3v2Tag | ( | ) | const |
Returns whether or not the file on disk actually has an ID3v2 tag.
ID3v1::Tag* TagLib::TrueAudio::File::ID3v1Tag | ( | bool | create = false | ) |
Returns a pointer to the ID3v1 tag of the file.
If create is false (the default) this may return a null pointer if there is no valid ID3v1 tag. If create is true it will create an ID3v1 tag if one does not exist and returns a valid pointer.
ID3v2::Tag* TagLib::TrueAudio::File::ID3v2Tag | ( | bool | create = false | ) |
Returns a pointer to the ID3v2 tag of the file.
If create is false (the default) this may return a null pointer if there is no valid ID3v2 tag. If create is true it will create an ID3v2 tag if one does not exist and returns a valid pointer.
PropertyMap TagLib::TrueAudio::File::properties | ( | ) | const |
Implements the unified property interface – export function. If the file contains both ID3v1 and v2 tags, only ID3v2 will be converted to the PropertyMap.
Reimplemented from TagLib::File.
void TagLib::TrueAudio::File::removeUnsupportedProperties | ( | const StringList & | properties | ) |
Removes unsupported properties, or a subset of them, from the file's metadata. The parameter properties must contain only entries from properties().unsupportedData(). BIC: Will be mad virtual in future releases.
Reimplemented from TagLib::File.
|
virtual |
Saves the file.
Implements TagLib::File.
void TagLib::TrueAudio::File::setID3v2FrameFactory | ( | const ID3v2::FrameFactory * | factory | ) |
Set the ID3v2::FrameFactory to something other than the default.
PropertyMap TagLib::TrueAudio::File::setProperties | ( | const PropertyMap & | ) |
Implements the unified property interface – import function. Creates in ID3v2 tag if necessary. If an ID3v1 tag exists, it will be updated as well, within the limitations of ID3v1.
Reimplemented from TagLib::File.
void TagLib::TrueAudio::File::strip | ( | int | tags = AllTags | ) |
This will remove the tags that match the OR-ed together TagTypes from the file. By default it removes all tags.
|
virtual |
Returns the Tag for this file.
Implements TagLib::File.