diff --git a/taglib/ape/apefooter.h b/taglib/ape/apefooter.h index e6555d42..95091d7e 100644 --- a/taglib/ape/apefooter.h +++ b/taglib/ape/apefooter.h @@ -23,6 +23,7 @@ #define TAGLIB_APEFOOTER_H #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -37,7 +38,7 @@ namespace TagLib { * headers specified there. */ - class Footer + class TAGLIB_EXPORT Footer { public: /*! diff --git a/taglib/ape/apetag.h b/taglib/ape/apetag.h index 20282bf5..cd4810cc 100644 --- a/taglib/ape/apetag.h +++ b/taglib/ape/apetag.h @@ -26,6 +26,7 @@ #include "tbytevector.h" #include "tmap.h" #include "tstring.h" +#include "taglib_export.h" #include "apeitem.h" @@ -49,7 +50,7 @@ namespace TagLib { //! An APE tag implementation - class Tag : public TagLib::Tag + class TAGLIB_EXPORT Tag : public TagLib::Tag { public: /*! diff --git a/taglib/mpeg/id3v1/id3v1genres.h b/taglib/mpeg/id3v1/id3v1genres.h index 7846c895..c487abbd 100644 --- a/taglib/mpeg/id3v1/id3v1genres.h +++ b/taglib/mpeg/id3v1/id3v1genres.h @@ -24,6 +24,7 @@ #include "tmap.h" #include "tstringlist.h" +#include "taglib_export.h" namespace TagLib { namespace ID3v1 { @@ -34,7 +35,7 @@ namespace TagLib { * Returns the list of canonical ID3v1 genre names in the order that they * are listed in the standard. */ - StringList genreList(); + StringList TAGLIB_EXPORT genreList(); /*! * A "reverse mapping" that goes from the canonical ID3v1 genre name to the diff --git a/taglib/mpeg/id3v1/id3v1tag.h b/taglib/mpeg/id3v1/id3v1tag.h index 0b238bdd..9046232a 100644 --- a/taglib/mpeg/id3v1/id3v1tag.h +++ b/taglib/mpeg/id3v1/id3v1tag.h @@ -24,6 +24,7 @@ #include "tag.h" #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -92,7 +93,7 @@ namespace TagLib { * truncation happens automatically when the tag is rendered. */ - class Tag : public TagLib::Tag + class TAGLIB_EXPORT Tag : public TagLib::Tag { public: /*! diff --git a/taglib/mpeg/id3v2/frames/attachedpictureframe.h b/taglib/mpeg/id3v2/frames/attachedpictureframe.h index 2cb2444f..ffafacf3 100644 --- a/taglib/mpeg/id3v2/frames/attachedpictureframe.h +++ b/taglib/mpeg/id3v2/frames/attachedpictureframe.h @@ -24,6 +24,7 @@ #include #include +#include "taglib_export.h" namespace TagLib { @@ -38,7 +39,7 @@ namespace TagLib { * PNG format. */ - class AttachedPictureFrame : public Frame + class TAGLIB_EXPORT AttachedPictureFrame : public Frame { friend class FrameFactory; diff --git a/taglib/mpeg/id3v2/frames/textidentificationframe.h b/taglib/mpeg/id3v2/frames/textidentificationframe.h index 051575f4..0a19e172 100644 --- a/taglib/mpeg/id3v2/frames/textidentificationframe.h +++ b/taglib/mpeg/id3v2/frames/textidentificationframe.h @@ -23,6 +23,7 @@ #define TAGLIB_TEXTIDENTIFICATIONFRAME_H #include +#include "taglib_export.h" #include @@ -92,7 +93,7 @@ namespace TagLib { * be used to determine the frame type. */ - class TextIdentificationFrame : public Frame + class TAGLIB_EXPORT TextIdentificationFrame : public Frame { friend class FrameFactory; diff --git a/taglib/mpeg/id3v2/id3v2frame.h b/taglib/mpeg/id3v2/id3v2frame.h index d1ebf204..97960b0a 100644 --- a/taglib/mpeg/id3v2/id3v2frame.h +++ b/taglib/mpeg/id3v2/id3v2frame.h @@ -24,6 +24,7 @@ #include "tstring.h" #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -43,7 +44,7 @@ namespace TagLib { * specific to a given frame type is handed in one of the many subclasses. */ - class Frame + class TAGLIB_EXPORT Frame { friend class Tag; friend class FrameFactory; diff --git a/taglib/mpeg/id3v2/id3v2framefactory.h b/taglib/mpeg/id3v2/id3v2framefactory.h index c83c358a..8e5529a5 100644 --- a/taglib/mpeg/id3v2/id3v2framefactory.h +++ b/taglib/mpeg/id3v2/id3v2framefactory.h @@ -25,12 +25,13 @@ #include "taglib_export.h" #include "tbytevector.h" #include "id3v2frame.h" +#include "taglib_export.h" namespace TagLib { namespace ID3v2 { - class TextIdentificationFrame; + class TAGLIB_EXPORT TextIdentificationFrame; //! A factory for creating ID3v2 frames diff --git a/taglib/mpeg/id3v2/id3v2header.h b/taglib/mpeg/id3v2/id3v2header.h index d8799888..76192bd3 100644 --- a/taglib/mpeg/id3v2/id3v2header.h +++ b/taglib/mpeg/id3v2/id3v2header.h @@ -23,6 +23,7 @@ #define TAGLIB_ID3V2HEADER_H #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -39,7 +40,7 @@ namespace TagLib { * (Structure, 3.1) */ - class Header + class TAGLIB_EXPORT Header { public: /*! diff --git a/taglib/mpeg/id3v2/id3v2tag.h b/taglib/mpeg/id3v2/id3v2tag.h index 8e841112..c9727341 100644 --- a/taglib/mpeg/id3v2/id3v2tag.h +++ b/taglib/mpeg/id3v2/id3v2tag.h @@ -27,6 +27,7 @@ #include "tstring.h" #include "tlist.h" #include "tmap.h" +#include "taglib_export.h" #include "id3v2framefactory.h" @@ -97,7 +98,7 @@ namespace TagLib { * working knowledge of ID3v2 structure. You're been warned. */ - class Tag : public TagLib::Tag + class TAGLIB_EXPORT Tag : public TagLib::Tag { public: /*! diff --git a/taglib/ogg/oggpageheader.h b/taglib/ogg/oggpageheader.h index 2a994d16..dbbc6b2e 100644 --- a/taglib/ogg/oggpageheader.h +++ b/taglib/ogg/oggpageheader.h @@ -24,6 +24,7 @@ #include "tlist.h" #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -39,7 +40,7 @@ namespace TagLib { * to the codecs. */ - class PageHeader + class TAGLIB_EXPORT PageHeader { public: /*! diff --git a/taglib/ogg/xiphcomment.h b/taglib/ogg/xiphcomment.h index c172ea18..9df10e61 100644 --- a/taglib/ogg/xiphcomment.h +++ b/taglib/ogg/xiphcomment.h @@ -28,6 +28,7 @@ #include "tstring.h" #include "tstringlist.h" #include "tbytevector.h" +#include "taglib_export.h" namespace TagLib { @@ -56,7 +57,7 @@ namespace TagLib { * \see fieldListMap() */ - class XiphComment : public TagLib::Tag + class TAGLIB_EXPORT XiphComment : public TagLib::Tag { public: /*! diff --git a/taglib/toolkit/tbytevector.h b/taglib/toolkit/tbytevector.h index 462b0d1d..bb856070 100644 --- a/taglib/toolkit/tbytevector.h +++ b/taglib/toolkit/tbytevector.h @@ -23,6 +23,7 @@ #define TAGLIB_BYTEVECTOR_H #include "taglib.h" +#include "taglib_export.h" #include @@ -36,7 +37,7 @@ namespace TagLib { * useful for finding tag related paterns in a data array. */ - class ByteVector + class TAGLIB_EXPORT ByteVector { public: #ifndef DO_NOT_DOCUMENT diff --git a/taglib/toolkit/tstring.h b/taglib/toolkit/tstring.h index 70e82b1a..e9e3eedd 100644 --- a/taglib/toolkit/tstring.h +++ b/taglib/toolkit/tstring.h @@ -436,6 +436,6 @@ const TagLib::String operator+(const TagLib::String &s1, const char *s2); * * Send the string to an output stream. */ -std::ostream &operator<<(std::ostream &s, const TagLib::String &str); +TAGLIB_EXPORT std::ostream &operator<<(std::ostream &s, const TagLib::String &str); #endif diff --git a/taglib/toolkit/tstringlist.h b/taglib/toolkit/tstringlist.h index 5a2219e2..06768523 100644 --- a/taglib/toolkit/tstringlist.h +++ b/taglib/toolkit/tstringlist.h @@ -25,6 +25,7 @@ #include "tstring.h" #include "tlist.h" #include "tbytevectorlist.h" +#include "taglib_export.h" #include @@ -37,7 +38,7 @@ namespace TagLib { * string operations. */ - class StringList : public List + class TAGLIB_EXPORT StringList : public List { public: