TagLib API Documentation
ebmlvoidelement.h
Go to the documentation of this file.
1/***************************************************************************
2 * This library is free software; you can redistribute it and/or modify *
3 * it under the terms of the GNU Lesser General Public License version *
4 * 2.1 as published by the Free Software Foundation. *
5 * *
6 * This library is distributed in the hope that it will be useful, but *
7 * WITHOUT ANY WARRANTY; without even the implied warranty of *
8 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
9 * Lesser General Public License for more details. *
10 * *
11 * You should have received a copy of the GNU Lesser General Public *
12 * License along with this library; if not, write to the Free Software *
13 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA *
14 * 02110-1301 USA *
15 * *
16 * Alternatively, this file is available under the Mozilla Public *
17 * License Version 1.1. You may obtain a copy of the License at *
18 * http://www.mozilla.org/MPL/ *
19 ***************************************************************************/
20
21#ifndef TAGLIB_EBMLVOIDELEMENT_H
22#define TAGLIB_EBMLVOIDELEMENT_H
23#ifndef DO_NOT_DOCUMENT
24
25#include "ebmlelement.h"
26
27namespace TagLib {
28 class File;
29
30 namespace EBML {
31 inline constexpr offset_t MIN_VOID_ELEMENT_SIZE = 2;
32 class VoidElement : public Element
33 {
34 public:
35 VoidElement(int sizeLength, offset_t dataSize);
36 VoidElement(Id, int sizeLength, offset_t dataSize, offset_t);
37 VoidElement();
38
39 ByteVector render() override;
40 offset_t getTargetSize() const;
41 void setTargetSize(offset_t size);
42 static ByteVector renderSize(offset_t targetSize);
43
44 private:
45 offset_t targetSize = MIN_VOID_ELEMENT_SIZE;
46 };
47 }
48}
49
50#endif
51#endif
A namespace for all TagLib related classes and functions.
Definition apefile.h:41
off_t offset_t
Definition taglib.h:64