diff -r 5d2360e70d9f -r 4b1e636e8a71 example/clientapi/smf/inc/smfclient/smfprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/example/clientapi/smf/inc/smfclient/smfprovider.h Thu Mar 25 14:44:08 2010 +0530 @@ -0,0 +1,85 @@ +/** +* Copyright (c) 2010 Sasken Communication Technologies Ltd. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "{License}" +* which accompanies this distribution, and is available +* at the URL "{LicenseUrl}". +* +* Initial Contributors: +* Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution +* +* Contributors: +* +* Description: +* Interface spefication for sfm service provider +* +*/ + +#ifndef SMFPROVIDER_H +#define SMFPROVIDER_H + +#include +#include +#include + +#include "../common/SmfClientGlobal.h" +/** + * Interface for a base service provider. Other service provider classes contains + * implementation of this base class so that each has access to service provider + * information. + * All of the functionality described here should be implemented by a service + * specific plug-in object. + */ +class SMFCLIENT_EXPORT SmfProvider : public QObject +{ + Q_OBJECT + +public: + /** + * Seeing as this is a plug-in implementation, these will realistically be generated by SMF factory of some kind + */ + + SmfProvider(QObject* parent = 0); + ~SmfProvider(); + +public: + /** + * Localizable name of the service + * @return service name + */ + virtual QString serviceName() = 0; + + /** + * Logo of the service + * @return logo image of the service + */ + virtual QImage serviceIcon() = 0; // + + /** + * Readable service description + * @return service description + */ + virtual QString description() = 0; // readable service description + + /* + * Website of the service + */ + virtual QUrl serviceUrl() = 0; // + + /** + * URL of the application providing this service + */ + virtual QUrl applicationUrl() = 0; // + +}; +/** +* Externalization +*/ +QDataStream &operator<<(QDataStream &, const SmfProvider&); +/** + * Internalization + */ +QDataStream &operator>>(QDataStream &, SmfProvider&); +SMF_GETSERVICES(SmfProvider, "org.symbian.smf.client.provider\0.2") +#endif // SMFPROVIDER_H