akonadi
itemserializerplugin.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef AKONADI_ITEMSERIALIZERPLUGIN_H
00022 #define AKONADI_ITEMSERIALIZERPLUGIN_H
00023
00024 #include <QtCore/QByteArray>
00025 #include <QtCore/QSet>
00026
00027 #include "akonadi_export.h"
00028
00029 class QIODevice;
00030
00031 namespace Akonadi {
00032
00033 class Item;
00034
00120 class AKONADI_EXPORT ItemSerializerPlugin
00121 {
00122 public:
00126 virtual ~ItemSerializerPlugin();
00127
00147 virtual bool deserialize( Item& item, const QByteArray& label, QIODevice& data, int version ) = 0;
00148
00166 virtual void serialize( const Item& item, const QByteArray& label, QIODevice& data, int &version ) = 0;
00167
00174 virtual QSet<QByteArray> parts( const Item &item ) const;
00175 };
00176
00177 }
00178
00179 Q_DECLARE_INTERFACE( Akonadi::ItemSerializerPlugin, "org.freedesktop.Akonadi.ItemSerializerPlugin/1.0" )
00180
00181 #endif