diff -r 3ab5c078b490 -r c63ee96dbe5f taskswitcher/server/inc/tsserializeddataprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/taskswitcher/server/inc/tsserializeddataprovider.h Thu Sep 16 12:11:40 2010 +0100 @@ -0,0 +1,49 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ +#ifndef SERIALIZEDDATAPROVIDER_H +#define SERIALIZEDDATAPROVIDER_H + +#include "tsdataobserver.h" +#include "tsdataprovider.h" +#include "tsmodelobserver.h" + +class RWriteStream; + +class CTsSerializedDataProvider: public CBase, + public MTsModelObserver, + public MTsDataProvider +{ +public: + static CTsSerializedDataProvider* NewL(MTsDataObserver &observer); + ~CTsSerializedDataProvider(); + const TDesC8& Data() const; + void dataChanged(MTsModel &model); + void dataChanged(const TTsModelItem &item); + +private: + CTsSerializedDataProvider(MTsDataObserver& observer); + void serializeModel(const MTsModel &src); + void serializeModelL(const MTsModel &src); + void serializeModelL(RWriteStream& dst, const MTsModel &src); + +private: + MTsDataObserver& mObserver; + RBuf8 mData; + +}; + +#endif //SERIALIZEDDATAPROVIDER_H