IT: strings require term. NUL. mod files: tableLength -> lengthInPatterns

Also added enums for S3M/IT/XM flags.
This commit is contained in:
Mathias Panzenböck
2011-06-24 01:11:10 +02:00
parent e71806b6df
commit 9c27c45eb8
15 changed files with 116 additions and 85 deletions

View File

@ -191,7 +191,7 @@ void S3M::File::read(bool)
if(order == 255) break;
if(order != 254) ++ realLength;
}
d->properties.setTableLength(realLength);
d->properties.setLengthInPatterns(realLength);
seek(channels, Current);

View File

@ -28,7 +28,7 @@ class S3M::Properties::PropertiesPrivate
{
public:
PropertiesPrivate() :
tableLength(0),
lengthInPatterns(0),
channels(0),
stereo(false),
sampleCount(0),
@ -43,7 +43,7 @@ public:
{
}
ushort tableLength;
ushort lengthInPatterns;
int channels;
bool stereo;
ushort sampleCount;
@ -88,9 +88,9 @@ int S3M::Properties::channels() const
return d->channels;
}
ushort S3M::Properties::tableLength() const
ushort S3M::Properties::lengthInPatterns() const
{
return d->tableLength;
return d->lengthInPatterns;
}
bool S3M::Properties::stereo() const
@ -143,9 +143,9 @@ uchar S3M::Properties::bpmSpeed() const
return d->bpmSpeed;
}
void S3M::Properties::setTableLength(ushort tableLength)
void S3M::Properties::setLengthInPatterns(ushort lengthInPatterns)
{
d->tableLength = tableLength;
d->lengthInPatterns = lengthInPatterns;
}
void S3M::Properties::setChannels(int channels)

View File

@ -30,6 +30,17 @@ namespace TagLib {
class TAGLIB_EXPORT Properties : public AudioProperties {
friend class File;
public:
/*! Flag bits. */
enum {
F_ST2_VIBRATO = 1,
F_ST2_TEMPO = 2,
F_AMIGA_SLIDES = 4,
F_VOL0_MIX_OPT = 8,
F_AMIGA_LIMITS = 16,
F_ENABLE_FILTER = 32,
F_CUSTOM_DATA = 128
};
Properties(AudioProperties::ReadStyle propertiesStyle);
virtual ~Properties();
@ -38,7 +49,7 @@ namespace TagLib {
int sampleRate() const;
int channels() const;
ushort tableLength() const;
ushort lengthInPatterns() const;
bool stereo() const;
ushort sampleCount() const;
ushort patternCount() const;
@ -51,9 +62,9 @@ namespace TagLib {
uchar bpmSpeed() const;
protected:
void setTableLength(ushort tableLength);
void setChannels(int channels);
void setLengthInPatterns (ushort lengthInPatterns);
void setStereo (bool stereo);
void setSampleCount (ushort sampleCount);
void setPatternCount (ushort patternCount);