Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef TAGLIB_XMPROPERTIES_H
00023 #define TAGLIB_XMPROPERTIES_H
00024
00025 #include "taglib.h"
00026 #include "tstring.h"
00027 #include "audioproperties.h"
00028
00029 namespace TagLib {
00030 namespace XM {
00031 class TAGLIB_EXPORT Properties : public AudioProperties {
00032 friend class File;
00033 public:
00035 enum {
00036 LinearFreqTable = 1
00037 };
00038
00039 Properties(AudioProperties::ReadStyle propertiesStyle);
00040 virtual ~Properties();
00041
00042 int length() const;
00043 int lengthInSeconds() const;
00044 int lengthInMilliseconds() const;
00045 int bitrate() const;
00046 int sampleRate() const;
00047 int channels() const;
00048
00049 ushort lengthInPatterns() const;
00050 ushort version() const;
00051 ushort restartPosition() const;
00052 ushort patternCount() const;
00053 ushort instrumentCount() const;
00054 uint sampleCount() const;
00055 ushort flags() const;
00056 ushort tempo() const;
00057 ushort bpmSpeed() const;
00058
00059 void setChannels(int channels);
00060
00061 void setLengthInPatterns(ushort lengthInPatterns);
00062 void setVersion(ushort version);
00063 void setRestartPosition(ushort restartPosition);
00064 void setPatternCount(ushort patternCount);
00065 void setInstrumentCount(ushort instrumentCount);
00066 void setSampleCount(uint sampleCount);
00067 void setFlags(ushort flags);
00068 void setTempo(ushort tempo);
00069 void setBpmSpeed(ushort bpmSpeed);
00070
00071 private:
00072 Properties(const Properties&);
00073 Properties &operator=(const Properties&);
00074
00075 class PropertiesPrivate;
00076 PropertiesPrivate *d;
00077 };
00078 }
00079 }
00080
00081 #endif