TagLib API Documentation
Public Member Functions | Static Public Member Functions | Friends | List of all members
TagLib::Matroska::File Class Reference

An implementation of TagLib::File with Matroska specific methods. More...

#include <matroskafile.h>

Inheritance diagram for TagLib::Matroska::File:
[legend]
Collaboration diagram for TagLib::Matroska::File:
[legend]

Public Member Functions

 File (FileName file, bool readProperties=true, Properties::ReadStyle readStyle=Properties::Average)
 
 File (IOStream *stream, bool readProperties=true, Properties::ReadStyle readStyle=Properties::Average)
 
 ~File () override
 
 File (const File &)=delete
 
Fileoperator= (const File &)=delete
 
TagLib::Tagtag () const override
 
Tagtag (bool create) const
 
PropertyMap properties () const override
 
void removeUnsupportedProperties (const StringList &properties) override
 
PropertyMap setProperties (const PropertyMap &) override
 
StringList complexPropertyKeys () const override
 
List< VariantMapcomplexProperties (const String &key) const override
 
bool setComplexProperties (const String &key, const List< VariantMap > &value) override
 
PropertiesaudioProperties () const override
 
bool save () override
 
Attachmentsattachments (bool create=false) const
 
Chapterschapters (bool create=false) const
 
- Public Member Functions inherited from TagLib::File
 File (const File &)=delete
 
Fileoperator= (const File &)=delete
 
FileName name () const
 
ByteVector readBlock (size_t length)
 
void writeBlock (const ByteVector &data)
 
offset_t find (const ByteVector &pattern, offset_t fromOffset=0, const ByteVector &before=ByteVector())
 
offset_t rfind (const ByteVector &pattern, offset_t fromOffset=0, const ByteVector &before=ByteVector())
 
void insert (const ByteVector &data, offset_t start=0, size_t replace=0)
 
void removeBlock (offset_t start=0, size_t length=0)
 
bool readOnly () const
 
bool isOpen () const
 
bool isValid () const
 
void seek (offset_t offset, Position p=Beginning)
 
void clear ()
 
offset_t tell () const
 
offset_t length ()
 

Static Public Member Functions

static bool isSupported (IOStream *stream)
 

Friends

class Properties
 

Additional Inherited Members

- Public Types inherited from TagLib::File
enum  Position { Beginning , Current , End }
 
enum  StripTags { StripNone , StripOthers }
 
enum  DuplicateTags { Duplicate , DoNotDuplicate }
 
- Protected Member Functions inherited from TagLib::File
 File (FileName fileName)
 
 File (IOStream *stream)
 
void setValid (bool valid)
 
void truncate (offset_t length)
 
- Static Protected Member Functions inherited from TagLib::File
static unsigned int bufferSize ()
 

Detailed Description

An implementation of TagLib::File with Matroska specific methods.

Implementation of TagLib::File for Matroska.

Constructor & Destructor Documentation

◆ File() [1/3]

TagLib::Matroska::File::File ( FileName  file,
bool  readProperties = true,
Properties::ReadStyle  readStyle = Properties::Average 
)
explicit

Constructs a Matroska file from file. If readProperties is true the file's audio properties will also be read.

If readStyle is Accurate all seek head and cues segment positions are verified for the isValid() state of the file.

◆ File() [2/3]

TagLib::Matroska::File::File ( IOStream stream,
bool  readProperties = true,
Properties::ReadStyle  readStyle = Properties::Average 
)
explicit

Constructs a Matroska file from stream. If readProperties is true the file's audio properties will also be read.

If readStyle is Accurate all seek head and cues segment positions are verified for the isValid() state of the file.

◆ ~File()

TagLib::Matroska::File::~File ( )
overridevirtual

Destroys this instance of the File.

Reimplemented from TagLib::File.

◆ File() [3/3]

TagLib::Matroska::File::File ( const File )
delete

Member Function Documentation

◆ attachments()

Attachments * TagLib::Matroska::File::attachments ( bool  create = false) const

