00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef SYNDICATION_RDF_SEQUENCE_H
00023 #define SYNDICATION_RDF_SEQUENCE_H
00024
00025 #include <syndication/ksyndication_export.h>
00026 #include <syndication/rdf/resource.h>
00027
00028 #include <boost/shared_ptr.hpp>
00029
00030 template <class T> class QList;
00031
00032 namespace Syndication {
00033 namespace RDF {
00034
00035
00036 class Sequence;
00037 typedef boost::shared_ptr<Sequence> SequencePtr;
00038
00039
00045 class SYNDICATION_EXPORT Sequence : public Resource
00046 {
00047 public:
00048
00052 Sequence();
00053
00058 explicit Sequence(const QString& uri);
00059
00065 Sequence(const Sequence& other);
00066
00070 virtual ~Sequence();
00071
00077 virtual Sequence& operator=(const Sequence& other);
00078
00085 virtual void accept(NodeVisitor* visitor, NodePtr ptr);
00086
00090 virtual Sequence* clone() const;
00091
00097 virtual void append(NodePtr node);
00098
00103 virtual QList<NodePtr> items() const;
00104
00108 virtual bool isSequence() const;
00109
00110 private:
00111
00112 class SequencePrivate;
00113 boost::shared_ptr<SequencePrivate> d;
00114 };
00115
00116 }
00117 }
00118
00119 #endif // SYNDICATION_RDF_SEQUENCE_H