TagLib API Documentation
tbytevectorlist.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_BYTEVECTORLIST_H
27#define TAGLIB_BYTEVECTORLIST_H
28
29#include "tbytevector.h"
30#include "tlist.h"
31#include "taglib_export.h"
32
33namespace TagLib {
34
36
41 class ByteVectorList : public List<ByteVector>
42 {
43 public:
44
50
56
64
69 ByteVectorList(std::initializer_list<ByteVector> init);
70
74 ByteVectorList &operator=(std::initializer_list<ByteVector> init);
75
81 ByteVector toByteVector(const ByteVector &separator = " ") const;
82
91 static ByteVectorList split(const ByteVector &v, const ByteVector &pattern,
92 int byteAlign = 1, int max = 0);
93 private:
94 class ByteVectorListPrivate;
95 std::unique_ptr<ByteVectorListPrivate> d;
96 };
97
98} // namespace TagLib
99
104std::ostream TAGLIB_EXPORT &operator<<(std::ostream &s, const TagLib::ByteVectorList &l);
105
106#endif
A list of ByteVectors.
Definition: tbytevectorlist.h:42
TAGLIB_EXPORT ByteVectorList & operator=(const ByteVectorList &)
static TAGLIB_EXPORT ByteVectorList split(const ByteVector &v, const ByteVector &pattern, int byteAlign=1, int max=0)
std::ostream TAGLIB_EXPORT & operator<<(std::ostream &s, const TagLib::ByteVectorList &l)
TAGLIB_EXPORT ByteVectorList(std::initializer_list< ByteVector > init)
TAGLIB_EXPORT ~ByteVectorList()
TAGLIB_EXPORT ByteVectorList(const ByteVectorList &l)
TAGLIB_EXPORT ByteVector toByteVector(const ByteVector &separator=" ") const
TAGLIB_EXPORT ByteVectorList & operator=(std::initializer_list< ByteVector > init)
TAGLIB_EXPORT ByteVectorList()
A byte vector.
Definition: tbytevector.h:46
A generic, implicitly shared list.
Definition: tlist.h:54
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
#define TAGLIB_EXPORT
Definition: taglib_export.h:40