From a6701ddcdab3f21ed05961827673b991581b1547 Mon Sep 17 00:00:00 2001 From: Tsuda Kageyu Date: Mon, 30 Nov 2015 15:43:18 +0900 Subject: [PATCH] Remove some private data members not needed to belong to private classes. --- taglib/mpeg/id3v1/id3v1tag.cpp | 45 +++++++++++++++++----------------- taglib/mpeg/id3v2/id3v2tag.cpp | 26 +++++++++----------- taglib/riff/wav/infotag.cpp | 36 ++++++++++++--------------- 3 files changed, 50 insertions(+), 57 deletions(-) diff --git a/taglib/mpeg/id3v1/id3v1tag.cpp b/taglib/mpeg/id3v1/id3v1tag.cpp index 4a7d50d6..dd32326f 100644 --- a/taglib/mpeg/id3v1/id3v1tag.cpp +++ b/taglib/mpeg/id3v1/id3v1tag.cpp @@ -32,6 +32,12 @@ using namespace TagLib; using namespace ID3v1; +namespace +{ + const ID3v1::StringHandler defaultStringHandler; + const ID3v1::StringHandler *stringHandler = &defaultStringHandler; +} + class ID3v1::Tag::TagPrivate { public: @@ -46,13 +52,8 @@ public: String comment; uchar track; uchar genre; - - static const StringHandler *stringHandler; }; -static const StringHandler defaultStringHandler; -const ID3v1::StringHandler *ID3v1::Tag::TagPrivate::stringHandler = &defaultStringHandler; - //////////////////////////////////////////////////////////////////////////////// // StringHandler implementation //////////////////////////////////////////////////////////////////////////////// @@ -68,12 +69,10 @@ String ID3v1::StringHandler::parse(const ByteVector &data) const ByteVector ID3v1::StringHandler::render(const String &s) const { - if(!s.isLatin1()) - { + if(s.isLatin1()) + return s.data(String::Latin1); + else return ByteVector(); - } - - return s.data(String::Latin1); } //////////////////////////////////////////////////////////////////////////////// @@ -103,11 +102,11 @@ ByteVector ID3v1::Tag::render() const ByteVector data; data.append(fileIdentifier()); - data.append(TagPrivate::stringHandler->render(d->title).resize(30)); - data.append(TagPrivate::stringHandler->render(d->artist).resize(30)); - data.append(TagPrivate::stringHandler->render(d->album).resize(30)); - data.append(TagPrivate::stringHandler->render(d->year).resize(4)); - data.append(TagPrivate::stringHandler->render(d->comment).resize(28)); + data.append(stringHandler->render(d->title).resize(30)); + data.append(stringHandler->render(d->artist).resize(30)); + data.append(stringHandler->render(d->album).resize(30)); + data.append(stringHandler->render(d->year).resize(4)); + data.append(stringHandler->render(d->comment).resize(28)); data.append(char(0)); data.append(char(d->track)); data.append(char(d->genre)); @@ -202,10 +201,10 @@ void ID3v1::Tag::setGenreNumber(TagLib::uint i) void ID3v1::Tag::setStringHandler(const StringHandler *handler) { - if (handler) - TagPrivate::stringHandler = handler; + if(handler) + stringHandler = handler; else - TagPrivate::stringHandler = &defaultStringHandler; + stringHandler = &defaultStringHandler; } //////////////////////////////////////////////////////////////////////////////// @@ -231,16 +230,16 @@ void ID3v1::Tag::parse(const ByteVector &data) { int offset = 3; - d->title = TagPrivate::stringHandler->parse(data.mid(offset, 30)); + d->title = stringHandler->parse(data.mid(offset, 30)); offset += 30; - d->artist = TagPrivate::stringHandler->parse(data.mid(offset, 30)); + d->artist = stringHandler->parse(data.mid(offset, 30)); offset += 30; - d->album = TagPrivate::stringHandler->parse(data.mid(offset, 30)); + d->album = stringHandler->parse(data.mid(offset, 30)); offset += 30; - d->year = TagPrivate::stringHandler->parse(data.mid(offset, 4)); + d->year = stringHandler->parse(data.mid(offset, 4)); offset += 4; // Check for ID3v1.1 -- Note that ID3v1 *does not* support "track zero" -- this @@ -251,7 +250,7 @@ void ID3v1::Tag::parse(const ByteVector &data) if(data[offset + 28] == 0 && data[offset + 29] != 0) { // ID3v1.1 detected - d->comment = TagPrivate::stringHandler->parse(data.mid(offset, 28)); + d->comment = stringHandler->parse(data.mid(offset, 28)); d->track = uchar(data[offset + 29]); } else diff --git a/taglib/mpeg/id3v2/id3v2tag.cpp b/taglib/mpeg/id3v2/id3v2tag.cpp index 636d9eb2..ac1bd66c 100644 --- a/taglib/mpeg/id3v2/id3v2tag.cpp +++ b/taglib/mpeg/id3v2/id3v2tag.cpp @@ -51,6 +51,15 @@ using namespace TagLib; using namespace ID3v2; +namespace +{ + const ID3v2::Latin1StringHandler defaultStringHandler; + const ID3v2::Latin1StringHandler *stringHandler = &defaultStringHandler; + + const long MinPaddingSize = 1024; + const long MaxPaddingSize = 1024 * 1024; +} + class ID3v2::Tag::TagPrivate { public: @@ -77,19 +86,8 @@ public: FrameListMap frameListMap; FrameList frameList; - - static const Latin1StringHandler *stringHandler; }; -static const Latin1StringHandler defaultStringHandler; -const ID3v2::Latin1StringHandler *ID3v2::Tag::TagPrivate::stringHandler = &defaultStringHandler; - -namespace -{ - const long MinPaddingSize = 1024; - const long MaxPaddingSize = 1024 * 1024; -} - //////////////////////////////////////////////////////////////////////////////// // StringHandler implementation //////////////////////////////////////////////////////////////////////////////// @@ -648,15 +646,15 @@ ByteVector ID3v2::Tag::render(int version) const Latin1StringHandler const *ID3v2::Tag::latin1StringHandler() { - return TagPrivate::stringHandler; + return stringHandler; } void ID3v2::Tag::setLatin1StringHandler(const Latin1StringHandler *handler) { if(handler) - TagPrivate::stringHandler = handler; + stringHandler = handler; else - TagPrivate::stringHandler = &defaultStringHandler; + stringHandler = &defaultStringHandler; } //////////////////////////////////////////////////////////////////////////////// diff --git a/taglib/riff/wav/infotag.cpp b/taglib/riff/wav/infotag.cpp index 050ff37c..dbd9395e 100644 --- a/taglib/riff/wav/infotag.cpp +++ b/taglib/riff/wav/infotag.cpp @@ -31,8 +31,9 @@ using namespace TagLib; using namespace RIFF::Info; -namespace { - static bool isValidChunkID(const ByteVector &name) +namespace +{ + inline bool isValidChunkID(const ByteVector &name) { if(name.size() != 4) return false; @@ -44,17 +45,15 @@ namespace { return true; } + + const RIFF::Info::StringHandler defaultStringHandler; + const RIFF::Info::StringHandler *stringHandler = &defaultStringHandler; } class RIFF::Info::Tag::TagPrivate { public: - TagPrivate() - {} - FieldListMap fieldListMap; - - static const StringHandler *stringHandler; }; //////////////////////////////////////////////////////////////////////////////// @@ -83,19 +82,16 @@ ByteVector RIFF::Info::StringHandler::render(const String &s) const // public members //////////////////////////////////////////////////////////////////////////////// -static const StringHandler defaultStringHandler; -const RIFF::Info::StringHandler *RIFF::Info::Tag::TagPrivate::stringHandler = &defaultStringHandler; - -RIFF::Info::Tag::Tag(const ByteVector &data) - : TagLib::Tag() - , d(new TagPrivate()) +RIFF::Info::Tag::Tag(const ByteVector &data) : + TagLib::Tag(), + d(new TagPrivate()) { parse(data); } -RIFF::Info::Tag::Tag() - : TagLib::Tag() - , d(new TagPrivate()) +RIFF::Info::Tag::Tag() : + TagLib::Tag(), + d(new TagPrivate()) { } @@ -222,7 +218,7 @@ ByteVector RIFF::Info::Tag::render() const FieldListMap::ConstIterator it = d->fieldListMap.begin(); for(; it != d->fieldListMap.end(); ++it) { - ByteVector text = TagPrivate::stringHandler->render(it->second); + ByteVector text = stringHandler->render(it->second); if(text.isEmpty()) continue; @@ -244,9 +240,9 @@ ByteVector RIFF::Info::Tag::render() const void RIFF::Info::Tag::setStringHandler(const StringHandler *handler) { if(handler) - TagPrivate::stringHandler = handler; + stringHandler = handler; else - TagPrivate::stringHandler = &defaultStringHandler; + stringHandler = &defaultStringHandler; } //////////////////////////////////////////////////////////////////////////////// @@ -263,7 +259,7 @@ void RIFF::Info::Tag::parse(const ByteVector &data) const ByteVector id = data.mid(p, 4); if(isValidChunkID(id)) { - const String text = TagPrivate::stringHandler->parse(data.mid(p + 8, size)); + const String text = stringHandler->parse(data.mid(p + 8, size)); d->fieldListMap[id] = text; }