akregator/src/librss

enclosure.h

00001 /*
00002     This file is part of Akregator.
00003 
00004     Copyright (C) 2005 Frank Osterfeld <frank.osterfeld at kdemail.net>
00005 
00006     This program is free software; you can redistribute it and/or modify
00007     it under the terms of the GNU General Public License as published by
00008     the Free Software Foundation; either version 2 of the License, or
00009     (at your option) any later version.
00010 
00011     This program is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00014     GNU General Public License for more details.
00015 
00016     You should have received a copy of the GNU General Public License
00017     along with this program; if not, write to the Free Software
00018     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00019 
00020     As a special exception, permission is given to link this program
00021     with any edition of Qt, and distribute the resulting executable,
00022     without including the source code for Qt in the source distribution.
00023 */
00024 
00025 #ifndef LIBRSS_RSS_ENCLOSURE_H
00026 #define LIBRSS_RSS_ENCLOSURE_H
00027 
00028 #include "global.h"
00029 
00030 class QDomDocument;
00031 class QDomElement;
00032 class QString;
00033 
00034 namespace RSS
00035 {
00036     class KDE_EXPORT Enclosure
00037     {
00038         public:
00039 
00040         static Enclosure fromXML(const QDomElement& e);
00041         QDomElement toXML(QDomDocument document) const;
00042 
00043         Enclosure();
00044         Enclosure(const Enclosure& other);
00045         Enclosure(const QString& url, int length, const QString& type);
00046         virtual ~Enclosure();
00047         
00048         bool isNull() const;
00049 
00050         Enclosure& operator=(const Enclosure& other);
00051         bool operator==(const Enclosure& other) const;
00052 
00054         QString url() const;
00055 
00057         int length() const;
00058 
00060         QString type() const;
00061 
00062         private:
00063 
00064         class EnclosurePrivate;
00065         EnclosurePrivate* d;
00066     };
00067 
00068 } // namespace RSS
00069 #endif // LIBRSS_RSS_ENCLOSURE_H
KDE Home | KDE Accessibility Home | Description of Access Keys