Returns a pointer to the attachments of the file.

If create is false this may return a null pointer if there are no attachments. If create is true it will create attachments if none exist and returns a valid pointer.

◆ audioProperties()

Properties * TagLib::Matroska::File::audioProperties ( ) const
overridevirtual

Returns the Matroska::Properties for this file. If no audio properties were read then this will return a null pointer.

Implements TagLib::File.

◆ chapters()

Chapters * TagLib::Matroska::File::chapters ( bool  create = false) const

Returns a pointer to the chapters of the file.

If create is false this may return a null pointer if there are no chapters. If create is true it will create chapters if none exist and returns a valid pointer.

◆ complexProperties()

List< VariantMap > TagLib::Matroska::File::complexProperties ( const String key) const
overridevirtual

Get the pictures stored in the attachments as complex properties for key "PICTURE". Other attached files can be retrieved, by media type, file name or UID. The attached files are returned as maps with keys "data", "mimeType", "description", "fileName, "uid". Binary simple tags can be retrieved as maps with keys "data", "name", "targetTypeValue", "language", "defaultLanguage".

Reimplemented from TagLib::File.

◆ complexPropertyKeys()

StringList TagLib::Matroska::File::complexPropertyKeys ( ) const
overridevirtual

Returns the keys for attached files, "PICTURE" for images, the media type, file name or UID for other attached files. The names of the binary simple tags are included too.

Reimplemented from TagLib::File.

◆ isSupported()

static bool TagLib::Matroska::File::isSupported ( IOStream stream)
static

Returns whether or not the given stream can be opened as a Matroska file.

Note
This method is designed to do a quick check. The result may not necessarily be correct.

◆ operator=()

File & TagLib::Matroska::File::operator= ( const File )
delete

◆ properties()

PropertyMap TagLib::Matroska::File::properties ( ) const
overridevirtual

Implements the reading part of the unified property interface.

Reimplemented from TagLib::File.

◆ removeUnsupportedProperties()

void TagLib::Matroska::File::removeUnsupportedProperties ( const StringList properties)
overridevirtual

Removes unsupported properties, or a subset of them, from the file's metadata. The parameter properties must contain only entries from properties().unsupportedData().

Reimplemented from TagLib::File.

◆ save()

bool TagLib::Matroska::File::save ( )
overridevirtual

Save the file.

This returns true if the save was successful.

Implements TagLib::File.

◆ setComplexProperties()

bool TagLib::Matroska::File::setComplexProperties ( const String key,
const List< VariantMap > &  value 
)
overridevirtual

Set attached files as complex properties value, e.g. pictures for key "PICTURE" with the maps in value having keys "data", "mimeType", "description", "fileName, "uid". For other attached files, the mime type, file name or UID can be used as the \a key. Maps with keys "name" (with the same value as \a key) and "data" are stored as binary simple tags with additional keys "targetTypeValue", "language", "defaultLanguage".

Reimplemented from TagLib::File.

◆ setProperties()

PropertyMap TagLib::Matroska::File::setProperties ( const PropertyMap )
overridevirtual

Implements the writing part of the unified tag dictionary interface.

Reimplemented from TagLib::File.

◆ tag() [1/2]

TagLib::Tag * TagLib::Matroska::File::tag ( ) const
overridevirtual

Returns a pointer to the tag of the file.

It will create a tag if one does not exist and returns a valid pointer.

Note
The tag is still owned by the Matroska::File and should not be deleted by the user. It will be deleted when the file (object) is destroyed.

Implements TagLib::File.

◆ tag() [2/2]

Tag * TagLib::Matroska::File::tag ( bool  create) const

Returns a pointer to the Matroska tag of the file.

If create is false this may return a null pointer if there is no tag. If create is true it will create a tag if one does not exist and returns a valid pointer.

Note
The tag is still owned by the Matroska::File and should not be deleted by the user. It will be deleted when the file (object) destroyed.

Friends And Related Symbol Documentation

◆ Properties


The documentation for this class was generated from the following file: