asfattribute.h

来自「Amarok是一款在LINUX或其他类UNIX操作系统中运行的音频播放器软件。 」· C头文件 代码 · 共 177 行

H
177
字号
/**************************************************************************    copyright            : (C) 2005-2007 by Lukáš Lalinský    email                : lalinsky@gmail.com **************************************************************************//*************************************************************************** *   This library is free software; you can redistribute it and/or modify  * *   it  under the terms of the GNU Lesser General Public License version  * *   2.1 as published by the Free Software Foundation.                     * *                                                                         * *   This library is distributed in the hope that it will be useful, but   * *   WITHOUT ANY WARRANTY; without even the implied warranty of            * *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     * *   Lesser General Public License for more details.                       * *                                                                         * *   You should have received a copy of the GNU Lesser General Public      * *   License along with this library; if not, write to the Free Software   * *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  * *   USA                                                                   * ***************************************************************************/#ifndef TAGLIB_ASFATTRIBUTE_H#define TAGLIB_ASFATTRIBUTE_H#include <tstring.h>#include <tbytevector.h>namespace TagLib{  namespace ASF  {    class File;    class Attribute    {    public:      /*!       * Enum of types an Attribute can have.       */      enum AttributeTypes {        UnicodeType = 0,        BytesType   = 1,        BoolType    = 2,        DWordType   = 3,        QWordType   = 4,        WordType    = 5,        GuidType    = 6      };      /*!       * Constructs an empty attribute.       */      Attribute();      /*!       * Constructs an attribute with \a key and a UnicodeType \a value.       */      Attribute(const String &value);      /*!       * Constructs an attribute with \a key and a BytesType \a value.       */      Attribute(const ByteVector &value);      /*!       * Constructs an attribute with \a key and a DWordType \a value.       */      Attribute(unsigned int value);      /*!       * Constructs an attribute with \a key and a QWordType \a value.       */      Attribute(unsigned long long value);      /*!       * Constructs an attribute with \a key and a WordType \a value.       */      Attribute(unsigned short value);      /*!       * Constructs an attribute with \a key and a BoolType \a value.       */      Attribute(bool value);      /*!       * Construct an attribute as a copy of \a other.       */      Attribute(const Attribute &item);      /*!       * Copies the contents of \a other into this item.       */      ASF::Attribute &operator=(const Attribute &other);      /*!       * Destroys the attribute.       */      virtual ~Attribute();      /*!       * Returns type of the value.       */      AttributeTypes type() const;      /*!       * Returns the BoolType \a value.       */      unsigned short toBool() const;      /*!       * Returns the WordType \a value.       */      unsigned short toUShort() const;      /*!       * Returns the DWordType \a value.       */      unsigned int toUInt() const;      /*!       * Returns the QWordType \a value.       */      unsigned long long toULongLong() const;      /*!       * Returns the UnicodeType \a value.       */      String toString() const;      /*!       * Returns the BytesType \a value.       */      ByteVector toByteVector() const;      /*!       * Returns the language number, or 0 is no stream number was set.       */      int language() const;      /*!       * Sets the language number.       */      void setLanguage(int value);      /*!       * Returns the stream number, or 0 is no stream number was set.       */      int stream() const;      /*!       * Sets the stream number.       */      void setStream(int value);#ifndef DO_NOT_DOCUMENT      /* THIS IS PRIVATE, DON'T TOUCH IT! */      String parse(ASF::File &file, int kind = 0);#endif    private:      friend class File;      ByteVector render(const String &name, int kind = 0) const;      class AttributePrivate;      AttributePrivate *d;    };  }}#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?