TagLib API Documentation
dsdiffproperties.h
Go to the documentation of this file.
1/***************************************************************************
2 copyright : (C) 2016 by Damien Plisson, Audirvana
3 email : damien78@audirvana.com
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_DSDIFFPROPERTIES_H
27#define TAGLIB_DSDIFFPROPERTIES_H
28
29#include "audioproperties.h"
30
31namespace TagLib {
32
33 namespace DSDIFF {
34
35 class File;
36
38
45 {
46 public:
51 Properties(unsigned int sampleRate, unsigned short channels,
52 unsigned long long samplesCount, int bitrate,
53 ReadStyle style);
54
58 ~Properties() override;
59
60 // Reimplementations.
61
62 int lengthInSeconds() const override;
63 int lengthInMilliseconds() const override;
64 int bitrate() const override;
65 int sampleRate() const override;
66 int channels() const override;
67
68 int bitsPerSample() const;
69 long long sampleCount() const;
70
71 private:
72 class PropertiesPrivate;
74 std::unique_ptr<PropertiesPrivate> d;
75 };
76 } // namespace DSDIFF
77} // namespace TagLib
78
79#endif
A simple, abstract interface to common audio properties.
Definition: audioproperties.h:46
ReadStyle
Definition: audioproperties.h:56
An implementation of audio property reading for DSDIFF.
Definition: dsdiffproperties.h:45
int lengthInMilliseconds() const override
int bitrate() const override
int lengthInSeconds() const override
long long sampleCount() const
int sampleRate() const override
int channels() const override
Properties(unsigned int sampleRate, unsigned short channels, unsigned long long samplesCount, int bitrate, ReadStyle style)
A namespace for all TagLib related classes and functions.
Definition: apefile.h:41
#define TAGLIB_EXPORT
Definition: taglib_export.h:40
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition: taglib_export.h:55