diff -r 86af6c333601 -r 0446eb7b28aa smf/inc/smfclient/smfprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/smf/inc/smfclient/smfprovider.h Thu Apr 15 15:35:36 2010 +0530 @@ -0,0 +1,91 @@ +/** + * Copyright (c) 2010 Sasken Communication Technologies Ltd. + * All rights reserved. + * This component and the accompanying materials are made available + * under the terms of the "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: + * Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution + * + * Contributors: + * Manasij Roy, Nalina Hariharan + * + * Description: + * The SmfEvent class represents an event + * + */ + +#ifndef SMFPROVIDER_H +#define SMFPROVIDER_H + +#include +#include +#include + +#include "../common/SmfClientGlobal.h" +/** + * @ingroup smf_client_group + * 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 + */ + QString& serviceName() const; + + /** + * Logo of the service + * @return logo image of the service + */ + QImage& serviceIcon() const; + + /** + * Readable service description + * @return service description + */ + QString description() const; + + /* + * Website of the service + */ + QUrl serviceUrl() const; + + /** + * URL of the application providing this service + */ + QUrl applicationUrl() const; // + + /** + * service types - list of interfaces that this provider support + */ + QList serviceTypes() const; +}; +/** +* Externalization +*/ +QDataStream &operator<<(QDataStream &, const SmfProvider&); +/** + * Internalization + */ +QDataStream &operator>>(QDataStream &, SmfProvider&); + +#endif // SMFPROVIDER_H