]> granicus.if.org Git - taglib/commitdiff
Move Speex into the Ogg namespace
authorScott Wheeler <wheeler@kde.org>
Tue, 12 Feb 2008 04:44:12 +0000 (04:44 +0000)
committerScott Wheeler <wheeler@kde.org>
Tue, 12 Feb 2008 04:44:12 +0000 (04:44 +0000)
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@773920 283d02a7-25f6-0310-bc7c-ecb5cbfe19da

bindings/c/tag_c.cpp
taglib/fileref.cpp
taglib/ogg/speex/speexfile.cpp
taglib/ogg/speex/speexfile.h
taglib/ogg/speex/speexproperties.cpp
taglib/ogg/speex/speexproperties.h
taglib/toolkit/taglib.h

index 43c4a62ff96814cd6dace5dcc38904a90e429ae5..377d92c733f027384046c52ab2b7e8972ae11c54 100644 (file)
@@ -67,7 +67,7 @@ TagLib_File *taglib_file_new_type(const char *filename, TagLib_File_Type type)
   case TagLib_File_MPEG:
     return reinterpret_cast<TagLib_File *>(new MPEG::File(filename));
   case TagLib_File_OggVorbis:
-    return reinterpret_cast<TagLib_File *>(new Vorbis::File(filename));
+    return reinterpret_cast<TagLib_File *>(new Ogg::Vorbis::File(filename));
   case TagLib_File_FLAC:
     return reinterpret_cast<TagLib_File *>(new FLAC::File(filename));
   case TagLib_File_MPC:
@@ -77,7 +77,7 @@ TagLib_File *taglib_file_new_type(const char *filename, TagLib_File_Type type)
   case TagLib_File_WavPack:
     return reinterpret_cast<TagLib_File *>(new WavPack::File(filename));
   case TagLib_File_Speex:
-    return reinterpret_cast<TagLib_File *>(new Speex::File(filename));
+    return reinterpret_cast<TagLib_File *>(new Ogg::Speex::File(filename));
   case TagLib_File_TrueAudio:
     return reinterpret_cast<TagLib_File *>(new TrueAudio::File(filename));
   }
