1 | /*************************************************************************** |
2 | copyright : (C) 2011 by Mathias Panzenböck |
3 | email : grosser.meister.morti@gmx.net |
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, * |
19 | * MA 02110-1301 USA * |
20 | ***************************************************************************/ |
21 | |
22 | #ifndef TAGLIB_MODPROPERTIES_H |
23 | #define TAGLIB_MODPROPERTIES_H |
24 | |
25 | #include "taglib.h" |
26 | #include "audioproperties.h" |
27 | |
28 | namespace TagLib { |
29 | |
30 | namespace Mod { |
31 | |
32 | class TAGLIB_EXPORT Properties : public AudioProperties |
33 | { |
34 | public: |
35 | Properties(AudioProperties::ReadStyle propertiesStyle); |
36 | virtual ~Properties(); |
37 | |
38 | int length() const; |
39 | int bitrate() const; |
40 | int sampleRate() const; |
41 | int channels() const; |
42 | |
43 | uint instrumentCount() const; |
44 | uchar lengthInPatterns() const; |
45 | |
46 | void setChannels(int channels); |
47 | |
48 | void setInstrumentCount(uint sampleCount); |
49 | void setLengthInPatterns(uchar lengthInPatterns); |
50 | |
51 | private: |
52 | friend class File; |
53 | |
54 | Properties(const Properties&); |
55 | Properties &operator=(const Properties&); |
56 | |
57 | class PropertiesPrivate; |
58 | PropertiesPrivate *d; |
59 | }; |
60 | |
61 | } |
62 | |
63 | } |
64 | |
65 | #endif |
66 | |