TagLib API Documentation
source
taglib
mpeg
id3v2
id3v2header.h
Go to the documentation of this file.
1
/***************************************************************************
2
copyright : (C) 2002 - 2008 by Scott Wheeler
3
email : wheeler@kde.org
4
***************************************************************************/
5
6
/***************************************************************************
7
* This library is free software; you can redistribute it and/or modify *
8
* it under the terms of the GNU Lesser General Public License version *
9
* 2.1 as published by the Free Software Foundation. *
10
* *
11
* This library is distributed in the hope that it will be useful, but *
12
* WITHOUT ANY WARRANTY; without even the implied warranty of *
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
14
* Lesser General Public License for more details. *
15
* *
16
* You should have received a copy of the GNU Lesser General Public *
17
* License along with this library; if not, write to the Free Software *
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA *
19
* 02110-1301 USA *
20
* *
21
* Alternatively, this file is available under the Mozilla Public *
22
* License Version 1.1. You may obtain a copy of the License at *
23
* http://www.mozilla.org/MPL/ *
24
***************************************************************************/
25
26
#ifndef TAGLIB_ID3V2HEADER_H
27
#define TAGLIB_ID3V2HEADER_H
28
29
#include "
tbytevector.h
"
30
#include "
taglib_export.h
"
31
32
namespace
TagLib
{
33
34
namespace
ID3v2 {
35
37
48
class
TAGLIB_EXPORT
Header
49
{
50
public
:
54
Header
();
55
60
Header
(
const
ByteVector
&data);
61
65
~Header
();
66
67
Header
(
const
Header
&) =
delete
;
68
Header
&
operator=
(
const
Header
&) =
delete
;
69
74
unsigned
int
majorVersion
()
const
;
75
85
void
setMajorVersion
(
unsigned
int
version);
86
91
unsigned
int
revisionNumber
()
const
;
92
96
bool
unsynchronisation
()
const
;
97
101
bool
extendedHeader
()
const
;
102
106
bool
experimentalIndicator
()
const
;
107
111
bool
footerPresent
()
const
;
123
unsigned
int
tagSize
()
const
;
124
131
unsigned
int
completeTagSize
()
const
;
132
137
void
setTagSize
(
unsigned
int
s);
138
142
static
unsigned
int
size
();
143
148
static
ByteVector
fileIdentifier
();
149
154
void
setData
(
const
ByteVector
&data);
155
159
ByteVector
render
()
const
;
160
161
protected
:
166
void
parse
(
const
ByteVector
&data);
167
168
private
:
169
class
HeaderPrivate;
170
TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
171
std::unique_ptr<HeaderPrivate> d;
172
};
173
174
}
// namespace ID3v2
175
}
// namespace TagLib
176
177
#endif
TagLib::ByteVector
A byte vector.
Definition
tbytevector.h:46
TagLib::ID3v2::Header
An implementation of ID3v2 headers.
Definition
id3v2header.h:49
TagLib::ID3v2::Header::unsynchronisation
bool unsynchronisation() const
TagLib::ID3v2::Header::~Header
~Header()
TagLib::ID3v2::Header::Header
Header(const ByteVector &data)
TagLib::ID3v2::Header::completeTagSize
unsigned int completeTagSize() const
TagLib::ID3v2::Header::operator=
Header & operator=(const Header &)=delete
TagLib::ID3v2::Header::experimentalIndicator
bool experimentalIndicator() const
TagLib::ID3v2::Header::revisionNumber
unsigned int revisionNumber() const
TagLib::ID3v2::Header::parse
void parse(const ByteVector &data)
TagLib::ID3v2::Header::footerPresent
bool footerPresent() const
TagLib::ID3v2::Header::fileIdentifier
static ByteVector fileIdentifier()
TagLib::ID3v2::Header::render
ByteVector render() const
TagLib::ID3v2::Header::extendedHeader
bool extendedHeader() const
TagLib::ID3v2::Header::setData
void setData(const ByteVector &data)
TagLib::ID3v2::Header::size
static unsigned int size()
TagLib::ID3v2::Header::setTagSize
void setTagSize(unsigned int s)
TagLib::ID3v2::Header::Header
Header(const Header &)=delete
TagLib::ID3v2::Header::tagSize
unsigned int tagSize() const
TagLib::ID3v2::Header::majorVersion
unsigned int majorVersion() const
TagLib::ID3v2::Header::setMajorVersion
void setMajorVersion(unsigned int version)
TagLib::ID3v2::Header::Header
Header()
TagLib
A namespace for all TagLib related classes and functions.
Definition
apefile.h:41
taglib_export.h
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
tbytevector.h