index 7d466409bc44af67012bb8b49fb86197c9d5edf6..882c2150bcad78a50400b6480e491261848a29c0 100644 (file)
@@ -184,7 +184,7 @@ File *FileRef::create(FileName fileName, bool readAudioProperties,
 
   if(s.size() > 4) {
     if(s.substr(s.size() - 4, 4).upper() == ".OGG")
-      return new Vorbis::File(fileName, readAudioProperties, audioPropertiesStyle);
+      return new Ogg::Vorbis::File(fileName, readAudioProperties, audioPropertiesStyle);
     if(s.substr(s.size() - 4, 4).upper() == ".MP3")
       return new MPEG::File(fileName, readAudioProperties, audioPropertiesStyle);
     if(s.substr(s.size() - 4, 4).upper() == ".OGA")
@@ -196,7 +196,7 @@ File *FileRef::create(FileName fileName, bool readAudioProperties,
     if(s.substr(s.size() - 3, 3).upper() == ".WV")
       return new WavPack::File(fileName, readAudioProperties, audioPropertiesStyle);
     if(s.substr(s.size() - 4, 4).upper() == ".SPX")
-      return new Speex::File(fileName, readAudioProperties, audioPropertiesStyle);
+      return new Ogg::Speex::File(fileName, readAudioProperties, audioPropertiesStyle);
     if(s.substr(s.size() - 4, 4).upper() == ".TTA")
       return new TrueAudio::File(fileName, readAudioProperties, audioPropertiesStyle);
   }
index 94f67f34ec73ef9564677591d9be562871c43aa4..a1391b8367faaefbe42505b5d18ac3fd3a3dd9da 100644 (file)
@@ -35,6 +35,7 @@
 #include "speexfile.h"
 
 using namespace TagLib;
+using namespace TagLib::Ogg;
 
 class Speex::File::FilePrivate
 {
index 3b5f18ec0e286a636b91de72011bf5db1d182760..6b585452bac499001862ecd9d1b188860a480e14 100644 (file)
@@ -5,7 +5,7 @@
     copyright            : (C) 2002 - 2008 by Scott Wheeler
     email                : wheeler@kde.org
                            (original Vorbis implementation)
- ***************************************************************************/
+***************************************************************************/
 
 /***************************************************************************
  *   This library is free software; you can redistribute it and/or modify  *
 
 namespace TagLib {
 
-  //! A namespace containing classes for Speex metadata
-
-  namespace Speex {
+  namespace Ogg {
 
-    //! An implementation of Ogg::File with Speex specific methods
+    //! A namespace containing classes for Speex metadata
 
-    /*!
-     * This is the central class in the Ogg Speex metadata processing collection
-     * of classes.  It's built upon Ogg::File which handles processing of the Ogg
-     * logical bitstream and breaking it down into pages which are handled by
-     * the codec implementations, in this case Speex specifically.
-     */
-
-    class TAGLIB_EXPORT File : public Ogg::File
-    {
-    public:
-      /*!
-       * Contructs a Speex file from \a file.  If \a readProperties is true the
-       * file's audio properties will also be read using \a propertiesStyle.  If
-       * false, \a propertiesStyle is ignored.
-       */
-      File(FileName file, bool readProperties = true,
-           Properties::ReadStyle propertiesStyle = Properties::Average);
-
-      /*!
-       * Destroys this instance of the File.
-       */
-      virtual ~File();
+    namespace Speex {
 
-      /*!
-       * Returns the XiphComment for this file.  XiphComment implements the tag
-       * interface, so this serves as the reimplementation of
-       * TagLib::File::tag().
-       */
-      virtual Ogg::XiphComment *tag() const;
+      //! An implementation of Ogg::File with Speex specific methods
 
       /*!
-       * Returns the Speex::Properties for this file.  If no audio properties
-       * were read then this will return a null pointer.
+       * This is the central class in the Ogg Speex metadata processing collection
+       * of classes.  It's built upon Ogg::File which handles processing of the Ogg
+       * logical bitstream and breaking it down into pages which are handled by
+       * the codec implementations, in this case Speex specifically.
        */
-      virtual Properties *audioProperties() const;
-
-      virtual bool save();
 
-    private:
-      File(const File &);
-      File &operator=(const File &);
-
-      void read(bool readProperties, Properties::ReadStyle propertiesStyle);
-
-      class FilePrivate;
-      FilePrivate *d;
-    };
+      class TAGLIB_EXPORT File : public Ogg::File
+      {
+      public:
+        /*!
+         * Contructs a Speex file from \a file.  If \a readProperties is true the
+         * file's audio properties will also be read using \a propertiesStyle.  If
+         * false, \a propertiesStyle is ignored.
+         */
+        File(FileName file, bool readProperties = true,
+             Properties::ReadStyle propertiesStyle = Properties::Average);
+
+        /*!
+         * Destroys this instance of the File.
+         */
+        virtual ~File();
+
+        /*!
+         * Returns the XiphComment for this file.  XiphComment implements the tag
+         * interface, so this serves as the reimplementation of
+         * TagLib::File::tag().
+         */
+        virtual Ogg::XiphComment *tag() const;
+
+        /*!
+         * Returns the Speex::Properties for this file.  If no audio properties
+         * were read then this will return a null pointer.
+         */
+        virtual Properties *audioProperties() const;
+
+        virtual bool save();
+
+      private:
+        File(const File &);
+        File &operator=(const File &);
+
+        void read(bool readProperties, Properties::ReadStyle propertiesStyle);
+
+        class FilePrivate;
+        FilePrivate *d;
+      };
+    }
   }
-
 }
 
 #endif
index 80d4656d67e5d6ea9622e1d1595bda7771cd99af..29deb019c177740cd701cd14e24063fdc5c99711 100644 (file)
@@ -36,6 +36,7 @@
 #include "speexfile.h"
 
 using namespace TagLib;
+using namespace TagLib::Ogg;
 
 class Speex::Properties::PropertiesPrivate
 {
index a46d6e5c728a314ddfd95ef6da4c94faf07645b3..3bab7974e7415c52ec74484f4e7ed3e2b39ddb0d 100644 (file)
@@ -5,7 +5,7 @@
     copyright            : (C) 2002 - 2008 by Scott Wheeler
     email                : wheeler@kde.org
                            (original Vorbis implementation)
- ***************************************************************************/
+***************************************************************************/
 
 /***************************************************************************
  *   This library is free software; you can redistribute it and/or modify  *
 
 namespace TagLib {
 
-  namespace Speex {
-
-    class File;
-
-    //! An implementation of audio property reading for Ogg Speex
-
-    /*!
-     * This reads the data from an Ogg Speex stream found in the AudioProperties
-     * API.
-     */
-
-    class TAGLIB_EXPORT Properties : public AudioProperties
-    {
-    public:
-      /*!
-       * Create an instance of Speex::Properties with the data read from the
-       * Speex::File \a file.
-       */
-      Properties(File *file, ReadStyle style = Average);
+  namespace Ogg {
 
-      /*!
-       * Destroys this Speex::Properties instance.
-       */
-      virtual ~Properties();
+    namespace Speex {
 
-      // Reimplementations.
+      class File;
 
-      virtual int length() const;
-      virtual int bitrate() const;
-      virtual int sampleRate() const;
-      virtual int channels() const;
+      //! An implementation of audio property reading for Ogg Speex
 
       /*!
-       * Returns the Speex version, currently "0" (as specified by the spec).
+       * This reads the data from an Ogg Speex stream found in the AudioProperties
+       * API.
        */
-      int speexVersion() const;
 
-    private:
-      Properties(const Properties &);
-      Properties &operator=(const Properties &);
-
-      void read();
-
-      class PropertiesPrivate;
-      PropertiesPrivate *d;
-    };
+      class TAGLIB_EXPORT Properties : public AudioProperties
+      {
+      public:
+        /*!
+         * Create an instance of Speex::Properties with the data read from the
+         * Speex::File \a file.
+         */
+        Properties(File *file, ReadStyle style = Average);
+
+        /*!
+         * Destroys this Speex::Properties instance.
+         */
+        virtual ~Properties();
+
+        // Reimplementations.
+
+        virtual int length() const;
+        virtual int bitrate() const;
+        virtual int sampleRate() const;
+        virtual int channels() const;
+
+        /*!
+         * Returns the Speex version, currently "0" (as specified by the spec).
+         */
+        int speexVersion() const;
+
+      private:
+        Properties(const Properties &);
+        Properties &operator=(const Properties &);
+
+        void read();
+
+        class PropertiesPrivate;
+        PropertiesPrivate *d;
+      };
+    }
   }
-
 }
 
 #endif
index 8c91042f75ee98cba1256e6f147b393ecaf431dd..3bbb19485ae4367ad8289a753877977d042ee512 100644 (file)
@@ -161,6 +161,8 @@ namespace TagLib {
  *
  * \endcode
  *
+ * More examples can be found in the \e examples directory of the source distribution.
+ *
  * \section Contact
  *
  * Questions about TagLib should be directed to the TagLib mailing list, not directly to the author.