uniquefileidentifierframe.h
Go to the documentation of this file.
/***************************************************************************
copyright : (C) 2002 - 2008 by Scott Wheeler
email : wheeler@kde.org
***************************************************************************/
/***************************************************************************
* This library is free software; you can redistribute it and/or modify *
* it under the terms of the GNU Lesser General Public License version *
* 2.1 as published by the Free Software Foundation. *
* *
* This library is distributed in the hope that it will be useful, but *
* WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
* Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU Lesser General Public *
* License along with this library; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA *
* 02110-1301 USA *
* *
* Alternatively, this file is available under the Mozilla Public *
* License Version 1.1. You may obtain a copy of the License at *
* http://www.mozilla.org/MPL/ *
***************************************************************************/
#ifndef TAGLIB_UNIQUEFILEIDENTIFIERFRAME
#define TAGLIB_UNIQUEFILEIDENTIFIERFRAME
#include "id3v2frame.h"
namespace TagLib {
namespace ID3v2 {
class TAGLIB_EXPORT UniqueFileIdentifierFrame : public ID3v2::Frame
{
friend class FrameFactory;
public:
UniqueFileIdentifierFrame(const ByteVector &data);
UniqueFileIdentifierFrame(const String &owner, const ByteVector &id);
~UniqueFileIdentifierFrame() override;
UniqueFileIdentifierFrame(const UniqueFileIdentifierFrame &) = delete;
UniqueFileIdentifierFrame &operator=(const UniqueFileIdentifierFrame &) = delete;
String owner() const;
ByteVector identifier() const;
void setOwner(const String &s);
void setIdentifier(const ByteVector &v);
String toString() const override;
PropertyMap asProperties() const override;
static UniqueFileIdentifierFrame *findByOwner(const Tag *tag, const String &o);
protected:
void parseFields(const ByteVector &data) override;
ByteVector renderFields() const override;
private:
UniqueFileIdentifierFrame(const ByteVector &data, Header *h);
class UniqueFileIdentifierFramePrivate;
TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
std::unique_ptr<UniqueFileIdentifierFramePrivate> d;
};
} // namespace ID3v2
} // namespace TagLib
#endif
TagLib::ByteVector
A byte vector.
Definition tbytevector.h:46
TagLib::ID3v2::Frame::Header
ID3v2 frame header implementation.
Definition id3v2frame.h:293
TagLib::ID3v2::Frame
ID3v2 frame implementation.
Definition id3v2frame.h:57
TagLib::ID3v2::Frame::Tag
friend class Tag
Definition id3v2frame.h:58
TagLib::ID3v2::UniqueFileIdentifierFrame::parseFields
void parseFields(const ByteVector &data) override
TagLib::ID3v2::UniqueFileIdentifierFrame::setIdentifier
void setIdentifier(const ByteVector &v)
TagLib::ID3v2::UniqueFileIdentifierFrame::asProperties
PropertyMap asProperties() const override
TagLib::ID3v2::UniqueFileIdentifierFrame::renderFields
ByteVector renderFields() const override
TagLib::ID3v2::UniqueFileIdentifierFrame::UniqueFileIdentifierFrame
UniqueFileIdentifierFrame(const String &owner, const ByteVector &id)
TagLib::ID3v2::UniqueFileIdentifierFrame::UniqueFileIdentifierFrame
UniqueFileIdentifierFrame(const ByteVector &data)
TagLib::ID3v2::UniqueFileIdentifierFrame::owner
String owner() const
TagLib::ID3v2::UniqueFileIdentifierFrame::findByOwner
static UniqueFileIdentifierFrame * findByOwner(const Tag *tag, const String &o)
TagLib::ID3v2::UniqueFileIdentifierFrame::setOwner
void setOwner(const String &s)
TagLib::ID3v2::UniqueFileIdentifierFrame::toString
String toString() const override
TagLib::ID3v2::UniqueFileIdentifierFrame::FrameFactory
friend class FrameFactory
Definition uniquefileidentifierframe.h:45
TagLib::ID3v2::UniqueFileIdentifierFrame::UniqueFileIdentifierFrame
UniqueFileIdentifierFrame(const UniqueFileIdentifierFrame &)=delete
TagLib::ID3v2::UniqueFileIdentifierFrame::identifier
ByteVector identifier() const
TagLib::ID3v2::UniqueFileIdentifierFrame::~UniqueFileIdentifierFrame
~UniqueFileIdentifierFrame() override
TagLib::ID3v2::UniqueFileIdentifierFrame::operator=
UniqueFileIdentifierFrame & operator=(const UniqueFileIdentifierFrame &)=delete
TagLib::PropertyMap
A map for format-independent <key,values> tag representations.
Definition tpropertymap.h:123
TagLib::String
A wide string class suitable for unicode.
Definition tstring.h:83
id3v2frame.h
TagLib::ID3v2
An ID3v2 implementation.
Definition flacfile.h:39
TagLib
A namespace for all TagLib related classes and functions.
Definition apefile.h:41
TAGLIB_EXPORT
#define TAGLIB_EXPORT
Definition taglib_export.h:40
TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition taglib_export.h:55