Music Events are now normal Fetcher APIs added PDK_4.0.a
authorcgandhi
Thu, 23 Sep 2010 17:43:31 +0530
changeset 25 a180113055cb
parent 24 1cee9f1b95e0
child 26 83d6a149c755
Music Events are now normal Fetcher APIs added All APIs now return SmfError Canceling Request now supported Music Search now based on category Providerinfo added in DSM Added secondary ID, count, location to SMFAlbum Tags for Artist added Get tracks for album and artist added Added URL to subtitle DSM Bug fixes Detailed debugging logs filtered in server, pluginmgr, transportmgr playlistsOf() method changed in smfclient and plugin interfaces. RVCT B686 compilation issues resolved.
.hgignore
ReadMe.txt
smf/smf.pro
smf/smfdes.h
smf/smfservermodule/smfclient/bwins/smfclientu.def
smf/smfservermodule/smfclient/eabi/smfclientu.def
smf/smfservermodule/smfclient/smfactivityfetcher.cpp
smf/smfservermodule/smfclient/smfactivityfetcher.h
smf/smfservermodule/smfclient/smfactivityfetcher_p.cpp
smf/smfservermodule/smfclient/smfactivityfetcher_p.h
smf/smfservermodule/smfclient/smfclient.cpp
smf/smfservermodule/smfclient/smfclient.pro
smf/smfservermodule/smfclient/smfclient_p.cpp
smf/smfservermodule/smfclient/smfclientsymbian.cpp
smf/smfservermodule/smfclient/smfclientsymbiansession.h
smf/smfservermodule/smfclient/smfcontactfetcher.cpp
smf/smfservermodule/smfclient/smfcontactfetcher.h
smf/smfservermodule/smfclient/smfcontactfetcher_p.cpp
smf/smfservermodule/smfclient/smfcontactfetcher_p.h
smf/smfservermodule/smfclient/smfeventsfetcher.cpp
smf/smfservermodule/smfclient/smfeventsfetcher.h
smf/smfservermodule/smfclient/smfeventsfetcher_p.cpp
smf/smfservermodule/smfclient/smfeventsfetcher_p.h
smf/smfservermodule/smfclient/smfgallery.cpp
smf/smfservermodule/smfclient/smfgallery.d
smf/smfservermodule/smfclient/smfgallery.h
smf/smfservermodule/smfclient/smfgallery_p.cpp
smf/smfservermodule/smfclient/smfgallery_p.h
smf/smfservermodule/smfclient/smfmusic.cpp
smf/smfservermodule/smfclient/smfmusic.h
smf/smfservermodule/smfclient/smfmusic_p.cpp
smf/smfservermodule/smfclient/smfmusic_p.h
smf/smfservermodule/smfclient/smfpostprovider.cpp
smf/smfservermodule/smfclient/smfpostprovider.h
smf/smfservermodule/smfclient/smfpostprovider_p.cpp
smf/smfservermodule/smfclient/smfpostprovider_p.h
smf/smfservermodule/smfclient/smfrelationmgr.cpp
smf/smfservermodule/smfclient/smfrelationmgr.h
smf/smfservermodule/smfclient/smfrelationmgr_p.cpp
smf/smfservermodule/smfcommon/bwins/smfcommonu.def
smf/smfservermodule/smfcommon/eabi/smfcommonu.def
smf/smfservermodule/smfcommon/smfalbum.cpp
smf/smfservermodule/smfcommon/smfalbum.h
smf/smfservermodule/smfcommon/smfalbum_p.h
smf/smfservermodule/smfcommon/smfartists.cpp
smf/smfservermodule/smfcommon/smfartists.h
smf/smfservermodule/smfcommon/smfartists_p.h
smf/smfservermodule/smfcommon/smfcommon.pro
smf/smfservermodule/smfcommon/smfcontact.cpp
smf/smfservermodule/smfcommon/smfcontact.h
smf/smfservermodule/smfcommon/smfglobal.h
smf/smfservermodule/smfcommon/smfgroup.h
smf/smfservermodule/smfcommon/smflyrics.cpp
smf/smfservermodule/smfcommon/smflyrics.h
smf/smfservermodule/smfcommon/smfmusicfingerprint.cpp
smf/smfservermodule/smfcommon/smfmusicfingerprint.h
smf/smfservermodule/smfcommon/smfmusicfingerprint_p.h
smf/smfservermodule/smfcommon/smfmusicprofile.cpp
smf/smfservermodule/smfcommon/smfmusicprofile.h
smf/smfservermodule/smfcommon/smfmusicprofile_p.h
smf/smfservermodule/smfcommon/smfplaylist.h
smf/smfservermodule/smfcommon/smfpost.h
smf/smfservermodule/smfcommon/smfsubtitle.cpp
smf/smfservermodule/smfcommon/smfsubtitle.h
smf/smfservermodule/smfcommon/smfsubtitle_p.h
smf/smfservermodule/smfcommon/smftrackinfo.h
smf/smfservermodule/smfserver/datastoremgr/dsm.cpp
smf/smfservermodule/smfserver/datastoremgr/dsm.h
smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.cpp
smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.h
smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.cpp
smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.h
smf/smfservermodule/smfserver/server/smfserver.cpp
smf/smfservermodule/smfserver/server/smfserver.h
smf/smfservermodule/smfserver/server/smfserversymbian.cpp
smf/smfservermodule/smfserver/server/smfserversymbian_p.h
smf/smfservermodule/smfserver/smfplugins/smfactivityfetcherplugin.h
smf/smfservermodule/smfserver/smfplugins/smfcontactfetcherplugin.h
smf/smfservermodule/smfserver/smfplugins/smfeventsfetcherplugin.h
smf/smfservermodule/smfserver/smfplugins/smfgalleryplugin.h
smf/smfservermodule/smfserver/smfplugins/smflyricsserviceplugin.h
smf/smfservermodule/smfserver/smfplugins/smfmusiceventsplugin.h
smf/smfservermodule/smfserver/smfplugins/smfmusicsearchplugin.h
smf/smfservermodule/smfserver/smfplugins/smfmusicserviceplugin.h
smf/smfservermodule/smfserver/smfplugins/smfplaylistserviceplugin.h
smf/smfservermodule/smfserver/smfplugins/smfpluginbase.h
smf/smfservermodule/smfserver/smfplugins/smfplugins.pri
smf/smfservermodule/smfserver/smfplugins/smfpostproviderplugin.h
smf/smfservermodule/smfserver/transportmgr/smftransportmanager.cpp
smf/smfservermodule/smfserver/transportmgr/smftransportmanagerutil.cpp
smf/smfservermodule/util/qjson/lib/qjson.prl
smf/smfservermodule/util/qjson/src/eabi/qjsonu.def
smf/smfservermodule/util/qjson/src/src.pro
--- a/.hgignore	Thu Sep 23 17:20:22 2010 +0530
+++ b/.hgignore	Thu Sep 23 17:43:31 2010 +0530
@@ -8,3 +8,6 @@
 ^bin/.*$
 ^tmp
 ^.*\bld.inf
+^.svn
+^.cproject
+^.project
--- a/ReadMe.txt	Thu Sep 23 17:20:22 2010 +0530
+++ b/ReadMe.txt	Thu Sep 23 17:43:31 2010 +0530
@@ -3,7 +3,7 @@
 This is pre-beta version of Social Mobile Framework code. Folder organization is as follows - 
                 Doxyfile - Doxygen configuration file 
 
-                \doc - contains zipped doxygen genrated documentation
+                \doc - contains smfhelp.chm file, refer this for interface information
 
                 \example - contains sample plugins, auth application and client test application
                                     \example\AuthApp
@@ -69,10 +69,12 @@
 the necessary credentials in plain text. Sample smfclientapp uses facebook plugins, place a file 
 named "FaceBookKeys.txt" under "C:/Data/" - which is at "\epoc32\winscw\c\data". This file should
 contain keys in the following order:  API key, API secret, session key, session secret.. all separated by \n
-If you want to know how to generate these, please see http://wiki.developers.facebook.com/index.php/Authorization_and_Authentication_for_Desktop_Applications
+If you want to know how to generate these, please see 
+http://wiki.developers.facebook.com/index.php/Authorization_and_Authentication_for_Desktop_Applications
 We are integrating plugins with CredentialMgr, so these painful steps won't be required once it is up.
 
 
+
 Building Steps :  - 
 ==============================================================================
 1. Use smfrepo.pro present in top level to build. This single pro file builds SmfServer, SmfCredMgr, SmfClient,
@@ -89,3 +91,81 @@
 provided the keys in step 2 in pre-build steps] and pictures from Flickr
 4. The results might not show properly on UI due to problems in S^3 SDK for Webkit. However textual result can be viewed
 at the generated log file - \epoc32\winscw\c\data\SmfLogs.txt
+
+
+
+Public Header files
+==============================================================================
+Following section lists the public header files for application developers and plugin developers. Please
+refer to section "SMF Interfaces and Usage" in smfhelp.chm kept in doc folder for details of the classes. 
+
+
+SmfClient Header Files
+==============================================================================
+These are exported to \epoc32\include from \smf\smfservermodule\smfclient
+	smfclient.h
+	smfcontactfetcher.h
+	smfpostprovider.h
+	smfgallery.h
+	smfrelationmgr.h
+	smfmusic.h
+	smfactivityfetcher.h
+	smfeventsfetcher.h
+
+
+
+SmfPlugin Header Files
+==============================================================================
+These are exported to \epoc32\include from \smf\smfservermodule\smfserver\smfplugins
+	smfpluginbase.h
+	smfproviderbase.h
+	smfactivityfetcherplugin.h
+	smfcontactfetcherplugin.h
+	smfeventsfetcherplugin.h
+	smfpostproviderplugin.h
+	smflyricsserviceplugin.h
+	smfmusicsearchplugin.h
+	smfmusicserviceplugin.h
+	smfplaylistserviceplugin.h
+	smfgalleryplugin.h
+
+
+
+SmfCommon Header Files
+==============================================================================
+These are exported to \epoc32\include from \smf\smfservermodule\smfcommon
+	smfactions.h
+	smfalbum.h
+	smfartists.h
+	smfcomment.h
+	smfcontact.h
+	smfevent.h
+	smfgroup.h
+	smflocation.h
+	smflyrics.h
+	smfmusicfingerprint.h
+	smfmusicprofile.h
+	smfmusicrating.h
+	smfpicture.h
+	smfpicturealbum.h
+	smfplaylist.h
+	smfpluginutil.h
+	smfpost.h
+	smfprovider.h
+	smfsubtitle.h
+	smftrackinfo.h
+	smfurl.h
+	smfclientglobal.h
+	smfglobal.h
+	smfobserver.h
+	
+	
+
+SmfCredentialManager Header Files
+==============================================================================
+These are exported to \epoc32\include from \smf\smfcredentialmgr\smfcredmgrclient	
+	smfcredmgrclient.h
+	smfcredmgrclientdatastruct.h
+	smfcredmgrclientglobal.h
+	smfutils.h
+	smfcredmgrcommon.h
\ No newline at end of file
--- a/smf/smf.pro	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smf.pro	Thu Sep 23 17:43:31 2010 +0530
@@ -1,5 +1,4 @@
 TEMPLATE  = 	subdirs
 SUBDIRS   =	smfcredentialmgr \
-		smfsettingsui \
 		smfservermodule 
 CONFIG += ordered
--- a/smf/smfdes.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfdes.h	Thu Sep 23 17:43:31 2010 +0530
@@ -10,7 +10,7 @@
  * Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution
  *
  * Contributors:
- * Manasij Roy, Nalina Hariharan
+ * Nalina Hariharan,Satish Kanteti, Rajat Roy
  *
  * Description:
  * Intro Page
@@ -20,7 +20,7 @@
 
 /**
  * @mainpage SMF (Social Mobile Framework Interfaces)
- * @defgroup smf_high_level_design SMF high level design
+ * @defgroup smf_high_level_design SMF Interfaces and Usage
  *
  * Social Mobile Framework is a application level framework which allows Qt Applications
  * use the common web APIs to perform social web activities.
@@ -31,44 +31,54 @@
  *
  * @section smf_interfaces SMF Interfaces
  *
- * There are two sets of interfaces -
+ * Native applications can use SMF, via Client APIs.
+ * Service Providers can provide smf plugins, via Plugin APIs.
+ * Both would use Common APIs for common data classes
+ * Service Providers can optionaliy use Credential Manager APIs
+ *
+ * Here is the list of public interfaces ( exported to /epoc32/include ) -
  * 		@subsection smf_client_interfaces Client Interfaces
  * 				- Client Applications (e.g. Media Player, Contacts, Game) uses these APIs to access SMF. see @ref smf_client_group
  *
  * 		@subsection smf_plugin_interfaces Plugin Interfaces
  * 				- Service Providers (e.g. Facebook, Flickr, last.fm) implements these APIs to provide service to SMF - see @ref smf_plugin_group
  *
- * Currently, @ref smf_client_interfaces and @ref smf_plugin_interfaces are defined for remote contacts, remote
- * image gallery and remote music services. There are common classes defined for holding data accross clients
- * and plugins, present in inc\common, see - @ref smf_common_group
+ * 		@subsection smf_common_interfaces Common Interfaces
+ * 				- Both plugins and smfclient uses these for representing data - see @ref smf_common_group
+ *
+ * 		@subsection smf_credmgr_interfaces CredMgr Interfaces
+ * 				- Credential Manager provides APIs for digital signing, storing and retrieving keys, etc - see @ref smf_credmgr_group
+ *			\ep
+ *
+ *
  *
  *
- *		@section smf_client_usage Client Usage Example
- *		- This shows how to use the SMF client APIs in applications, e.g. Client can define suitable Models using lists returned by these APIs
- *				- how to fetch a list of contacts from a remote server e.g. Facebook, see @ref MyApplication::displayFriends()
- *				- how to get a @ref QContact from a SmfContacts see @ref MyApplication::showlist()
- *				- how to get a list of images from a remote gallery e.g. Flickr.com, see @ref MyApplication::displayGallery()
- *				- how to post privately to a contact see @ref MyApplication::postUpdate()
- *				- how to tell others about the music you are currently listen to, see @ref MyApplication::updateCurrentPlaying()
- *				- how to list all the activities that has happened recently, see @ref MyApplication::getActivities() and @ref MyApplication::showActivities()
+ *	@section smf_client_usage Client Usage Example
+ *		- / example / DemoGUI / HomeView.cpp shows how to use the SMF client APIs in applications, e.g. Client can define suitable Models using lists returned by these APIs.
+ *				- how to fetch a list of contacts from a remote server e.g. Facebook, see @ref HomeView::getFriends()
+ *				- how to get a list of posts from a remote server e.g. Facebook, see @ref HomeView::getPosts()
+ *				- how to get a list of images from a remote gallery e.g. Flickr.com, see @ref HomeView::getAlbums()
+ *				- how to list all the activities that has happened recently, see @ref HomeView::getActivities()
  *
  *		@section smf_sample_plugin Sample Plugin From Service provider
- *		- This shows how to write a plugin for extending SMF service. Authentication Application also needs to be provided for these plugins.
- *				- how to create request to be sent to a remote server e.g. Flickr.com, see @ref SamplePlugin::pictures()
- *				- how to implement posting of comment on a picture to Flickr.com,  @ref SamplePlugin::postComment()
- *				- how to parse the response that arrived from Flickr.com, see @ref SamplePlugin::responseAvailable()
- *				- how to use JSON parsing from SmfPluginUtil, see @ref SamplePlugin::responseAvailable()
+ *		- This shows how to write a plugin for extending SMF service.
+ *				- how to create request to be sent to a remote server for fetching contacts e.g.Facebook.com, see @ref FBContactFetcherPlugin::friends
+ *				- how to implement the fetching of posts or comment,   @ref FBPostProviderPlugin::getPosts()
+ *				- how to parse the response that arrived from Facebook.com for fetching activities, see @ref FBActivityFetcherPlugin::responseAvailable()
+ *				- how to use JSON parsing from SmfPluginUtil, see @ref FBPostProviderPlugin::responseAvailable()
+ * 	- Authentication Application also needs to be provided for these plugins.
  *
  *		@section smf_custom_api Custom API in SMF
  *		- SMF strives to provide service API for generic "common" social operations. However this doesn't mean that developers have to
  *		use other propriatery APIs to access service specific "differentiating" features. Service Providers can provide plugins which support
- *		APIs like @ref SmfGalleryPlugin::customRequest(). A separate library would also be provided by service providers to help SMF clients use this custom
- *		API like @ref SmfGallery::customRequest().
+ *		APIs like @ref SmfGalleryPlugin::customRequest(). A separate library would also be provided by service providers to help SMF clients
+ * 	use this custom	API
  *
  *
  *
  *		@section smf_dependency Dependency
- *		- SMF uses QtMobility for mainly contacts information, see QtMobility project.
+ *		- SMF uses Qt 4.6.2 on Symbian^3  ( Nokia_Symbian3_SDK_v0.8 to be specific )
+ *		- SMF uses QtMobility 1.0 for mainly contacts information, see QtMobility project.
  *		- SMF uses QJson as utility library, courtesy Flavio Castelli , see http://gitorious.org/qjson/qjson
  *
  *		@section smf_notes Notes:
@@ -85,3 +95,6 @@
 /**
  * @defgroup smf_plugin_group Plugin Classes
  */
+/**
+ * @defgroup smf_credmgr_group CredMgr Classes
+ */
--- a/smf/smfservermodule/smfclient/bwins/smfclientu.def	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/bwins/smfclientu.def	Thu Sep 23 17:43:31 2010 +0530
@@ -1,245 +1,266 @@
 EXPORTS
-	?eventsUpdated@SmfMusicEvents@@IAEXW4SmfError@@@Z @ 1 NONAME ; void SmfMusicEvents::eventsUpdated(enum SmfError)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfRelationItem@@@Z @ 2 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfRelationItem const &)
-	?count@SmfRelationMgr@@QAEIVQString@@@Z @ 3 NONAME ; unsigned int SmfRelationMgr::count(class QString)
-	?staticMetaObject@SmfRelationMgr@@2UQMetaObject@@B @ 4 NONAME ; struct QMetaObject const SmfRelationMgr::staticMetaObject
-	?trUtf8@SmfPlaylistService@@SA?AVQString@@PBD0@Z @ 5 NONAME ; class QString SmfPlaylistService::trUtf8(char const *, char const *)
-	?customDataAvailable@SmfMusicEvents@@IAEXABHPAVQByteArray@@@Z @ 6 NONAME ; void SmfMusicEvents::customDataAvailable(int const &, class QByteArray *)
-	??0SmfGallery@@QAE@PAVSmfProvider@@@Z @ 7 NONAME ; SmfGallery::SmfGallery(class SmfProvider *)
-	?maxCharsInPost@SmfPostProvider@@QBEHXZ @ 8 NONAME ; int SmfPostProvider::maxCharsInPost(void) const
-	?qt_metacall@SmfMusicSearch@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 9 NONAME ; int SmfMusicSearch::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??0SmfClient@@QAE@XZ @ 10 NONAME ; SmfClient::SmfClient(void)
-	?tr@SmfContactFetcher@@SA?AVQString@@PBD0@Z @ 11 NONAME ; class QString SmfContactFetcher::tr(char const *, char const *)
-	?lyrics@SmfLyricsService@@QAEXVSmfTrackInfo@@HH@Z @ 12 NONAME ; void SmfLyricsService::lyrics(class SmfTrackInfo, int, int)
-	?getIndex@SmfRelationItem@@QBEIXZ @ 13 NONAME ; unsigned int SmfRelationItem::getIndex(void) const
-	?trUtf8@SmfMusicSearch@@SA?AVQString@@PBD0@Z @ 14 NONAME ; class QString SmfMusicSearch::trUtf8(char const *, char const *)
-	?getProvider@SmfMusicSearch@@ABEPAVSmfProvider@@XZ @ 15 NONAME ; class SmfProvider * SmfMusicSearch::getProvider(void) const
-	?getProvider@SmfActivityFetcher@@ABEPAVSmfProvider@@XZ @ 16 NONAME ; class SmfProvider * SmfActivityFetcher::getProvider(void) const
-	?getStaticMetaObject@SmfPostProvider@@SAABUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const & SmfPostProvider::getStaticMetaObject(void)
-	?tr@SmfRelationMgr@@SA?AVQString@@PBD0@Z @ 18 NONAME ; class QString SmfRelationMgr::tr(char const *, char const *)
-	?filtered@SmfActivityFetcher@@QAEXV?$QList@W4SmfActivityObjectType@@@@HH@Z @ 19 NONAME ; void SmfActivityFetcher::filtered(class QList<enum SmfActivityObjectType>, int, int)
-	?customDataAvailable@SmfMusicService@@IAEXABHPAVQByteArray@@@Z @ 20 NONAME ; void SmfMusicService::customDataAvailable(int const &, class QByteArray *)
-	??1SmfMusicService@@UAE@XZ @ 21 NONAME ; SmfMusicService::~SmfMusicService(void)
-	??1SmfRelationItem@@QAE@XZ @ 22 NONAME ; SmfRelationItem::~SmfRelationItem(void)
-	?descriptionAvailable@SmfGallery@@IAEXVQString@@W4SmfError@@@Z @ 23 NONAME ; void SmfGallery::descriptionAvailable(class QString, enum SmfError)
-	??1SmfPlaylistService@@UAE@XZ @ 24 NONAME ; SmfPlaylistService::~SmfPlaylistService(void)
-	?supportedFormats@SmfPostProvider@@QBE?AV?$QVector@VQTextFormat@@@@XZ @ 25 NONAME ; class QVector<class QTextFormat> SmfPostProvider::supportedFormats(void) const
-	?getStaticMetaObject@SmfMusicSearch@@SAABUQMetaObject@@XZ @ 26 NONAME ; struct QMetaObject const & SmfMusicSearch::getStaticMetaObject(void)
-	??1SmfContactFetcher@@UAE@XZ @ 27 NONAME ; SmfContactFetcher::~SmfContactFetcher(void)
-	?getStaticMetaObject@SmfGallery@@SAABUQMetaObject@@XZ @ 28 NONAME ; struct QMetaObject const & SmfGallery::getStaticMetaObject(void)
-	?venues@SmfMusicEvents@@QAEXVSmfLocation@@HH@Z @ 29 NONAME ; void SmfMusicEvents::venues(class SmfLocation, int, int)
-	?staticMetaObject@SmfGallery@@2UQMetaObject@@B @ 30 NONAME ; struct QMetaObject const SmfGallery::staticMetaObject
-	?customDataAvailable@SmfActivityFetcher@@IAEXABHPAVQByteArray@@@Z @ 31 NONAME ; void SmfActivityFetcher::customDataAvailable(int const &, class QByteArray *)
-	?staticMetaObject@SmfMusicEvents@@2UQMetaObject@@B @ 32 NONAME ; struct QMetaObject const SmfMusicEvents::staticMetaObject
-	??0SmfActivityFetcher@@QAE@PAVSmfProvider@@@Z @ 33 NONAME ; SmfActivityFetcher::SmfActivityFetcher(class SmfProvider *)
-	?maxItems@SmfPostProvider@@QBEHXZ @ 34 NONAME ; int SmfPostProvider::maxItems(void) const
-	?trUtf8@SmfPostProvider@@SA?AVQString@@PBD0H@Z @ 35 NONAME ; class QString SmfPostProvider::trUtf8(char const *, char const *, int)
-	?qt_metacall@SmfRelationMgr@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 36 NONAME ; int SmfRelationMgr::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??0SmfLyricsService@@QAE@PAVSmfProvider@@@Z @ 37 NONAME ; SmfLyricsService::SmfLyricsService(class SmfProvider *)
-	?metaObject@SmfGallery@@UBEPBUQMetaObject@@XZ @ 38 NONAME ; struct QMetaObject const * SmfGallery::metaObject(void) const
-	?qt_metacast@SmfActivityFetcher@@UAEPAXPBD@Z @ 39 NONAME ; void * SmfActivityFetcher::qt_metacast(char const *)
-	?qt_metacall@SmfLyricsService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 40 NONAME ; int SmfLyricsService::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?qt_metacast@SmfMusicEvents@@UAEPAXPBD@Z @ 41 NONAME ; void * SmfMusicEvents::qt_metacast(char const *)
-	?metaObject@SmfMusicEvents@@UBEPBUQMetaObject@@XZ @ 42 NONAME ; struct QMetaObject const * SmfMusicEvents::metaObject(void) const
-	?trUtf8@SmfContactFetcher@@SA?AVQString@@PBD0H@Z @ 43 NONAME ; class QString SmfContactFetcher::trUtf8(char const *, char const *, int)
-	??_ESmfPlaylistService@@UAE@I@Z @ 44 NONAME ; SmfPlaylistService::~SmfPlaylistService(unsigned int)
-	?trUtf8@SmfMusicEvents@@SA?AVQString@@PBD0@Z @ 45 NONAME ; class QString SmfMusicEvents::trUtf8(char const *, char const *)
-	?qt_metacall@SmfContactFetcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 46 NONAME ; int SmfContactFetcher::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?customDataAvailable@SmfMusicSearch@@IAEXABHPAVQByteArray@@@Z @ 47 NONAME ; void SmfMusicSearch::customDataAvailable(int const &, class QByteArray *)
-	?supportsAppearence@SmfPostProvider@@QBE_NXZ @ 48 NONAME ; bool SmfPostProvider::supportsAppearence(void) const
-	?commentOnAPost@SmfPostProvider@@QAEXAAVSmfPost@@0PAVSmfLocation@@@Z @ 49 NONAME ; void SmfPostProvider::commentOnAPost(class SmfPost &, class SmfPost &, class SmfLocation *)
-	?trUtf8@SmfGallery@@SA?AVQString@@PBD0@Z @ 50 NONAME ; class QString SmfGallery::trUtf8(char const *, char const *)
-	?trUtf8@SmfLyricsService@@SA?AVQString@@PBD0@Z @ 51 NONAME ; class QString SmfLyricsService::trUtf8(char const *, char const *)
-	?getStaticMetaObject@SmfPlaylistService@@SAABUQMetaObject@@XZ @ 52 NONAME ; struct QMetaObject const & SmfPlaylistService::getStaticMetaObject(void)
-	?GetServices@SmfClient@@QAEPAV?$QList@VSmfProvider@@@@ABVQString@@@Z @ 53 NONAME ; class QList<class SmfProvider> * SmfClient::GetServices(class QString const &)
-	?qt_metacall@SmfGallery@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 54 NONAME ; int SmfGallery::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?staticMetaObject@SmfLyricsService@@2UQMetaObject@@B @ 55 NONAME ; struct QMetaObject const SmfLyricsService::staticMetaObject
-	?getStaticMetaObject@SmfMusicEvents@@SAABUQMetaObject@@XZ @ 56 NONAME ; struct QMetaObject const & SmfMusicEvents::getStaticMetaObject(void)
-	?customRequest@SmfActivityFetcher@@QAEXABHPAVQByteArray@@@Z @ 57 NONAME ; void SmfActivityFetcher::customRequest(int const &, class QByteArray *)
-	?userInfoAvailable@SmfMusicService@@IAEXPAVSmfMusicProfile@@W4SmfError@@@Z @ 58 NONAME ; void SmfMusicService::userInfoAvailable(class SmfMusicProfile *, enum SmfError)
-	?staticMetaObject@SmfActivityFetcher@@2UQMetaObject@@B @ 59 NONAME ; struct QMetaObject const SmfActivityFetcher::staticMetaObject
-	?trUtf8@SmfContactFetcher@@SA?AVQString@@PBD0@Z @ 60 NONAME ; class QString SmfContactFetcher::trUtf8(char const *, char const *)
-	?customRequest@SmfGallery@@QAEXABHPAVQByteArray@@@Z @ 61 NONAME ; void SmfGallery::customRequest(int const &, class QByteArray *)
-	??1SmfMusicSearch@@UAE@XZ @ 62 NONAME ; SmfMusicSearch::~SmfMusicSearch(void)
-	?albumsAvailable@SmfGallery@@IAEXPAV?$QList@VSmfPictureAlbum@@@@W4SmfError@@USmfResultPage@@@Z @ 63 NONAME ; void SmfGallery::albumsAvailable(class QList<class SmfPictureAlbum> *, enum SmfError, struct SmfResultPage)
-	?tracks@SmfMusicSearch@@QAEXVSmfTrackInfo@@HH@Z @ 64 NONAME ; void SmfMusicSearch::tracks(class SmfTrackInfo, int, int)
-	?friendsListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 65 NONAME ; void SmfContactFetcher::friendsListAvailable(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
-	??1SmfClient@@QAE@XZ @ 66 NONAME ; SmfClient::~SmfClient(void)
-	?post@SmfPostProvider@@QAEXAAVSmfPost@@AAVSmfLocation@@@Z @ 67 NONAME ; void SmfPostProvider::post(class SmfPost &, class SmfLocation &)
-	?qt_metacast@SmfMusicSearch@@UAEPAXPBD@Z @ 68 NONAME ; void * SmfMusicSearch::qt_metacast(char const *)
-	?followers@SmfContactFetcher@@QAE_NHH@Z @ 69 NONAME ; bool SmfContactFetcher::followers(int, int)
-	??0SmfMusicService@@QAE@PAVSmfProvider@@@Z @ 70 NONAME ; SmfMusicService::SmfMusicService(class SmfProvider *)
-	?customDataAvailable@SmfLyricsService@@IAEXABHPAVQByteArray@@@Z @ 71 NONAME ; void SmfLyricsService::customDataAvailable(int const &, class QByteArray *)
-	?remove@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@PBVSmfContact@@@Z @ 72 NONAME ; enum SmfError SmfRelationMgr::remove(class QString &, class SmfContact const *)
-	?trUtf8@SmfRelationMgr@@SA?AVQString@@PBD0@Z @ 73 NONAME ; class QString SmfRelationMgr::trUtf8(char const *, char const *)
-	?venuesAvailable@SmfMusicEvents@@IAEXPAV?$QList@VSmfLocation@@@@W4SmfError@@USmfResultPage@@@Z @ 74 NONAME ; void SmfMusicEvents::venuesAvailable(class QList<class SmfLocation> *, enum SmfError, struct SmfResultPage)
-	?setContact@SmfRelationItem@@QAEXAAVSmfContact@@@Z @ 75 NONAME ; void SmfRelationItem::setContact(class SmfContact &)
-	?groupListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfGroup@@@@W4SmfError@@USmfResultPage@@@Z @ 76 NONAME ; void SmfContactFetcher::groupListAvailable(class QList<class SmfGroup> *, enum SmfError, struct SmfResultPage)
-	?searchByContact@SmfRelationMgr@@QAE?AVQString@@VSmfContact@@@Z @ 77 NONAME ; class QString SmfRelationMgr::searchByContact(class SmfContact)
-	?addToPlaylist@SmfPlaylistService@@QAEHVSmfPlaylist@@PAV?$QList@VSmfTrackInfo@@@@@Z @ 78 NONAME ; int SmfPlaylistService::addToPlaylist(class SmfPlaylist, class QList<class SmfTrackInfo> *)
-	?qt_metacast@SmfPlaylistService@@UAEPAXPBD@Z @ 79 NONAME ; void * SmfPlaylistService::qt_metacast(char const *)
-	?postCurrentPlaying@SmfMusicService@@QAEXVSmfTrackInfo@@@Z @ 80 NONAME ; void SmfMusicService::postCurrentPlaying(class SmfTrackInfo)
-	?trUtf8@SmfRelationMgr@@SA?AVQString@@PBD0H@Z @ 81 NONAME ; class QString SmfRelationMgr::trUtf8(char const *, char const *, int)
-	?trUtf8@SmfActivityFetcher@@SA?AVQString@@PBD0H@Z @ 82 NONAME ; class QString SmfActivityFetcher::trUtf8(char const *, char const *, int)
-	?metaObject@SmfPlaylistService@@UBEPBUQMetaObject@@XZ @ 83 NONAME ; struct QMetaObject const * SmfPlaylistService::metaObject(void) const
-	?getStaticMetaObject@SmfRelationMgr@@SAABUQMetaObject@@XZ @ 84 NONAME ; struct QMetaObject const & SmfRelationMgr::getStaticMetaObject(void)
-	?tr@SmfRelationMgr@@SA?AVQString@@PBD0H@Z @ 85 NONAME ; class QString SmfRelationMgr::tr(char const *, char const *, int)
-	?metaObject@SmfPostProvider@@UBEPBUQMetaObject@@XZ @ 86 NONAME ; struct QMetaObject const * SmfPostProvider::metaObject(void) const
-	?getProvider@SmfGallery@@ABEPAVSmfProvider@@XZ @ 87 NONAME ; class SmfProvider * SmfGallery::getProvider(void) const
-	??_ESmfMusicSearch@@UAE@I@Z @ 88 NONAME ; SmfMusicSearch::~SmfMusicSearch(unsigned int)
-	?tr@SmfGallery@@SA?AVQString@@PBD0@Z @ 89 NONAME ; class QString SmfGallery::tr(char const *, char const *)
-	?stores@SmfMusicSearch@@QAEXVSmfTrackInfo@@HH@Z @ 90 NONAME ; void SmfMusicSearch::stores(class SmfTrackInfo, int, int)
-	?create@SmfRelationMgr@@QAE?AVQString@@PAVSmfProvider@@PAVSmfContact@@@Z @ 91 NONAME ; class QString SmfRelationMgr::create(class SmfProvider *, class SmfContact *)
-	?qt_metacall@SmfMusicEvents@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 92 NONAME ; int SmfMusicEvents::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?qt_metacall@SmfPostProvider@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 93 NONAME ; int SmfPostProvider::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfRelationItem@@@Z @ 94 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfRelationItem &)
-	?storeSearchAvailable@SmfMusicSearch@@IAEXPAV?$QList@VSmfProvider@@@@W4SmfError@@USmfResultPage@@@Z @ 95 NONAME ; void SmfMusicSearch::storeSearchAvailable(class QList<class SmfProvider> *, enum SmfError, struct SmfResultPage)
-	?subtitles@SmfLyricsService@@QAEXVSmfTrackInfo@@W4SmfSubtitleSearchFilter@@HH@Z @ 96 NONAME ; void SmfLyricsService::subtitles(class SmfTrackInfo, enum SmfSubtitleSearchFilter, int, int)
-	?uploadFinished@SmfGallery@@IAEXV?$QList@W4SmfError@@@@@Z @ 97 NONAME ; void SmfGallery::uploadFinished(class QList<enum SmfError>)
-	?searchInGroup@SmfContactFetcher@@QAE_NVSmfGroup@@HH@Z @ 98 NONAME ; bool SmfContactFetcher::searchInGroup(class SmfGroup, int, int)
-	?getStaticMetaObject@SmfMusicService@@SAABUQMetaObject@@XZ @ 99 NONAME ; struct QMetaObject const & SmfMusicService::getStaticMetaObject(void)
-	??_ESmfContactFetcher@@UAE@I@Z @ 100 NONAME ; SmfContactFetcher::~SmfContactFetcher(unsigned int)
-	?tr@SmfGallery@@SA?AVQString@@PBD0H@Z @ 101 NONAME ; class QString SmfGallery::tr(char const *, char const *, int)
-	?getProvider@SmfRelationItem@@QBE?AVSmfProvider@@XZ @ 102 NONAME ; class SmfProvider SmfRelationItem::getProvider(void) const
-	?customRequest@SmfMusicEvents@@QAEXABHPAVQByteArray@@@Z @ 103 NONAME ; void SmfMusicEvents::customRequest(int const &, class QByteArray *)
-	?getProvider@SmfPostProvider@@ABEPAVSmfProvider@@XZ @ 104 NONAME ; class SmfProvider * SmfPostProvider::getProvider(void) const
-	?metaObject@SmfMusicSearch@@UBEPBUQMetaObject@@XZ @ 105 NONAME ; struct QMetaObject const * SmfMusicSearch::metaObject(void) const
-	?getProvider@SmfPlaylistService@@ABEPAVSmfProvider@@XZ @ 106 NONAME ; class SmfProvider * SmfPlaylistService::getProvider(void) const
-	?customDataAvailable@SmfContactFetcher@@IAEXHPAVQByteArray@@@Z @ 107 NONAME ; void SmfContactFetcher::customDataAvailable(int, class QByteArray *)
-	?trUtf8@SmfPostProvider@@SA?AVQString@@PBD0@Z @ 108 NONAME ; class QString SmfPostProvider::trUtf8(char const *, char const *)
-	?getStaticMetaObject@SmfContactFetcher@@SAABUQMetaObject@@XZ @ 109 NONAME ; struct QMetaObject const & SmfContactFetcher::getStaticMetaObject(void)
-	?customDataAvailable@SmfGallery@@IAEXHPAVQByteArray@@@Z @ 110 NONAME ; void SmfGallery::customDataAvailable(int, class QByteArray *)
-	?tr@SmfPostProvider@@SA?AVQString@@PBD0@Z @ 111 NONAME ; class QString SmfPostProvider::tr(char const *, char const *)
-	??1SmfPostProvider@@UAE@XZ @ 112 NONAME ; SmfPostProvider::~SmfPostProvider(void)
-	?trackInfo@SmfMusicSearch@@QAEXVSmfMusicFingerPrint@@HH@Z @ 113 NONAME ; void SmfMusicSearch::trackInfo(class SmfMusicFingerPrint, int, int)
-	?lyricsAvailable@SmfLyricsService@@IAEXPAV?$QList@VSmfLyrics@@@@W4SmfError@@USmfResultPage@@@Z @ 114 NONAME ; void SmfLyricsService::lyricsAvailable(class QList<class SmfLyrics> *, enum SmfError, struct SmfResultPage)
-	?tr@SmfPlaylistService@@SA?AVQString@@PBD0@Z @ 115 NONAME ; class QString SmfPlaylistService::tr(char const *, char const *)
-	?tr@SmfLyricsService@@SA?AVQString@@PBD0H@Z @ 116 NONAME ; class QString SmfLyricsService::tr(char const *, char const *, int)
-	?customRequest@SmfContactFetcher@@QAEXABHPAVQByteArray@@@Z @ 117 NONAME ; void SmfContactFetcher::customRequest(int const &, class QByteArray *)
-	?friends@SmfContactFetcher@@QAE_NHH@Z @ 118 NONAME ; bool SmfContactFetcher::friends(int, int)
-	?tr@SmfActivityFetcher@@SA?AVQString@@PBD0H@Z @ 119 NONAME ; class QString SmfActivityFetcher::tr(char const *, char const *, int)
-	?resultsAvailable@SmfActivityFetcher@@IAEXPAV?$QList@VSmfActivityEntry@@@@W4SmfError@@USmfResultPage@@@Z @ 120 NONAME ; void SmfActivityFetcher::resultsAvailable(class QList<class SmfActivityEntry> *, enum SmfError, struct SmfResultPage)
-	??_ESmfPostProvider@@UAE@I@Z @ 121 NONAME ; SmfPostProvider::~SmfPostProvider(unsigned int)
-	?qt_metacall@SmfMusicService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 122 NONAME ; int SmfMusicService::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?qt_metacall@SmfPlaylistService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 123 NONAME ; int SmfPlaylistService::qt_metacall(enum QMetaObject::Call, int, void * *)
-	??_ESmfMusicService@@UAE@I@Z @ 124 NONAME ; SmfMusicService::~SmfMusicService(unsigned int)
-	?trUtf8@SmfActivityFetcher@@SA?AVQString@@PBD0@Z @ 125 NONAME ; class QString SmfActivityFetcher::trUtf8(char const *, char const *)
-	?tr@SmfPostProvider@@SA?AVQString@@PBD0H@Z @ 126 NONAME ; class QString SmfPostProvider::tr(char const *, char const *, int)
-	?customRequest@SmfLyricsService@@QAEXABHPAVQByteArray@@@Z @ 127 NONAME ; void SmfLyricsService::customRequest(int const &, class QByteArray *)
-	?customRequest@SmfMusicService@@QAEXABHPAVQByteArray@@@Z @ 128 NONAME ; void SmfMusicService::customRequest(int const &, class QByteArray *)
-	?Delete@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@@Z @ 129 NONAME ; enum SmfError SmfRelationMgr::Delete(class QString &)
-	?metaObject@SmfLyricsService@@UBEPBUQMetaObject@@XZ @ 130 NONAME ; struct QMetaObject const * SmfLyricsService::metaObject(void) const
-	??1SmfMusicEvents@@UAE@XZ @ 131 NONAME ; SmfMusicEvents::~SmfMusicEvents(void)
-	?trUtf8@SmfMusicEvents@@SA?AVQString@@PBD0H@Z @ 132 NONAME ; class QString SmfMusicEvents::trUtf8(char const *, char const *, int)
-	?getAll@SmfRelationMgr@@QAE?AV?$QList@VSmfRelationItem@@@@AAVQString@@@Z @ 133 NONAME ; class QList<class SmfRelationItem> SmfRelationMgr::getAll(class QString &)
-	?trUtf8@SmfGallery@@SA?AVQString@@PBD0H@Z @ 134 NONAME ; class QString SmfGallery::trUtf8(char const *, char const *, int)
-	?eventsAvailable@SmfMusicEvents@@IAEXPAV?$QList@VSmfEvent@@@@W4SmfError@@USmfResultPage@@@Z @ 135 NONAME ; void SmfMusicEvents::eventsAvailable(class QList<class SmfEvent> *, enum SmfError, struct SmfResultPage)
-	?tr@SmfMusicEvents@@SA?AVQString@@PBD0H@Z @ 136 NONAME ; class QString SmfMusicEvents::tr(char const *, char const *, int)
-	??_ESmfRelationMgr@@UAE@I@Z @ 137 NONAME ; SmfRelationMgr::~SmfRelationMgr(unsigned int)
-	?events@SmfMusicEvents@@QAEXVSmfLocation@@HH@Z @ 138 NONAME ; void SmfMusicEvents::events(class SmfLocation, int, int)
-	?followersListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 139 NONAME ; void SmfContactFetcher::followersListAvailable(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
-	?albums@SmfGallery@@QAEXVQStringList@@PAVSmfContact@@HH@Z @ 140 NONAME ; void SmfGallery::albums(class QStringList, class SmfContact *, int, int)
-	??0SmfRelationItem@@QAE@PAVSmfProvider@@@Z @ 141 NONAME ; SmfRelationItem::SmfRelationItem(class SmfProvider *)
-	?recommendations@SmfMusicSearch@@QAEXVSmfTrackInfo@@HH@Z @ 142 NONAME ; void SmfMusicSearch::recommendations(class SmfTrackInfo, int, int)
-	?search@SmfContactFetcher@@QAEXPAVSmfContact@@HH@Z @ 143 NONAME ; void SmfContactFetcher::search(class SmfContact *, int, int)
-	?customRequest@SmfMusicSearch@@QAEXABHPAVQByteArray@@@Z @ 144 NONAME ; void SmfMusicSearch::customRequest(int const &, class QByteArray *)
-	?userinfo@SmfMusicService@@QAEXXZ @ 145 NONAME ; void SmfMusicService::userinfo(void)
-	??0SmfPostProvider@@QAE@PAVSmfProvider@@@Z @ 146 NONAME ; SmfPostProvider::SmfPostProvider(class SmfProvider *)
-	?tr@SmfLyricsService@@SA?AVQString@@PBD0@Z @ 147 NONAME ; class QString SmfLyricsService::tr(char const *, char const *)
-	?getStaticMetaObject@SmfLyricsService@@SAABUQMetaObject@@XZ @ 148 NONAME ; struct QMetaObject const & SmfLyricsService::getStaticMetaObject(void)
-	?playlistUpdated@SmfPlaylistService@@IAEXW4SmfError@@@Z @ 149 NONAME ; void SmfPlaylistService::playlistUpdated(enum SmfError)
-	??_ESmfActivityFetcher@@UAE@I@Z @ 150 NONAME ; SmfActivityFetcher::~SmfActivityFetcher(unsigned int)
-	?trUtf8@SmfMusicService@@SA?AVQString@@PBD0H@Z @ 151 NONAME ; class QString SmfMusicService::trUtf8(char const *, char const *, int)
-	??1SmfActivityFetcher@@UAE@XZ @ 152 NONAME ; SmfActivityFetcher::~SmfActivityFetcher(void)
-	??_ESmfRelationItem@@QAE@I@Z @ 153 NONAME ; SmfRelationItem::~SmfRelationItem(unsigned int)
-	?tr@SmfContactFetcher@@SA?AVQString@@PBD0H@Z @ 154 NONAME ; class QString SmfContactFetcher::tr(char const *, char const *, int)
-	??0SmfMusicSearch@@QAE@PAVSmfProvider@@@Z @ 155 NONAME ; SmfMusicSearch::SmfMusicSearch(class SmfProvider *)
-	?picturesAvailable@SmfGallery@@IAEXPAV?$QList@VSmfPicture@@@@W4SmfError@@USmfResultPage@@@Z @ 156 NONAME ; void SmfGallery::picturesAvailable(class QList<class SmfPicture> *, enum SmfError, struct SmfResultPage)
-	?trUtf8@SmfLyricsService@@SA?AVQString@@PBD0H@Z @ 157 NONAME ; class QString SmfLyricsService::trUtf8(char const *, char const *, int)
-	?getProvider@SmfLyricsService@@ABEPAVSmfProvider@@XZ @ 158 NONAME ; class SmfProvider * SmfLyricsService::getProvider(void) const
-	?posts@SmfPostProvider@@QAEXPAVSmfContact@@HH@Z @ 159 NONAME ; void SmfPostProvider::posts(class SmfContact *, int, int)
-	??1SmfLyricsService@@UAE@XZ @ 160 NONAME ; SmfLyricsService::~SmfLyricsService(void)
-	??0SmfContactFetcher@@QAE@PAVSmfProvider@@PAVSmfContact@@@Z @ 161 NONAME ; SmfContactFetcher::SmfContactFetcher(class SmfProvider *, class SmfContact *)
-	?upload@SmfGallery@@QAEXPAV?$QList@VSmfPicture@@@@PAVSmfPictureAlbum@@@Z @ 162 NONAME ; void SmfGallery::upload(class QList<class SmfPicture> *, class SmfPictureAlbum *)
-	?qt_metacast@SmfMusicService@@UAEPAXPBD@Z @ 163 NONAME ; void * SmfMusicService::qt_metacast(char const *)
-	?postfinished@SmfMusicService@@IAEXW4SmfError@@@Z @ 164 NONAME ; void SmfMusicService::postfinished(enum SmfError)
-	?errorString@SmfClient@@QBE?AVQString@@ABW4SmfError@@@Z @ 165 NONAME ; class QString SmfClient::errorString(enum SmfError const &) const
-	?staticMetaObject@SmfPlaylistService@@2UQMetaObject@@B @ 166 NONAME ; struct QMetaObject const SmfPlaylistService::staticMetaObject
-	?getProvider@SmfContactFetcher@@ABEPAVSmfProvider@@XZ @ 167 NONAME ; class SmfProvider * SmfContactFetcher::getProvider(void) const
-	?trUtf8@SmfPlaylistService@@SA?AVQString@@PBD0H@Z @ 168 NONAME ; class QString SmfPlaylistService::trUtf8(char const *, char const *, int)
-	?groups@SmfContactFetcher@@QAE_NHH@Z @ 169 NONAME ; bool SmfContactFetcher::groups(int, int)
-	?getStaticMetaObject@SmfActivityFetcher@@SAABUQMetaObject@@XZ @ 170 NONAME ; struct QMetaObject const & SmfActivityFetcher::getStaticMetaObject(void)
-	?staticMetaObject@SmfPostProvider@@2UQMetaObject@@B @ 171 NONAME ; struct QMetaObject const SmfPostProvider::staticMetaObject
-	??0SmfRelationItem@@QAE@ABV0@@Z @ 172 NONAME ; SmfRelationItem::SmfRelationItem(class SmfRelationItem const &)
-	?sharePost@SmfPostProvider@@QAEXAAVSmfPost@@AAVSmfContact@@_N@Z @ 173 NONAME ; void SmfPostProvider::sharePost(class SmfPost &, class SmfContact &, bool)
-	?updatePost@SmfPostProvider@@QAEXAAVSmfPost@@@Z @ 174 NONAME ; void SmfPostProvider::updatePost(class SmfPost &)
-	?postFinished@SmfPostProvider@@IAEXW4SmfError@@@Z @ 175 NONAME ; void SmfPostProvider::postFinished(enum SmfError)
-	??_ESmfLyricsService@@UAE@I@Z @ 176 NONAME ; SmfLyricsService::~SmfLyricsService(unsigned int)
-	?customDataAvailable@SmfPlaylistService@@IAEXABHPAVQByteArray@@@Z @ 177 NONAME ; void SmfPlaylistService::customDataAvailable(int const &, class QByteArray *)
-	?getContact@SmfRelationItem@@QBE?AVSmfContact@@XZ @ 178 NONAME ; class SmfContact SmfRelationItem::getContact(void) const
-	?qt_metacall@SmfActivityFetcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 179 NONAME ; int SmfActivityFetcher::qt_metacall(enum QMetaObject::Call, int, void * *)
-	?customDataAvailable@SmfPostProvider@@IAEXHPAVQByteArray@@@Z @ 180 NONAME ; void SmfPostProvider::customDataAvailable(int, class QByteArray *)
-	?postComment@SmfGallery@@QAEXVSmfPicture@@VSmfComment@@@Z @ 181 NONAME ; void SmfGallery::postComment(class SmfPicture, class SmfComment)
-	?staticMetaObject@SmfMusicService@@2UQMetaObject@@B @ 182 NONAME ; struct QMetaObject const SmfMusicService::staticMetaObject
-	?staticMetaObject@SmfMusicSearch@@2UQMetaObject@@B @ 183 NONAME ; struct QMetaObject const SmfMusicSearch::staticMetaObject
-	??_ESmfGallery@@UAE@I@Z @ 184 NONAME ; SmfGallery::~SmfGallery(unsigned int)
-	?trUtf8@SmfMusicService@@SA?AVQString@@PBD0@Z @ 185 NONAME ; class QString SmfMusicService::trUtf8(char const *, char const *)
-	?qt_metacast@SmfGallery@@UAEPAXPBD@Z @ 186 NONAME ; void * SmfGallery::qt_metacast(char const *)
-	?tr@SmfMusicService@@SA?AVQString@@PBD0@Z @ 187 NONAME ; class QString SmfMusicService::tr(char const *, char const *)
-	?playlistsOf@SmfPlaylistService@@QAEXPAVSmfMusicProfile@@HH@Z @ 188 NONAME ; void SmfPlaylistService::playlistsOf(class SmfMusicProfile *, int, int)
-	?metaObject@SmfMusicService@@UBEPBUQMetaObject@@XZ @ 189 NONAME ; struct QMetaObject const * SmfMusicService::metaObject(void) const
-	?trUtf8@SmfMusicSearch@@SA?AVQString@@PBD0H@Z @ 190 NONAME ; class QString SmfMusicSearch::trUtf8(char const *, char const *, int)
-	?tr@SmfMusicSearch@@SA?AVQString@@PBD0H@Z @ 191 NONAME ; class QString SmfMusicSearch::tr(char const *, char const *, int)
-	?getProvider@SmfMusicEvents@@ABEPAVSmfProvider@@XZ @ 192 NONAME ; class SmfProvider * SmfMusicEvents::getProvider(void) const
-	?description@SmfGallery@@QAEXAAVSmfPicture@@@Z @ 193 NONAME ; void SmfGallery::description(class SmfPicture &)
-	?postEvents@SmfMusicEvents@@QAEXV?$QList@VSmfEvent@@@@@Z @ 194 NONAME ; void SmfMusicEvents::postEvents(class QList<class SmfEvent>)
-	?customRequest@SmfPlaylistService@@QAEXABHPAVQByteArray@@@Z @ 195 NONAME ; void SmfPlaylistService::customRequest(int const &, class QByteArray *)
-	?tr@SmfPlaylistService@@SA?AVQString@@PBD0H@Z @ 196 NONAME ; class QString SmfPlaylistService::tr(char const *, char const *, int)
-	?postsAvailable@SmfPostProvider@@IAEXPAV?$QList@VSmfPost@@@@W4SmfError@@USmfResultPage@@@Z @ 197 NONAME ; void SmfPostProvider::postsAvailable(class QList<class SmfPost> *, enum SmfError, struct SmfResultPage)
-	??0SmfMusicEvents@@QAE@PAVSmfProvider@@@Z @ 198 NONAME ; SmfMusicEvents::SmfMusicEvents(class SmfProvider *)
-	??0SmfRelationMgr@@QAE@PAVQObject@@@Z @ 199 NONAME ; SmfRelationMgr::SmfRelationMgr(class QObject *)
-	??1SmfGallery@@UAE@XZ @ 200 NONAME ; SmfGallery::~SmfGallery(void)
-	??0SmfContactFetcher@@QAE@PAVSmfProvider@@@Z @ 201 NONAME ; SmfContactFetcher::SmfContactFetcher(class SmfProvider *)
-	?tr@SmfMusicSearch@@SA?AVQString@@PBD0@Z @ 202 NONAME ; class QString SmfMusicSearch::tr(char const *, char const *)
-	?postDirected@SmfPostProvider@@QAEXAAVSmfPost@@AAVSmfContact@@PAVSmfLocation@@@Z @ 203 NONAME ; void SmfPostProvider::postDirected(class SmfPost &, class SmfContact &, class SmfLocation *)
-	?subtitleAvailable@SmfLyricsService@@IAEXPAV?$QList@VSmfSubtitle@@@@W4SmfError@@USmfResultPage@@@Z @ 204 NONAME ; void SmfLyricsService::subtitleAvailable(class QList<class SmfSubtitle> *, enum SmfError, struct SmfResultPage)
-	?friendsActivities@SmfActivityFetcher@@QAEXABVSmfContact@@HH@Z @ 205 NONAME ; void SmfActivityFetcher::friendsActivities(class SmfContact const &, int, int)
-	?getProvider@SmfMusicService@@ABEPAVSmfProvider@@XZ @ 206 NONAME ; class SmfProvider * SmfMusicService::getProvider(void) const
-	?staticMetaObject@SmfContactFetcher@@2UQMetaObject@@B @ 207 NONAME ; struct QMetaObject const SmfContactFetcher::staticMetaObject
-	?searchNearFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 208 NONAME ; void SmfContactFetcher::searchNearFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
-	?searchContactFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 209 NONAME ; void SmfContactFetcher::searchContactFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
-	?postRating@SmfMusicService@@QAEXVSmfTrackInfo@@VSmfMusicRating@@@Z @ 210 NONAME ; void SmfMusicService::postRating(class SmfTrackInfo, class SmfMusicRating)
-	?metaObject@SmfContactFetcher@@UBEPBUQMetaObject@@XZ @ 211 NONAME ; struct QMetaObject const * SmfContactFetcher::metaObject(void) const
-	?searchInGroupFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 212 NONAME ; void SmfContactFetcher::searchInGroupFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
-	??1SmfRelationMgr@@UAE@XZ @ 213 NONAME ; SmfRelationMgr::~SmfRelationMgr(void)
-	?qt_metacast@SmfPostProvider@@UAEPAXPBD@Z @ 214 NONAME ; void * SmfPostProvider::qt_metacast(char const *)
-	?pictures@SmfGallery@@QAEXAAV?$QList@VSmfPictureAlbum@@@@HH@Z @ 215 NONAME ; void SmfGallery::pictures(class QList<class SmfPictureAlbum> &, int, int)
-	?selfActivities@SmfActivityFetcher@@QAEXHH@Z @ 216 NONAME ; void SmfActivityFetcher::selfActivities(int, int)
-	?getAllRelations@SmfRelationMgr@@QAE?AV?$QList@VQString@@@@XZ @ 217 NONAME ; class QList<class QString> SmfRelationMgr::getAllRelations(void)
-	?qt_metacast@SmfRelationMgr@@UAEPAXPBD@Z @ 218 NONAME ; void * SmfRelationMgr::qt_metacast(char const *)
-	?postComments@SmfMusicService@@QAEXVSmfTrackInfo@@VSmfComment@@@Z @ 219 NONAME ; void SmfMusicService::postComments(class SmfTrackInfo, class SmfComment)
-	?searchInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfMusicProfile@@@@W4SmfError@@USmfResultPage@@@Z @ 220 NONAME ; void SmfMusicService::searchInfoAvailable(class QList<class SmfMusicProfile> *, enum SmfError, struct SmfResultPage)
-	?setProvider@SmfRelationItem@@QAEXAAVSmfProvider@@@Z @ 221 NONAME ; void SmfRelationItem::setProvider(class SmfProvider &)
-	?setIndex@SmfRelationItem@@QAEXI@Z @ 222 NONAME ; void SmfRelationItem::setIndex(unsigned int)
-	?qt_metacast@SmfLyricsService@@UAEPAXPBD@Z @ 223 NONAME ; void * SmfLyricsService::qt_metacast(char const *)
-	?customRequest@SmfPostProvider@@QAEXABHPAVQByteArray@@@Z @ 224 NONAME ; void SmfPostProvider::customRequest(int const &, class QByteArray *)
-	?tr@SmfActivityFetcher@@SA?AVQString@@PBD0@Z @ 225 NONAME ; class QString SmfActivityFetcher::tr(char const *, char const *)
-	?tr@SmfMusicService@@SA?AVQString@@PBD0H@Z @ 226 NONAME ; class QString SmfMusicService::tr(char const *, char const *, int)
-	?postCurrentPlayingPlaylist@SmfPlaylistService@@QAEHVSmfPlaylist@@@Z @ 227 NONAME ; int SmfPlaylistService::postCurrentPlayingPlaylist(class SmfPlaylist)
-	??0SmfPlaylistService@@QAE@PAVSmfProvider@@@Z @ 228 NONAME ; SmfPlaylistService::SmfPlaylistService(class SmfProvider *)
-	?searchUser@SmfMusicService@@QAEXVSmfLocation@@HH@Z @ 229 NONAME ; void SmfMusicService::searchUser(class SmfLocation, int, int)
-	?metaObject@SmfRelationMgr@@UBEPBUQMetaObject@@XZ @ 230 NONAME ; struct QMetaObject const * SmfRelationMgr::metaObject(void) const
-	?tr@SmfMusicEvents@@SA?AVQString@@PBD0@Z @ 231 NONAME ; class QString SmfMusicEvents::tr(char const *, char const *)
-	?metaObject@SmfActivityFetcher@@UBEPBUQMetaObject@@XZ @ 232 NONAME ; struct QMetaObject const * SmfActivityFetcher::metaObject(void) const
-	?playlists@SmfPlaylistService@@QAEXHH@Z @ 233 NONAME ; void SmfPlaylistService::playlists(int, int)
-	?searchNear@SmfContactFetcher@@QAE_NPAVSmfLocation@@W4SmfLocationSearchBoundary@@HH@Z @ 234 NONAME ; bool SmfContactFetcher::searchNear(class SmfLocation *, enum SmfLocationSearchBoundary, int, int)
-	?playlistsListAvailable@SmfPlaylistService@@IAEXPAV?$QList@VSmfPlaylist@@@@W4SmfError@@USmfResultPage@@@Z @ 235 NONAME ; void SmfPlaylistService::playlistsListAvailable(class QList<class SmfPlaylist> *, enum SmfError, struct SmfResultPage)
-	?trackSearchAvailable@SmfMusicSearch@@IAEXPAV?$QList@VSmfTrackInfo@@@@W4SmfError@@USmfResultPage@@@Z @ 236 NONAME ; void SmfMusicSearch::trackSearchAvailable(class QList<class SmfTrackInfo> *, enum SmfError, struct SmfResultPage)
-	?qt_metacast@SmfContactFetcher@@UAEPAXPBD@Z @ 237 NONAME ; void * SmfContactFetcher::qt_metacast(char const *)
-	?upload@SmfGallery@@QAEXPAVSmfPicture@@PAVSmfPictureAlbum@@@Z @ 238 NONAME ; void SmfGallery::upload(class SmfPicture *, class SmfPictureAlbum *)
-	??_ESmfMusicEvents@@UAE@I@Z @ 239 NONAME ; SmfMusicEvents::~SmfMusicEvents(unsigned int)
-	?get@SmfRelationMgr@@QAEPAVSmfRelationItem@@AAVQString@@I@Z @ 240 NONAME ; class SmfRelationItem * SmfRelationMgr::get(class QString &, unsigned int)
-	?searchById@SmfRelationMgr@@QAEPAVSmfRelationItem@@ABVQString@@@Z @ 241 NONAME ; class SmfRelationItem * SmfRelationMgr::searchById(class QString const &)
-	?associate@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@PBVSmfContact@@PAVSmfProvider@@@Z @ 242 NONAME ; enum SmfError SmfRelationMgr::associate(class QString &, class SmfContact const *, class SmfProvider *)
-	?postAppearence@SmfPostProvider@@QAE_NW4SmfAppearenceInfo@@ABVQString@@@Z @ 243 NONAME ; bool SmfPostProvider::postAppearence(enum SmfAppearenceInfo, class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfRelationItem@@@Z @ 1 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfRelationItem const &)
+	??0SmfGallery@@QAE@PAVSmfProvider@@@Z @ 2 NONAME ; SmfGallery::SmfGallery(class SmfProvider *)
+	?postComments@SmfMusicService@@QAE?AW4SmfError@@VSmfTrackInfo@@VSmfComment@@@Z @ 3 NONAME ; enum SmfError SmfMusicService::postComments(class SmfTrackInfo, class SmfComment)
+	??0SmfClient@@QAE@XZ @ 4 NONAME ; SmfClient::SmfClient(void)
+	?tr@SmfContactFetcher@@SA?AVQString@@PBD0@Z @ 5 NONAME ; class QString SmfContactFetcher::tr(char const *, char const *)
+	?getIndex@SmfRelationItem@@QBEIXZ @ 6 NONAME ; unsigned int SmfRelationItem::getIndex(void) const
+	?trUtf8@SmfMusicSearch@@SA?AVQString@@PBD0@Z @ 7 NONAME ; class QString SmfMusicSearch::trUtf8(char const *, char const *)
+	?getProvider@SmfMusicSearch@@ABEPAVSmfProvider@@XZ @ 8 NONAME ; class SmfProvider * SmfMusicSearch::getProvider(void) const
+	?getStaticMetaObject@SmfPostProvider@@SAABUQMetaObject@@XZ @ 9 NONAME ; struct QMetaObject const & SmfPostProvider::getStaticMetaObject(void)
+	?tr@SmfRelationMgr@@SA?AVQString@@PBD0@Z @ 10 NONAME ; class QString SmfRelationMgr::tr(char const *, char const *)
+	?customDataAvailable@SmfMusicService@@IAEXABHPAVQByteArray@@@Z @ 11 NONAME ; void SmfMusicService::customDataAvailable(int const &, class QByteArray *)
+	??1SmfRelationItem@@QAE@XZ @ 12 NONAME ; SmfRelationItem::~SmfRelationItem(void)
+	?updatePost@SmfPostProvider@@QAE?AW4SmfError@@AAVSmfPost@@@Z @ 13 NONAME ; enum SmfError SmfPostProvider::updatePost(class SmfPost &)
+	??1SmfPlaylistService@@UAE@XZ @ 14 NONAME ; SmfPlaylistService::~SmfPlaylistService(void)
+	?supportedFormats@SmfPostProvider@@QBE?AV?$QVector@VQTextFormat@@@@XZ @ 15 NONAME ; class QVector<class QTextFormat> SmfPostProvider::supportedFormats(void) const
+	?searchEvents@SmfMusicService@@QAE?AW4SmfError@@VSmfEvent@@HH@Z @ 16 NONAME ; enum SmfError SmfMusicService::searchEvents(class SmfEvent, int, int)
+	?getStaticMetaObject@SmfMusicSearch@@SAABUQMetaObject@@XZ @ 17 NONAME ; struct QMetaObject const & SmfMusicSearch::getStaticMetaObject(void)
+	?getStaticMetaObject@SmfGallery@@SAABUQMetaObject@@XZ @ 18 NONAME ; struct QMetaObject const & SmfGallery::getStaticMetaObject(void)
+	?staticMetaObject@SmfGallery@@2UQMetaObject@@B @ 19 NONAME ; struct QMetaObject const SmfGallery::staticMetaObject
+	?commentOnAPost@SmfPostProvider@@QAE?AW4SmfError@@AAVSmfPost@@0PAVSmfLocation@@@Z @ 20 NONAME ; enum SmfError SmfPostProvider::commentOnAPost(class SmfPost &, class SmfPost &, class SmfLocation *)
+	??0SmfActivityFetcher@@QAE@PAVSmfProvider@@@Z @ 21 NONAME ; SmfActivityFetcher::SmfActivityFetcher(class SmfProvider *)
+	?trUtf8@SmfPostProvider@@SA?AVQString@@PBD0H@Z @ 22 NONAME ; class QString SmfPostProvider::trUtf8(char const *, char const *, int)
+	?metaObject@SmfGallery@@UBEPBUQMetaObject@@XZ @ 23 NONAME ; struct QMetaObject const * SmfGallery::metaObject(void) const
+	?trUtf8@SmfEventsFetcher@@SA?AVQString@@PBD0H@Z @ 24 NONAME ; class QString SmfEventsFetcher::trUtf8(char const *, char const *, int)
+	?searchUser@SmfMusicService@@QAE?AW4SmfError@@VSmfLocation@@HH@Z @ 25 NONAME ; enum SmfError SmfMusicService::searchUser(class SmfLocation, int, int)
+	?getProvider@SmfEventsFetcher@@ABEPAVSmfProvider@@XZ @ 26 NONAME ; class SmfProvider * SmfEventsFetcher::getProvider(void) const
+	??_ESmfPlaylistService@@UAE@I@Z @ 27 NONAME ; SmfPlaylistService::~SmfPlaylistService(unsigned int)
+	?friendsActivities@SmfActivityFetcher@@QAE?AW4SmfError@@ABVSmfContact@@HH@Z @ 28 NONAME ; enum SmfError SmfActivityFetcher::friendsActivities(class SmfContact const &, int, int)
+	?customDataAvailable@SmfMusicSearch@@IAEXABHPAVQByteArray@@@Z @ 29 NONAME ; void SmfMusicSearch::customDataAvailable(int const &, class QByteArray *)
+	?supportsAppearence@SmfPostProvider@@QBE_NXZ @ 30 NONAME ; bool SmfPostProvider::supportsAppearence(void) const
+	?getStaticMetaObject@SmfPlaylistService@@SAABUQMetaObject@@XZ @ 31 NONAME ; struct QMetaObject const & SmfPlaylistService::getStaticMetaObject(void)
+	?GetServices@SmfClient@@QAEPAV?$QList@VSmfProvider@@@@ABVQString@@@Z @ 32 NONAME ; class QList<class SmfProvider> * SmfClient::GetServices(class QString const &)
+	?staticMetaObject@SmfLyricsService@@2UQMetaObject@@B @ 33 NONAME ; struct QMetaObject const SmfLyricsService::staticMetaObject
+	?staticMetaObject@SmfActivityFetcher@@2UQMetaObject@@B @ 34 NONAME ; struct QMetaObject const SmfActivityFetcher::staticMetaObject
+	?trUtf8@SmfContactFetcher@@SA?AVQString@@PBD0@Z @ 35 NONAME ; class QString SmfContactFetcher::trUtf8(char const *, char const *)
+	?friendsListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 36 NONAME ; void SmfContactFetcher::friendsListAvailable(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	?qt_metacast@SmfMusicSearch@@UAEPAXPBD@Z @ 37 NONAME ; void * SmfMusicSearch::qt_metacast(char const *)
+	?customDataAvailable@SmfLyricsService@@IAEXABHPAVQByteArray@@@Z @ 38 NONAME ; void SmfLyricsService::customDataAvailable(int const &, class QByteArray *)
+	?searchNear@SmfContactFetcher@@QAE?AW4SmfError@@PAVSmfLocation@@W4SmfLocationSearchBoundary@@HH@Z @ 39 NONAME ; enum SmfError SmfContactFetcher::searchNear(class SmfLocation *, enum SmfLocationSearchBoundary, int, int)
+	?qt_metacast@SmfPlaylistService@@UAEPAXPBD@Z @ 40 NONAME ; void * SmfPlaylistService::qt_metacast(char const *)
+	?trUtf8@SmfRelationMgr@@SA?AVQString@@PBD0H@Z @ 41 NONAME ; class QString SmfRelationMgr::trUtf8(char const *, char const *, int)
+	?trUtf8@SmfActivityFetcher@@SA?AVQString@@PBD0H@Z @ 42 NONAME ; class QString SmfActivityFetcher::trUtf8(char const *, char const *, int)
+	?metaObject@SmfPlaylistService@@UBEPBUQMetaObject@@XZ @ 43 NONAME ; struct QMetaObject const * SmfPlaylistService::metaObject(void) const
+	?tr@SmfRelationMgr@@SA?AVQString@@PBD0H@Z @ 44 NONAME ; class QString SmfRelationMgr::tr(char const *, char const *, int)
+	?metaObject@SmfPostProvider@@UBEPBUQMetaObject@@XZ @ 45 NONAME ; struct QMetaObject const * SmfPostProvider::metaObject(void) const
+	?searchArtist@SmfMusicService@@QAE?AW4SmfError@@VSmfArtists@@HH@Z @ 46 NONAME ; enum SmfError SmfMusicService::searchArtist(class SmfArtists, int, int)
+	?tr@SmfGallery@@SA?AVQString@@PBD0@Z @ 47 NONAME ; class QString SmfGallery::tr(char const *, char const *)
+	?qt_metacall@SmfPostProvider@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 48 NONAME ; int SmfPostProvider::qt_metacall(enum QMetaObject::Call, int, void * *)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfRelationItem@@@Z @ 49 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfRelationItem &)
+	?get@SmfRelationMgr@@QAEPAVSmfRelationItem@@AAVQString@@I@Z @ 50 NONAME ; class SmfRelationItem * SmfRelationMgr::get(class QString &, unsigned int)
+	?storeSearchAvailable@SmfMusicSearch@@IAEXPAV?$QList@VSmfProvider@@@@W4SmfError@@USmfResultPage@@@Z @ 51 NONAME ; void SmfMusicSearch::storeSearchAvailable(class QList<class SmfProvider> *, enum SmfError, struct SmfResultPage)
+	?pictures@SmfGallery@@QAE?AW4SmfError@@AAV?$QList@VSmfPictureAlbum@@@@HH@Z @ 52 NONAME ; enum SmfError SmfGallery::pictures(class QList<class SmfPictureAlbum> &, int, int)
+	?uploadFinished@SmfGallery@@IAEXV?$QList@W4SmfError@@@@@Z @ 53 NONAME ; void SmfGallery::uploadFinished(class QList<enum SmfError>)
+	?getStaticMetaObject@SmfMusicService@@SAABUQMetaObject@@XZ @ 54 NONAME ; struct QMetaObject const & SmfMusicService::getStaticMetaObject(void)
+	?upload@SmfGallery@@QAE?AW4SmfError@@PAVSmfPicture@@PAVSmfPictureAlbum@@@Z @ 55 NONAME ; enum SmfError SmfGallery::upload(class SmfPicture *, class SmfPictureAlbum *)
+	?tracksOfArtist@SmfMusicSearch@@QAE?AW4SmfError@@VSmfArtists@@HH@Z @ 56 NONAME ; enum SmfError SmfMusicSearch::tracksOfArtist(class SmfArtists, int, int)
+	?getProvider@SmfPostProvider@@ABEPAVSmfProvider@@XZ @ 57 NONAME ; class SmfProvider * SmfPostProvider::getProvider(void) const
+	?getProvider@SmfPlaylistService@@ABEPAVSmfProvider@@XZ @ 58 NONAME ; class SmfProvider * SmfPlaylistService::getProvider(void) const
+	?trUtf8@SmfPostProvider@@SA?AVQString@@PBD0@Z @ 59 NONAME ; class QString SmfPostProvider::trUtf8(char const *, char const *)
+	?getStaticMetaObject@SmfContactFetcher@@SAABUQMetaObject@@XZ @ 60 NONAME ; struct QMetaObject const & SmfContactFetcher::getStaticMetaObject(void)
+	?tr@SmfPostProvider@@SA?AVQString@@PBD0@Z @ 61 NONAME ; class QString SmfPostProvider::tr(char const *, char const *)
+	?tr@SmfActivityFetcher@@SA?AVQString@@PBD0H@Z @ 62 NONAME ; class QString SmfActivityFetcher::tr(char const *, char const *, int)
+	??0SmfEventsFetcher@@QAE@PAVSmfProvider@@@Z @ 63 NONAME ; SmfEventsFetcher::SmfEventsFetcher(class SmfProvider *)
+	?resultsAvailable@SmfActivityFetcher@@IAEXPAV?$QList@VSmfActivityEntry@@@@W4SmfError@@USmfResultPage@@@Z @ 64 NONAME ; void SmfActivityFetcher::resultsAvailable(class QList<class SmfActivityEntry> *, enum SmfError, struct SmfResultPage)
+	?qt_metacall@SmfMusicService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 65 NONAME ; int SmfMusicService::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?qt_metacall@SmfPlaylistService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 66 NONAME ; int SmfPlaylistService::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?trUtf8@SmfActivityFetcher@@SA?AVQString@@PBD0@Z @ 67 NONAME ; class QString SmfActivityFetcher::trUtf8(char const *, char const *)
+	?tr@SmfPostProvider@@SA?AVQString@@PBD0H@Z @ 68 NONAME ; class QString SmfPostProvider::tr(char const *, char const *, int)
+	?Delete@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@@Z @ 69 NONAME ; enum SmfError SmfRelationMgr::Delete(class QString &)
+	?metaObject@SmfLyricsService@@UBEPBUQMetaObject@@XZ @ 70 NONAME ; struct QMetaObject const * SmfLyricsService::metaObject(void) const
+	?userMusicInfoAvailable@SmfMusicService@@IAEXPAVSmfMusicProfile@@W4SmfError@@@Z @ 71 NONAME ; void SmfMusicService::userMusicInfoAvailable(class SmfMusicProfile *, enum SmfError)
+	?searchVenue@SmfMusicService@@QAE?AW4SmfError@@VSmfLocation@@HH@Z @ 72 NONAME ; enum SmfError SmfMusicService::searchVenue(class SmfLocation, int, int)
+	??0SmfPostProvider@@QAE@PAVSmfProvider@@@Z @ 73 NONAME ; SmfPostProvider::SmfPostProvider(class SmfProvider *)
+	?trUtf8@SmfMusicService@@SA?AVQString@@PBD0H@Z @ 74 NONAME ; class QString SmfMusicService::trUtf8(char const *, char const *, int)
+	?postEvents@SmfEventsFetcher@@QAE?AW4SmfError@@V?$QList@VSmfEvent@@@@@Z @ 75 NONAME ; enum SmfError SmfEventsFetcher::postEvents(class QList<class SmfEvent>)
+	??_ESmfRelationItem@@QAE@I@Z @ 76 NONAME ; SmfRelationItem::~SmfRelationItem(unsigned int)
+	?cancelRequest@SmfPostProvider@@QAE?AW4SmfError@@XZ @ 77 NONAME ; enum SmfError SmfPostProvider::cancelRequest(void)
+	?friends@SmfContactFetcher@@QAE?AW4SmfError@@HH@Z @ 78 NONAME ; enum SmfError SmfContactFetcher::friends(int, int)
+	??0SmfContactFetcher@@QAE@PAVSmfProvider@@PAVSmfContact@@@Z @ 79 NONAME ; SmfContactFetcher::SmfContactFetcher(class SmfProvider *, class SmfContact *)
+	?postComment@SmfGallery@@QAE?AW4SmfError@@VSmfPicture@@VSmfComment@@@Z @ 80 NONAME ; enum SmfError SmfGallery::postComment(class SmfPicture, class SmfComment)
+	?getProvider@SmfContactFetcher@@ABEPAVSmfProvider@@XZ @ 81 NONAME ; class SmfProvider * SmfContactFetcher::getProvider(void) const
+	??0SmfRelationItem@@QAE@ABV0@@Z @ 82 NONAME ; SmfRelationItem::SmfRelationItem(class SmfRelationItem const &)
+	?addToPlaylist@SmfPlaylistService@@QAE?AW4SmfError@@VSmfPlaylist@@PAV?$QList@VSmfTrackInfo@@@@@Z @ 83 NONAME ; enum SmfError SmfPlaylistService::addToPlaylist(class SmfPlaylist, class QList<class SmfTrackInfo> *)
+	?customDataAvailable@SmfPlaylistService@@IAEXABHPAVQByteArray@@@Z @ 84 NONAME ; void SmfPlaylistService::customDataAvailable(int const &, class QByteArray *)
+	?qt_metacall@SmfActivityFetcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 85 NONAME ; int SmfActivityFetcher::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?attendees@SmfEventsFetcher@@QAE?AW4SmfError@@VSmfEvent@@HH@Z @ 86 NONAME ; enum SmfError SmfEventsFetcher::attendees(class SmfEvent, int, int)
+	?staticMetaObject@SmfMusicService@@2UQMetaObject@@B @ 87 NONAME ; struct QMetaObject const SmfMusicService::staticMetaObject
+	?subtitles@SmfLyricsService@@QAE?AW4SmfError@@VSmfTrackInfo@@W4SmfSubtitleSearchFilter@@HH@Z @ 88 NONAME ; enum SmfError SmfLyricsService::subtitles(class SmfTrackInfo, enum SmfSubtitleSearchFilter, int, int)
+	?staticMetaObject@SmfMusicSearch@@2UQMetaObject@@B @ 89 NONAME ; struct QMetaObject const SmfMusicSearch::staticMetaObject
+	?trUtf8@SmfMusicService@@SA?AVQString@@PBD0@Z @ 90 NONAME ; class QString SmfMusicService::trUtf8(char const *, char const *)
+	?qt_metacast@SmfGallery@@UAEPAXPBD@Z @ 91 NONAME ; void * SmfGallery::qt_metacast(char const *)
+	?tr@SmfMusicService@@SA?AVQString@@PBD0@Z @ 92 NONAME ; class QString SmfMusicService::tr(char const *, char const *)
+	?metaObject@SmfMusicService@@UBEPBUQMetaObject@@XZ @ 93 NONAME ; struct QMetaObject const * SmfMusicService::metaObject(void) const
+	?cancelRequest@SmfLyricsService@@QAE?AW4SmfError@@XZ @ 94 NONAME ; enum SmfError SmfLyricsService::cancelRequest(void)
+	?trUtf8@SmfEventsFetcher@@SA?AVQString@@PBD0@Z @ 95 NONAME ; class QString SmfEventsFetcher::trUtf8(char const *, char const *)
+	?staticMetaObject@SmfEventsFetcher@@2UQMetaObject@@B @ 96 NONAME ; struct QMetaObject const SmfEventsFetcher::staticMetaObject
+	?postsAvailable@SmfPostProvider@@IAEXPAV?$QList@VSmfPost@@@@W4SmfError@@USmfResultPage@@@Z @ 97 NONAME ; void SmfPostProvider::postsAvailable(class QList<class SmfPost> *, enum SmfError, struct SmfResultPage)
+	?playlistsOf@SmfPlaylistService@@QAE?AW4SmfError@@PAVSmfContact@@HH@Z @ 98 NONAME ; enum SmfError SmfPlaylistService::playlistsOf(class SmfContact *, int, int)
+	??1SmfGallery@@UAE@XZ @ 99 NONAME ; SmfGallery::~SmfGallery(void)
+	?tracksOfAlbum@SmfMusicSearch@@QAE?AW4SmfError@@VSmfAlbum@@HH@Z @ 100 NONAME ; enum SmfError SmfMusicSearch::tracksOfAlbum(class SmfAlbum, int, int)
+	?tr@SmfMusicSearch@@SA?AVQString@@PBD0@Z @ 101 NONAME ; class QString SmfMusicSearch::tr(char const *, char const *)
+	?customDataAvailable@SmfEventsFetcher@@IAEXABHPAVQByteArray@@@Z @ 102 NONAME ; void SmfEventsFetcher::customDataAvailable(int const &, class QByteArray *)
+	?subtitleAvailable@SmfLyricsService@@IAEXPAV?$QList@VSmfSubtitle@@@@W4SmfError@@USmfResultPage@@@Z @ 103 NONAME ; void SmfLyricsService::subtitleAvailable(class QList<class SmfSubtitle> *, enum SmfError, struct SmfResultPage)
+	?associate@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@PBVSmfContact@@PAVSmfProvider@@@Z @ 104 NONAME ; enum SmfError SmfRelationMgr::associate(class QString &, class SmfContact const *, class SmfProvider *)
+	?getProvider@SmfMusicService@@ABEPAVSmfProvider@@XZ @ 105 NONAME ; class SmfProvider * SmfMusicService::getProvider(void) const
+	?staticMetaObject@SmfContactFetcher@@2UQMetaObject@@B @ 106 NONAME ; struct QMetaObject const SmfContactFetcher::staticMetaObject
+	?searchNearFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 107 NONAME ; void SmfContactFetcher::searchNearFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	?metaObject@SmfContactFetcher@@UBEPBUQMetaObject@@XZ @ 108 NONAME ; struct QMetaObject const * SmfContactFetcher::metaObject(void) const
+	?searchInGroupFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 109 NONAME ; void SmfContactFetcher::searchInGroupFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	??1SmfRelationMgr@@UAE@XZ @ 110 NONAME ; SmfRelationMgr::~SmfRelationMgr(void)
+	?qt_metacast@SmfPostProvider@@UAEPAXPBD@Z @ 111 NONAME ; void * SmfPostProvider::qt_metacast(char const *)
+	?getAllRelations@SmfRelationMgr@@QAE?AV?$QList@VQString@@@@XZ @ 112 NONAME ; class QList<class QString> SmfRelationMgr::getAllRelations(void)
+	?qt_metacast@SmfRelationMgr@@UAEPAXPBD@Z @ 113 NONAME ; void * SmfRelationMgr::qt_metacast(char const *)
+	?cancelRequest@SmfMusicService@@QAE?AW4SmfError@@XZ @ 114 NONAME ; enum SmfError SmfMusicService::cancelRequest(void)
+	?tr@SmfActivityFetcher@@SA?AVQString@@PBD0@Z @ 115 NONAME ; class QString SmfActivityFetcher::tr(char const *, char const *)
+	?tr@SmfMusicService@@SA?AVQString@@PBD0H@Z @ 116 NONAME ; class QString SmfMusicService::tr(char const *, char const *, int)
+	??0SmfPlaylistService@@QAE@PAVSmfProvider@@@Z @ 117 NONAME ; SmfPlaylistService::SmfPlaylistService(class SmfProvider *)
+	?searchArtistInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfArtists@@@@W4SmfError@@USmfResultPage@@@Z @ 118 NONAME ; void SmfMusicService::searchArtistInfoAvailable(class QList<class SmfArtists> *, enum SmfError, struct SmfResultPage)
+	?metaObject@SmfActivityFetcher@@UBEPBUQMetaObject@@XZ @ 119 NONAME ; struct QMetaObject const * SmfActivityFetcher::metaObject(void) const
+	?selfActivities@SmfActivityFetcher@@QAE?AW4SmfError@@HH@Z @ 120 NONAME ; enum SmfError SmfActivityFetcher::selfActivities(int, int)
+	?trackSearchAvailable@SmfMusicSearch@@IAEXPAV?$QList@VSmfTrackInfo@@@@W4SmfError@@USmfResultPage@@@Z @ 121 NONAME ; void SmfMusicSearch::trackSearchAvailable(class QList<class SmfTrackInfo> *, enum SmfError, struct SmfResultPage)
+	?venuesAvailable@SmfEventsFetcher@@IAEXPAV?$QList@VSmfLocation@@@@W4SmfError@@USmfResultPage@@@Z @ 122 NONAME ; void SmfEventsFetcher::venuesAvailable(class QList<class SmfLocation> *, enum SmfError, struct SmfResultPage)
+	?customRequest@SmfGallery@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 123 NONAME ; enum SmfError SmfGallery::customRequest(int const &, class QByteArray *)
+	?events@SmfEventsFetcher@@QAE?AW4SmfError@@VSmfLocation@@HH@Z @ 124 NONAME ; enum SmfError SmfEventsFetcher::events(class SmfLocation, int, int)
+	?count@SmfRelationMgr@@QAEIVQString@@@Z @ 125 NONAME ; unsigned int SmfRelationMgr::count(class QString)
+	?staticMetaObject@SmfRelationMgr@@2UQMetaObject@@B @ 126 NONAME ; struct QMetaObject const SmfRelationMgr::staticMetaObject
+	?trUtf8@SmfPlaylistService@@SA?AVQString@@PBD0@Z @ 127 NONAME ; class QString SmfPlaylistService::trUtf8(char const *, char const *)
+	?description@SmfGallery@@QAE?AW4SmfError@@AAVSmfPicture@@@Z @ 128 NONAME ; enum SmfError SmfGallery::description(class SmfPicture &)
+	?filtered@SmfActivityFetcher@@QAE?AW4SmfError@@V?$QList@W4SmfActivityObjectType@@@@HH@Z @ 129 NONAME ; enum SmfError SmfActivityFetcher::filtered(class QList<enum SmfActivityObjectType>, int, int)
+	?metaObject@SmfEventsFetcher@@UBEPBUQMetaObject@@XZ @ 130 NONAME ; struct QMetaObject const * SmfEventsFetcher::metaObject(void) const
+	?maxCharsInPost@SmfPostProvider@@QBEHXZ @ 131 NONAME ; int SmfPostProvider::maxCharsInPost(void) const
+	??1SmfEventsFetcher@@UAE@XZ @ 132 NONAME ; SmfEventsFetcher::~SmfEventsFetcher(void)
+	?qt_metacall@SmfMusicSearch@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 133 NONAME ; int SmfMusicSearch::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?getProvider@SmfActivityFetcher@@ABEPAVSmfProvider@@XZ @ 134 NONAME ; class SmfProvider * SmfActivityFetcher::getProvider(void) const
+	?customRequest@SmfContactFetcher@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 135 NONAME ; enum SmfError SmfContactFetcher::customRequest(int const &, class QByteArray *)
+	?search@SmfContactFetcher@@QAE?AW4SmfError@@PAVSmfContact@@HH@Z @ 136 NONAME ; enum SmfError SmfContactFetcher::search(class SmfContact *, int, int)
+	?cancelRequest@SmfActivityFetcher@@QAE?AW4SmfError@@XZ @ 137 NONAME ; enum SmfError SmfActivityFetcher::cancelRequest(void)
+	??1SmfMusicService@@UAE@XZ @ 138 NONAME ; SmfMusicService::~SmfMusicService(void)
+	?descriptionAvailable@SmfGallery@@IAEXVQString@@W4SmfError@@@Z @ 139 NONAME ; void SmfGallery::descriptionAvailable(class QString, enum SmfError)
+	??1SmfContactFetcher@@UAE@XZ @ 140 NONAME ; SmfContactFetcher::~SmfContactFetcher(void)
+	?customDataAvailable@SmfActivityFetcher@@IAEXABHPAVQByteArray@@@Z @ 141 NONAME ; void SmfActivityFetcher::customDataAvailable(int const &, class QByteArray *)
+	?maxItems@SmfPostProvider@@QBEHXZ @ 142 NONAME ; int SmfPostProvider::maxItems(void) const
+	??0SmfLyricsService@@QAE@PAVSmfProvider@@@Z @ 143 NONAME ; SmfLyricsService::SmfLyricsService(class SmfProvider *)
+	?postDirected@SmfPostProvider@@QAE?AW4SmfError@@AAVSmfPost@@AAVSmfContact@@PAVSmfLocation@@@Z @ 144 NONAME ; enum SmfError SmfPostProvider::postDirected(class SmfPost &, class SmfContact &, class SmfLocation *)
+	?qt_metacall@SmfRelationMgr@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 145 NONAME ; int SmfRelationMgr::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?posts@SmfPostProvider@@QAE?AW4SmfError@@PAVSmfContact@@HH@Z @ 146 NONAME ; enum SmfError SmfPostProvider::posts(class SmfContact *, int, int)
+	?qt_metacall@SmfLyricsService@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 147 NONAME ; int SmfLyricsService::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?qt_metacast@SmfActivityFetcher@@UAEPAXPBD@Z @ 148 NONAME ; void * SmfActivityFetcher::qt_metacast(char const *)
+	?tr@SmfEventsFetcher@@SA?AVQString@@PBD0@Z @ 149 NONAME ; class QString SmfEventsFetcher::tr(char const *, char const *)
+	?getStaticMetaObject@SmfEventsFetcher@@SAABUQMetaObject@@XZ @ 150 NONAME ; struct QMetaObject const & SmfEventsFetcher::getStaticMetaObject(void)
+	?trUtf8@SmfContactFetcher@@SA?AVQString@@PBD0H@Z @ 151 NONAME ; class QString SmfContactFetcher::trUtf8(char const *, char const *, int)
+	?qt_metacall@SmfContactFetcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 152 NONAME ; int SmfContactFetcher::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?tracksSimilar@SmfMusicSearch@@QAE?AW4SmfError@@VSmfTrackInfo@@HH@Z @ 153 NONAME ; enum SmfError SmfMusicSearch::tracksSimilar(class SmfTrackInfo, int, int)
+	?trUtf8@SmfGallery@@SA?AVQString@@PBD0@Z @ 154 NONAME ; class QString SmfGallery::trUtf8(char const *, char const *)
+	?trUtf8@SmfLyricsService@@SA?AVQString@@PBD0@Z @ 155 NONAME ; class QString SmfLyricsService::trUtf8(char const *, char const *)
+	?qt_metacall@SmfGallery@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 156 NONAME ; int SmfGallery::qt_metacall(enum QMetaObject::Call, int, void * *)
+	??1SmfMusicSearch@@UAE@XZ @ 157 NONAME ; SmfMusicSearch::~SmfMusicSearch(void)
+	?albumsAvailable@SmfGallery@@IAEXPAV?$QList@VSmfPictureAlbum@@@@W4SmfError@@USmfResultPage@@@Z @ 158 NONAME ; void SmfGallery::albumsAvailable(class QList<class SmfPictureAlbum> *, enum SmfError, struct SmfResultPage)
+	?recommendations@SmfMusicSearch@@QAE?AW4SmfError@@VSmfTrackInfo@@HH@Z @ 159 NONAME ; enum SmfError SmfMusicSearch::recommendations(class SmfTrackInfo, int, int)
+	??1SmfClient@@QAE@XZ @ 160 NONAME ; SmfClient::~SmfClient(void)
+	?customRequest@SmfMusicService@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 161 NONAME ; enum SmfError SmfMusicService::customRequest(int const &, class QByteArray *)
+	?searchAlbum@SmfMusicService@@QAE?AW4SmfError@@VSmfAlbum@@HH@Z @ 162 NONAME ; enum SmfError SmfMusicService::searchAlbum(class SmfAlbum, int, int)
+	??0SmfMusicService@@QAE@PAVSmfProvider@@@Z @ 163 NONAME ; SmfMusicService::SmfMusicService(class SmfProvider *)
+	?remove@SmfRelationMgr@@QAE?AW4SmfError@@AAVQString@@PBVSmfContact@@@Z @ 164 NONAME ; enum SmfError SmfRelationMgr::remove(class QString &, class SmfContact const *)
+	?trUtf8@SmfRelationMgr@@SA?AVQString@@PBD0@Z @ 165 NONAME ; class QString SmfRelationMgr::trUtf8(char const *, char const *)
+	?groupListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfGroup@@@@W4SmfError@@USmfResultPage@@@Z @ 166 NONAME ; void SmfContactFetcher::groupListAvailable(class QList<class SmfGroup> *, enum SmfError, struct SmfResultPage)
+	?setContact@SmfRelationItem@@QAEXAAVSmfContact@@@Z @ 167 NONAME ; void SmfRelationItem::setContact(class SmfContact &)
+	?searchByContact@SmfRelationMgr@@QAE?AVQString@@VSmfContact@@@Z @ 168 NONAME ; class QString SmfRelationMgr::searchByContact(class SmfContact)
+	?upload@SmfGallery@@QAE?AW4SmfError@@PAV?$QList@VSmfPicture@@@@PAVSmfPictureAlbum@@@Z @ 169 NONAME ; enum SmfError SmfGallery::upload(class QList<class SmfPicture> *, class SmfPictureAlbum *)
+	?cancelRequest@SmfEventsFetcher@@QAE?AW4SmfError@@XZ @ 170 NONAME ; enum SmfError SmfEventsFetcher::cancelRequest(void)
+	?getStaticMetaObject@SmfRelationMgr@@SAABUQMetaObject@@XZ @ 171 NONAME ; struct QMetaObject const & SmfRelationMgr::getStaticMetaObject(void)
+	??_ESmfMusicSearch@@UAE@I@Z @ 172 NONAME ; SmfMusicSearch::~SmfMusicSearch(unsigned int)
+	?getProvider@SmfGallery@@ABEPAVSmfProvider@@XZ @ 173 NONAME ; class SmfProvider * SmfGallery::getProvider(void) const
+	?searchVenueInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfLocation@@@@W4SmfError@@USmfResultPage@@@Z @ 174 NONAME ; void SmfMusicService::searchVenueInfoAvailable(class QList<class SmfLocation> *, enum SmfError, struct SmfResultPage)
+	?sharePost@SmfPostProvider@@QAE?AW4SmfError@@AAVSmfPost@@AAVSmfContact@@_N@Z @ 175 NONAME ; enum SmfError SmfPostProvider::sharePost(class SmfPost &, class SmfContact &, bool)
+	?create@SmfRelationMgr@@QAE?AVQString@@PAVSmfProvider@@PAVSmfContact@@@Z @ 176 NONAME ; class QString SmfRelationMgr::create(class SmfProvider *, class SmfContact *)
+	?stores@SmfMusicSearch@@QAE?AW4SmfError@@VSmfTrackInfo@@HH@Z @ 177 NONAME ; enum SmfError SmfMusicSearch::stores(class SmfTrackInfo, int, int)
+	?cancelRequest@SmfPlaylistService@@QAE?AW4SmfError@@XZ @ 178 NONAME ; enum SmfError SmfPlaylistService::cancelRequest(void)
+	?venues@SmfEventsFetcher@@QAE?AW4SmfError@@VSmfLocation@@HH@Z @ 179 NONAME ; enum SmfError SmfEventsFetcher::venues(class SmfLocation, int, int)
+	??_ESmfContactFetcher@@UAE@I@Z @ 180 NONAME ; SmfContactFetcher::~SmfContactFetcher(unsigned int)
+	?getProvider@SmfRelationItem@@QBE?AVSmfProvider@@XZ @ 181 NONAME ; class SmfProvider SmfRelationItem::getProvider(void) const
+	?tr@SmfGallery@@SA?AVQString@@PBD0H@Z @ 182 NONAME ; class QString SmfGallery::tr(char const *, char const *, int)
+	?searchAlbumInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfAlbum@@@@W4SmfError@@USmfResultPage@@@Z @ 183 NONAME ; void SmfMusicService::searchAlbumInfoAvailable(class QList<class SmfAlbum> *, enum SmfError, struct SmfResultPage)
+	?metaObject@SmfMusicSearch@@UBEPBUQMetaObject@@XZ @ 184 NONAME ; struct QMetaObject const * SmfMusicSearch::metaObject(void) const
+	?customDataAvailable@SmfContactFetcher@@IAEXHPAVQByteArray@@@Z @ 185 NONAME ; void SmfContactFetcher::customDataAvailable(int, class QByteArray *)
+	?customDataAvailable@SmfGallery@@IAEXHPAVQByteArray@@@Z @ 186 NONAME ; void SmfGallery::customDataAvailable(int, class QByteArray *)
+	?customRequest@SmfLyricsService@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 187 NONAME ; enum SmfError SmfLyricsService::customRequest(int const &, class QByteArray *)
+	??1SmfPostProvider@@UAE@XZ @ 188 NONAME ; SmfPostProvider::~SmfPostProvider(void)
+	?lyricsAvailable@SmfLyricsService@@IAEXPAV?$QList@VSmfLyrics@@@@W4SmfError@@USmfResultPage@@@Z @ 189 NONAME ; void SmfLyricsService::lyricsAvailable(class QList<class SmfLyrics> *, enum SmfError, struct SmfResultPage)
+	?cancelRequest@SmfGallery@@QAE?AW4SmfError@@XZ @ 190 NONAME ; enum SmfError SmfGallery::cancelRequest(void)
+	?tr@SmfLyricsService@@SA?AVQString@@PBD0H@Z @ 191 NONAME ; class QString SmfLyricsService::tr(char const *, char const *, int)
+	?tr@SmfPlaylistService@@SA?AVQString@@PBD0@Z @ 192 NONAME ; class QString SmfPlaylistService::tr(char const *, char const *)
+	?qt_metacast@SmfEventsFetcher@@UAEPAXPBD@Z @ 193 NONAME ; void * SmfEventsFetcher::qt_metacast(char const *)
+	??_ESmfPostProvider@@UAE@I@Z @ 194 NONAME ; SmfPostProvider::~SmfPostProvider(unsigned int)
+	??0SmfRelationItem@@QAE@XZ @ 195 NONAME ; SmfRelationItem::SmfRelationItem(void)
+	??_ESmfMusicService@@UAE@I@Z @ 196 NONAME ; SmfMusicService::~SmfMusicService(unsigned int)
+	?postCurrentPlayingPlaylist@SmfPlaylistService@@QAE?AW4SmfError@@VSmfPlaylist@@@Z @ 197 NONAME ; enum SmfError SmfPlaylistService::postCurrentPlayingPlaylist(class SmfPlaylist)
+	?getAll@SmfRelationMgr@@QAE?AV?$QList@VSmfRelationItem@@@@AAVQString@@@Z @ 198 NONAME ; class QList<class SmfRelationItem> SmfRelationMgr::getAll(class QString &)
+	?trUtf8@SmfGallery@@SA?AVQString@@PBD0H@Z @ 199 NONAME ; class QString SmfGallery::trUtf8(char const *, char const *, int)
+	?followersListAvailable@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 200 NONAME ; void SmfContactFetcher::followersListAvailable(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	??_ESmfRelationMgr@@UAE@I@Z @ 201 NONAME ; SmfRelationMgr::~SmfRelationMgr(unsigned int)
+	?post@SmfPostProvider@@QAE?AW4SmfError@@AAVSmfPost@@AAVSmfLocation@@@Z @ 202 NONAME ; enum SmfError SmfPostProvider::post(class SmfPost &, class SmfLocation &)
+	?customRequest@SmfPlaylistService@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 203 NONAME ; enum SmfError SmfPlaylistService::customRequest(int const &, class QByteArray *)
+	?getStaticMetaObject@SmfLyricsService@@SAABUQMetaObject@@XZ @ 204 NONAME ; struct QMetaObject const & SmfLyricsService::getStaticMetaObject(void)
+	?playlistUpdated@SmfPlaylistService@@IAEXW4SmfError@@@Z @ 205 NONAME ; void SmfPlaylistService::playlistUpdated(enum SmfError)
+	?tr@SmfLyricsService@@SA?AVQString@@PBD0@Z @ 206 NONAME ; class QString SmfLyricsService::tr(char const *, char const *)
+	?searchUserInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfMusicProfile@@@@W4SmfError@@USmfResultPage@@@Z @ 207 NONAME ; void SmfMusicService::searchUserInfoAvailable(class QList<class SmfMusicProfile> *, enum SmfError, struct SmfResultPage)
+	?groups@SmfContactFetcher@@QAE?AW4SmfError@@HH@Z @ 208 NONAME ; enum SmfError SmfContactFetcher::groups(int, int)
+	??_ESmfActivityFetcher@@UAE@I@Z @ 209 NONAME ; SmfActivityFetcher::~SmfActivityFetcher(unsigned int)
+	??1SmfActivityFetcher@@UAE@XZ @ 210 NONAME ; SmfActivityFetcher::~SmfActivityFetcher(void)
+	?tr@SmfContactFetcher@@SA?AVQString@@PBD0H@Z @ 211 NONAME ; class QString SmfContactFetcher::tr(char const *, char const *, int)
+	?searchById@SmfRelationMgr@@QAEPAVSmfRelationItem@@ABVQString@@@Z @ 212 NONAME ; class SmfRelationItem * SmfRelationMgr::searchById(class QString const &)
+	?eventsAvailable@SmfEventsFetcher@@IAEXPAV?$QList@VSmfEvent@@@@W4SmfError@@USmfResultPage@@@Z @ 213 NONAME ; void SmfEventsFetcher::eventsAvailable(class QList<class SmfEvent> *, enum SmfError, struct SmfResultPage)
+	??0SmfMusicSearch@@QAE@PAVSmfProvider@@@Z @ 214 NONAME ; SmfMusicSearch::SmfMusicSearch(class SmfProvider *)
+	?picturesAvailable@SmfGallery@@IAEXPAV?$QList@VSmfPicture@@@@W4SmfError@@USmfResultPage@@@Z @ 215 NONAME ; void SmfGallery::picturesAvailable(class QList<class SmfPicture> *, enum SmfError, struct SmfResultPage)
+	?trUtf8@SmfLyricsService@@SA?AVQString@@PBD0H@Z @ 216 NONAME ; class QString SmfLyricsService::trUtf8(char const *, char const *, int)
+	?postRating@SmfMusicService@@QAE?AW4SmfError@@VSmfTrackInfo@@VSmfMusicRating@@@Z @ 217 NONAME ; enum SmfError SmfMusicService::postRating(class SmfTrackInfo, class SmfMusicRating)
+	?getProvider@SmfLyricsService@@ABEPAVSmfProvider@@XZ @ 218 NONAME ; class SmfProvider * SmfLyricsService::getProvider(void) const
+	??1SmfLyricsService@@UAE@XZ @ 219 NONAME ; SmfLyricsService::~SmfLyricsService(void)
+	?errorString@SmfClient@@QBE?AVQString@@ABW4SmfError@@@Z @ 220 NONAME ; class QString SmfClient::errorString(enum SmfError const &) const
+	?postfinished@SmfMusicService@@IAEXW4SmfError@@@Z @ 221 NONAME ; void SmfMusicService::postfinished(enum SmfError)
+	?qt_metacast@SmfMusicService@@UAEPAXPBD@Z @ 222 NONAME ; void * SmfMusicService::qt_metacast(char const *)
+	?cancelRequest@SmfContactFetcher@@QAE?AW4SmfError@@XZ @ 223 NONAME ; enum SmfError SmfContactFetcher::cancelRequest(void)
+	?staticMetaObject@SmfPlaylistService@@2UQMetaObject@@B @ 224 NONAME ; struct QMetaObject const SmfPlaylistService::staticMetaObject
+	?trUtf8@SmfPlaylistService@@SA?AVQString@@PBD0H@Z @ 225 NONAME ; class QString SmfPlaylistService::trUtf8(char const *, char const *, int)
+	?getStaticMetaObject@SmfActivityFetcher@@SAABUQMetaObject@@XZ @ 226 NONAME ; struct QMetaObject const & SmfActivityFetcher::getStaticMetaObject(void)
+	?staticMetaObject@SmfPostProvider@@2UQMetaObject@@B @ 227 NONAME ; struct QMetaObject const SmfPostProvider::staticMetaObject
+	?qt_metacall@SmfEventsFetcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 228 NONAME ; int SmfEventsFetcher::qt_metacall(enum QMetaObject::Call, int, void * *)
+	?attendeesAvailable@SmfEventsFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 229 NONAME ; void SmfEventsFetcher::attendeesAvailable(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	?albums@SmfGallery@@QAE?AW4SmfError@@VQStringList@@PAVSmfContact@@HH@Z @ 230 NONAME ; enum SmfError SmfGallery::albums(class QStringList, class SmfContact *, int, int)
+	?getContact@SmfRelationItem@@QBE?AVSmfContact@@XZ @ 231 NONAME ; class SmfContact SmfRelationItem::getContact(void) const
+	??_ESmfLyricsService@@UAE@I@Z @ 232 NONAME ; SmfLyricsService::~SmfLyricsService(unsigned int)
+	?postFinished@SmfPostProvider@@IAEXW4SmfError@@@Z @ 233 NONAME ; void SmfPostProvider::postFinished(enum SmfError)
+	?customDataAvailable@SmfPostProvider@@IAEXHPAVQByteArray@@@Z @ 234 NONAME ; void SmfPostProvider::customDataAvailable(int, class QByteArray *)
+	?customRequest@SmfPostProvider@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 235 NONAME ; enum SmfError SmfPostProvider::customRequest(int const &, class QByteArray *)
+	?trackInfo@SmfMusicSearch@@QAE?AW4SmfError@@VSmfMusicFingerPrint@@HH@Z @ 236 NONAME ; enum SmfError SmfMusicSearch::trackInfo(class SmfMusicFingerPrint, int, int)
+	??_ESmfGallery@@UAE@I@Z @ 237 NONAME ; SmfGallery::~SmfGallery(unsigned int)
+	?userMusicInfo@SmfMusicService@@QAE?AW4SmfError@@XZ @ 238 NONAME ; enum SmfError SmfMusicService::userMusicInfo(void)
+	?lyrics@SmfLyricsService@@QAE?AW4SmfError@@VSmfTrackInfo@@HH@Z @ 239 NONAME ; enum SmfError SmfLyricsService::lyrics(class SmfTrackInfo, int, int)
+	?followers@SmfContactFetcher@@QAE?AW4SmfError@@HH@Z @ 240 NONAME ; enum SmfError SmfContactFetcher::followers(int, int)
+	?trUtf8@SmfMusicSearch@@SA?AVQString@@PBD0H@Z @ 241 NONAME ; class QString SmfMusicSearch::trUtf8(char const *, char const *, int)
+	??_ESmfEventsFetcher@@UAE@I@Z @ 242 NONAME ; SmfEventsFetcher::~SmfEventsFetcher(unsigned int)
+	?tr@SmfMusicSearch@@SA?AVQString@@PBD0H@Z @ 243 NONAME ; class QString SmfMusicSearch::tr(char const *, char const *, int)
+	?customRequest@SmfMusicSearch@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 244 NONAME ; enum SmfError SmfMusicSearch::customRequest(int const &, class QByteArray *)
+	?cancelRequest@SmfMusicSearch@@QAE?AW4SmfError@@XZ @ 245 NONAME ; enum SmfError SmfMusicSearch::cancelRequest(void)
+	?playlists@SmfPlaylistService@@QAE?AW4SmfError@@HH@Z @ 246 NONAME ; enum SmfError SmfPlaylistService::playlists(int, int)
+	??0SmfRelationMgr@@QAE@PAVQObject@@@Z @ 247 NONAME ; SmfRelationMgr::SmfRelationMgr(class QObject *)
+	?tr@SmfPlaylistService@@SA?AVQString@@PBD0H@Z @ 248 NONAME ; class QString SmfPlaylistService::tr(char const *, char const *, int)
+	??0SmfContactFetcher@@QAE@PAVSmfProvider@@@Z @ 249 NONAME ; SmfContactFetcher::SmfContactFetcher(class SmfProvider *)
+	?searchContactFinished@SmfContactFetcher@@IAEXPAV?$QList@VSmfContact@@@@W4SmfError@@USmfResultPage@@@Z @ 250 NONAME ; void SmfContactFetcher::searchContactFinished(class QList<class SmfContact> *, enum SmfError, struct SmfResultPage)
+	?eventsUpdated@SmfEventsFetcher@@IAEXW4SmfError@@@Z @ 251 NONAME ; void SmfEventsFetcher::eventsUpdated(enum SmfError)
+	?customRequest@SmfActivityFetcher@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 252 NONAME ; enum SmfError SmfActivityFetcher::customRequest(int const &, class QByteArray *)
+	?customRequest@SmfEventsFetcher@@QAE?AW4SmfError@@ABHPAVQByteArray@@@Z @ 253 NONAME ; enum SmfError SmfEventsFetcher::customRequest(int const &, class QByteArray *)
+	?qt_metacast@SmfLyricsService@@UAEPAXPBD@Z @ 254 NONAME ; void * SmfLyricsService::qt_metacast(char const *)
+	?setIndex@SmfRelationItem@@QAEXI@Z @ 255 NONAME ; void SmfRelationItem::setIndex(unsigned int)
+	?setProvider@SmfRelationItem@@QAEXAAVSmfProvider@@@Z @ 256 NONAME ; void SmfRelationItem::setProvider(class SmfProvider &)
+	?postCurrentPlaying@SmfMusicService@@QAE?AW4SmfError@@VSmfTrackInfo@@@Z @ 257 NONAME ; enum SmfError SmfMusicService::postCurrentPlaying(class SmfTrackInfo)
+	?metaObject@SmfRelationMgr@@UBEPBUQMetaObject@@XZ @ 258 NONAME ; struct QMetaObject const * SmfRelationMgr::metaObject(void) const
+	?searchInGroup@SmfContactFetcher@@QAE?AW4SmfError@@VSmfGroup@@PAVSmfContact@@HH@Z @ 259 NONAME ; enum SmfError SmfContactFetcher::searchInGroup(class SmfGroup, class SmfContact *, int, int)
+	?searchEventsInfoAvailable@SmfMusicService@@IAEXPAV?$QList@VSmfEvent@@@@W4SmfError@@USmfResultPage@@@Z @ 260 NONAME ; void SmfMusicService::searchEventsInfoAvailable(class QList<class SmfEvent> *, enum SmfError, struct SmfResultPage)
+	?tr@SmfEventsFetcher@@SA?AVQString@@PBD0H@Z @ 261 NONAME ; class QString SmfEventsFetcher::tr(char const *, char const *, int)
+	?playlistsListAvailable@SmfPlaylistService@@IAEXPAV?$QList@VSmfPlaylist@@@@W4SmfError@@USmfResultPage@@@Z @ 262 NONAME ; void SmfPlaylistService::playlistsListAvailable(class QList<class SmfPlaylist> *, enum SmfError, struct SmfResultPage)
+	?qt_metacast@SmfContactFetcher@@UAEPAXPBD@Z @ 263 NONAME ; void * SmfContactFetcher::qt_metacast(char const *)
+	?postAppearence@SmfPostProvider@@QAE?AW4SmfError@@W4SmfAppearenceInfo@@ABVQString@@@Z @ 264 NONAME ; enum SmfError SmfPostProvider::postAppearence(enum SmfAppearenceInfo, class QString const &)
 
--- a/smf/smfservermodule/smfclient/eabi/smfclientu.def	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/eabi/smfclientu.def	Thu Sep 23 17:43:31 2010 +0530
@@ -3,266 +3,265 @@
 	_ZN10SmfGallery11postCommentE10SmfPicture10SmfComment @ 2 NONAME
 	_ZN10SmfGallery11qt_metacallEN11QMetaObject4CallEiPPv @ 3 NONAME
 	_ZN10SmfGallery11qt_metacastEPKc @ 4 NONAME
-	_ZN10SmfGallery13customRequestERKiP10QByteArray @ 5 NONAME
-	_ZN10SmfGallery14uploadFinishedE5QListI8SmfErrorE @ 6 NONAME
-	_ZN10SmfGallery15albumsAvailableEP5QListI15SmfPictureAlbumE8SmfError13SmfResultPage @ 7 NONAME
-	_ZN10SmfGallery16staticMetaObjectE @ 8 NONAME DATA 16
-	_ZN10SmfGallery17picturesAvailableEP5QListI10SmfPictureE8SmfError13SmfResultPage @ 9 NONAME
-	_ZN10SmfGallery19customDataAvailableEiP10QByteArray @ 10 NONAME
-	_ZN10SmfGallery19getStaticMetaObjectEv @ 11 NONAME
-	_ZN10SmfGallery20descriptionAvailableE7QString8SmfError @ 12 NONAME
-	_ZN10SmfGallery6albumsE11QStringListP10SmfContactii @ 13 NONAME
-	_ZN10SmfGallery6uploadEP10SmfPictureP15SmfPictureAlbum @ 14 NONAME
-	_ZN10SmfGallery6uploadEP5QListI10SmfPictureEP15SmfPictureAlbum @ 15 NONAME
-	_ZN10SmfGallery8picturesER5QListI15SmfPictureAlbumEii @ 16 NONAME
-	_ZN10SmfGalleryC1EP11SmfProvider @ 17 NONAME
-	_ZN10SmfGalleryC2EP11SmfProvider @ 18 NONAME
-	_ZN10SmfGalleryD0Ev @ 19 NONAME
-	_ZN10SmfGalleryD1Ev @ 20 NONAME
-	_ZN10SmfGalleryD2Ev @ 21 NONAME
-	_ZN14SmfMusicEvents10postEventsE5QListI8SmfEventE @ 22 NONAME
-	_ZN14SmfMusicEvents11qt_metacallEN11QMetaObject4CallEiPPv @ 23 NONAME
-	_ZN14SmfMusicEvents11qt_metacastEPKc @ 24 NONAME
-	_ZN14SmfMusicEvents13customRequestERKiP10QByteArray @ 25 NONAME
-	_ZN14SmfMusicEvents13eventsUpdatedE8SmfError @ 26 NONAME
-	_ZN14SmfMusicEvents15eventsAvailableEP5QListI8SmfEventE8SmfError13SmfResultPage @ 27 NONAME
-	_ZN14SmfMusicEvents15venuesAvailableEP5QListI11SmfLocationE8SmfError13SmfResultPage @ 28 NONAME
-	_ZN14SmfMusicEvents16staticMetaObjectE @ 29 NONAME DATA 16
-	_ZN14SmfMusicEvents19customDataAvailableERKiP10QByteArray @ 30 NONAME
-	_ZN14SmfMusicEvents19getStaticMetaObjectEv @ 31 NONAME
-	_ZN14SmfMusicEvents6eventsE11SmfLocationii @ 32 NONAME
-	_ZN14SmfMusicEvents6venuesE11SmfLocationii @ 33 NONAME
-	_ZN14SmfMusicEventsC1EP11SmfProvider @ 34 NONAME
-	_ZN14SmfMusicEventsC2EP11SmfProvider @ 35 NONAME
-	_ZN14SmfMusicEventsD0Ev @ 36 NONAME
-	_ZN14SmfMusicEventsD1Ev @ 37 NONAME
-	_ZN14SmfMusicEventsD2Ev @ 38 NONAME
-	_ZN14SmfMusicSearch11qt_metacallEN11QMetaObject4CallEiPPv @ 39 NONAME
-	_ZN14SmfMusicSearch11qt_metacastEPKc @ 40 NONAME
-	_ZN14SmfMusicSearch13customRequestERKiP10QByteArray @ 41 NONAME
-	_ZN14SmfMusicSearch15recommendationsE12SmfTrackInfoii @ 42 NONAME
-	_ZN14SmfMusicSearch16staticMetaObjectE @ 43 NONAME DATA 16
-	_ZN14SmfMusicSearch19customDataAvailableERKiP10QByteArray @ 44 NONAME
-	_ZN14SmfMusicSearch19getStaticMetaObjectEv @ 45 NONAME
-	_ZN14SmfMusicSearch20storeSearchAvailableEP5QListI11SmfProviderE8SmfError13SmfResultPage @ 46 NONAME
-	_ZN14SmfMusicSearch20trackSearchAvailableEP5QListI12SmfTrackInfoE8SmfError13SmfResultPage @ 47 NONAME
-	_ZN14SmfMusicSearch6storesE12SmfTrackInfoii @ 48 NONAME
-	_ZN14SmfMusicSearch6tracksE12SmfTrackInfoii @ 49 NONAME
-	_ZN14SmfMusicSearch9trackInfoE19SmfMusicFingerPrintii @ 50 NONAME
-	_ZN14SmfMusicSearchC1EP11SmfProvider @ 51 NONAME
-	_ZN14SmfMusicSearchC2EP11SmfProvider @ 52 NONAME
-	_ZN14SmfMusicSearchD0Ev @ 53 NONAME
-	_ZN14SmfMusicSearchD1Ev @ 54 NONAME
-	_ZN14SmfMusicSearchD2Ev @ 55 NONAME
-	_ZN14SmfRelationMgr10searchByIdERK7QString @ 56 NONAME
-	_ZN14SmfRelationMgr11qt_metacallEN11QMetaObject4CallEiPPv @ 57 NONAME
-	_ZN14SmfRelationMgr11qt_metacastEPKc @ 58 NONAME
-	_ZN14SmfRelationMgr15getAllRelationsEv @ 59 NONAME
-	_ZN14SmfRelationMgr15searchByContactE10SmfContact @ 60 NONAME
-	_ZN14SmfRelationMgr16staticMetaObjectE @ 61 NONAME DATA 16
-	_ZN14SmfRelationMgr19getStaticMetaObjectEv @ 62 NONAME
-	_ZN14SmfRelationMgr3getER7QStringj @ 63 NONAME
-	_ZN14SmfRelationMgr5countE7QString @ 64 NONAME
-	_ZN14SmfRelationMgr6DeleteER7QString @ 65 NONAME
-	_ZN14SmfRelationMgr6createEP11SmfProviderP10SmfContact @ 66 NONAME
-	_ZN14SmfRelationMgr6getAllER7QString @ 67 NONAME
-	_ZN14SmfRelationMgr6removeER7QStringPK10SmfContact @ 68 NONAME
-	_ZN14SmfRelationMgr9associateER7QStringPK10SmfContactP11SmfProvider @ 69 NONAME
-	_ZN14SmfRelationMgrC1EP7QObject @ 70 NONAME
-	_ZN14SmfRelationMgrC2EP7QObject @ 71 NONAME
-	_ZN14SmfRelationMgrD0Ev @ 72 NONAME
-	_ZN14SmfRelationMgrD1Ev @ 73 NONAME
-	_ZN14SmfRelationMgrD2Ev @ 74 NONAME
-	_ZN15SmfMusicService10postRatingE12SmfTrackInfo14SmfMusicRating @ 75 NONAME
-	_ZN15SmfMusicService10searchUserE11SmfLocationii @ 76 NONAME
-	_ZN15SmfMusicService11qt_metacallEN11QMetaObject4CallEiPPv @ 77 NONAME
-	_ZN15SmfMusicService11qt_metacastEPKc @ 78 NONAME
-	_ZN15SmfMusicService12postCommentsE12SmfTrackInfo10SmfComment @ 79 NONAME
-	_ZN15SmfMusicService12postfinishedE8SmfError @ 80 NONAME
-	_ZN15SmfMusicService13customRequestERKiP10QByteArray @ 81 NONAME
-	_ZN15SmfMusicService16staticMetaObjectE @ 82 NONAME DATA 16
-	_ZN15SmfMusicService17userInfoAvailableEP15SmfMusicProfile8SmfError @ 83 NONAME
-	_ZN15SmfMusicService18postCurrentPlayingE12SmfTrackInfo @ 84 NONAME
-	_ZN15SmfMusicService19customDataAvailableERKiP10QByteArray @ 85 NONAME
-	_ZN15SmfMusicService19getStaticMetaObjectEv @ 86 NONAME
-	_ZN15SmfMusicService19searchInfoAvailableEP5QListI15SmfMusicProfileE8SmfError13SmfResultPage @ 87 NONAME
-	_ZN15SmfMusicService8userinfoEv @ 88 NONAME
-	_ZN15SmfMusicServiceC1EP11SmfProvider @ 89 NONAME
-	_ZN15SmfMusicServiceC2EP11SmfProvider @ 90 NONAME
-	_ZN15SmfMusicServiceD0Ev @ 91 NONAME
-	_ZN15SmfMusicServiceD1Ev @ 92 NONAME
-	_ZN15SmfMusicServiceD2Ev @ 93 NONAME
-	_ZN15SmfPostProvider10updatePostER7SmfPost @ 94 NONAME
-	_ZN15SmfPostProvider11qt_metacallEN11QMetaObject4CallEiPPv @ 95 NONAME
-	_ZN15SmfPostProvider11qt_metacastEPKc @ 96 NONAME
-	_ZN15SmfPostProvider12postDirectedER7SmfPostR10SmfContactP11SmfLocation @ 97 NONAME
-	_ZN15SmfPostProvider12postFinishedE8SmfError @ 98 NONAME
-	_ZN15SmfPostProvider13customRequestERKiP10QByteArray @ 99 NONAME
-	_ZN15SmfPostProvider14commentOnAPostER7SmfPostS1_P11SmfLocation @ 100 NONAME
-	_ZN15SmfPostProvider14postAppearenceE17SmfAppearenceInfoRK7QString @ 101 NONAME
-	_ZN15SmfPostProvider14postsAvailableEP5QListI7SmfPostE8SmfError13SmfResultPage @ 102 NONAME
-	_ZN15SmfPostProvider16staticMetaObjectE @ 103 NONAME DATA 16
-	_ZN15SmfPostProvider19customDataAvailableEiP10QByteArray @ 104 NONAME
-	_ZN15SmfPostProvider19getStaticMetaObjectEv @ 105 NONAME
-	_ZN15SmfPostProvider4postER7SmfPostR11SmfLocation @ 106 NONAME
-	_ZN15SmfPostProvider5postsEP10SmfContactii @ 107 NONAME
-	_ZN15SmfPostProvider9sharePostER7SmfPostR10SmfContactb @ 108 NONAME
-	_ZN15SmfPostProviderC1EP11SmfProvider @ 109 NONAME
-	_ZN15SmfPostProviderC2EP11SmfProvider @ 110 NONAME
-	_ZN15SmfPostProviderD0Ev @ 111 NONAME
-	_ZN15SmfPostProviderD1Ev @ 112 NONAME
-	_ZN15SmfPostProviderD2Ev @ 113 NONAME
-	_ZN15SmfRelationItem10setContactER10SmfContact @ 114 NONAME
-	_ZN15SmfRelationItem11setProviderER11SmfProvider @ 115 NONAME
-	_ZN15SmfRelationItem8setIndexEj @ 116 NONAME
-	_ZN15SmfRelationItemC1EP11SmfProvider @ 117 NONAME
-	_ZN15SmfRelationItemC2EP11SmfProvider @ 118 NONAME
-	_ZN16SmfLyricsService11qt_metacallEN11QMetaObject4CallEiPPv @ 119 NONAME
-	_ZN16SmfLyricsService11qt_metacastEPKc @ 120 NONAME
-	_ZN16SmfLyricsService13customRequestERKiP10QByteArray @ 121 NONAME
-	_ZN16SmfLyricsService15lyricsAvailableEP5QListI9SmfLyricsE8SmfError13SmfResultPage @ 122 NONAME
-	_ZN16SmfLyricsService16staticMetaObjectE @ 123 NONAME DATA 16
-	_ZN16SmfLyricsService17subtitleAvailableEP5QListI11SmfSubtitleE8SmfError13SmfResultPage @ 124 NONAME
-	_ZN16SmfLyricsService19customDataAvailableERKiP10QByteArray @ 125 NONAME
-	_ZN16SmfLyricsService19getStaticMetaObjectEv @ 126 NONAME
-	_ZN16SmfLyricsService6lyricsE12SmfTrackInfoii @ 127 NONAME
-	_ZN16SmfLyricsService9subtitlesE12SmfTrackInfo23SmfSubtitleSearchFilterii @ 128 NONAME
-	_ZN16SmfLyricsServiceC1EP11SmfProvider @ 129 NONAME
-	_ZN16SmfLyricsServiceC2EP11SmfProvider @ 130 NONAME
-	_ZN16SmfLyricsServiceD0Ev @ 131 NONAME
-	_ZN16SmfLyricsServiceD1Ev @ 132 NONAME
-	_ZN16SmfLyricsServiceD2Ev @ 133 NONAME
-	_ZN17SmfContactFetcher10searchNearEP11SmfLocation25SmfLocationSearchBoundaryii @ 134 NONAME
-	_ZN17SmfContactFetcher11qt_metacallEN11QMetaObject4CallEiPPv @ 135 NONAME
-	_ZN17SmfContactFetcher11qt_metacastEPKc @ 136 NONAME
-	_ZN17SmfContactFetcher13customRequestERKiP10QByteArray @ 137 NONAME
-	_ZN17SmfContactFetcher13searchInGroupE8SmfGroupii @ 138 NONAME
-	_ZN17SmfContactFetcher16staticMetaObjectE @ 139 NONAME DATA 16
-	_ZN17SmfContactFetcher18groupListAvailableEP5QListI8SmfGroupE8SmfError13SmfResultPage @ 140 NONAME
-	_ZN17SmfContactFetcher18searchNearFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 141 NONAME
-	_ZN17SmfContactFetcher19customDataAvailableEiP10QByteArray @ 142 NONAME
-	_ZN17SmfContactFetcher19getStaticMetaObjectEv @ 143 NONAME
-	_ZN17SmfContactFetcher20friendsListAvailableEP5QListI10SmfContactE8SmfError13SmfResultPage @ 144 NONAME
-	_ZN17SmfContactFetcher21searchContactFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 145 NONAME
-	_ZN17SmfContactFetcher21searchInGroupFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 146 NONAME
-	_ZN17SmfContactFetcher22followersListAvailableEP5QListI10SmfContactE8SmfError13SmfResultPage @ 147 NONAME
-	_ZN17SmfContactFetcher6groupsEii @ 148 NONAME
-	_ZN17SmfContactFetcher6searchEP10SmfContactii @ 149 NONAME
-	_ZN17SmfContactFetcher7friendsEii @ 150 NONAME
-	_ZN17SmfContactFetcher9followersEii @ 151 NONAME
-	_ZN17SmfContactFetcherC1EP11SmfProvider @ 152 NONAME
-	_ZN17SmfContactFetcherC1EP11SmfProviderP10SmfContact @ 153 NONAME
-	_ZN17SmfContactFetcherC2EP11SmfProvider @ 154 NONAME
-	_ZN17SmfContactFetcherC2EP11SmfProviderP10SmfContact @ 155 NONAME
-	_ZN17SmfContactFetcherD0Ev @ 156 NONAME
-	_ZN17SmfContactFetcherD1Ev @ 157 NONAME
-	_ZN17SmfContactFetcherD2Ev @ 158 NONAME
-	_ZN18SmfActivityFetcher11qt_metacallEN11QMetaObject4CallEiPPv @ 159 NONAME
-	_ZN18SmfActivityFetcher11qt_metacastEPKc @ 160 NONAME
-	_ZN18SmfActivityFetcher13customRequestERKiP10QByteArray @ 161 NONAME
-	_ZN18SmfActivityFetcher14selfActivitiesEii @ 162 NONAME
-	_ZN18SmfActivityFetcher16resultsAvailableEP5QListI16SmfActivityEntryE8SmfError13SmfResultPage @ 163 NONAME
-	_ZN18SmfActivityFetcher16staticMetaObjectE @ 164 NONAME DATA 16
-	_ZN18SmfActivityFetcher17friendsActivitiesERK10SmfContactii @ 165 NONAME
-	_ZN18SmfActivityFetcher19customDataAvailableERKiP10QByteArray @ 166 NONAME
-	_ZN18SmfActivityFetcher19getStaticMetaObjectEv @ 167 NONAME
-	_ZN18SmfActivityFetcher8filteredE5QListI21SmfActivityObjectTypeEii @ 168 NONAME
-	_ZN18SmfActivityFetcherC1EP11SmfProvider @ 169 NONAME
-	_ZN18SmfActivityFetcherC2EP11SmfProvider @ 170 NONAME
-	_ZN18SmfActivityFetcherD0Ev @ 171 NONAME
-	_ZN18SmfActivityFetcherD1Ev @ 172 NONAME
-	_ZN18SmfActivityFetcherD2Ev @ 173 NONAME
-	_ZN18SmfPlaylistService11playlistsOfEP15SmfMusicProfileii @ 174 NONAME
-	_ZN18SmfPlaylistService11qt_metacallEN11QMetaObject4CallEiPPv @ 175 NONAME
-	_ZN18SmfPlaylistService11qt_metacastEPKc @ 176 NONAME
-	_ZN18SmfPlaylistService13addToPlaylistE11SmfPlaylistP5QListI12SmfTrackInfoE @ 177 NONAME
-	_ZN18SmfPlaylistService13customRequestERKiP10QByteArray @ 178 NONAME
-	_ZN18SmfPlaylistService15playlistUpdatedE8SmfError @ 179 NONAME
-	_ZN18SmfPlaylistService16staticMetaObjectE @ 180 NONAME DATA 16
-	_ZN18SmfPlaylistService19customDataAvailableERKiP10QByteArray @ 181 NONAME
-	_ZN18SmfPlaylistService19getStaticMetaObjectEv @ 182 NONAME
-	_ZN18SmfPlaylistService22playlistsListAvailableEP5QListI11SmfPlaylistE8SmfError13SmfResultPage @ 183 NONAME
-	_ZN18SmfPlaylistService26postCurrentPlayingPlaylistE11SmfPlaylist @ 184 NONAME
-	_ZN18SmfPlaylistService9playlistsEii @ 185 NONAME
-	_ZN18SmfPlaylistServiceC1EP11SmfProvider @ 186 NONAME
-	_ZN18SmfPlaylistServiceC2EP11SmfProvider @ 187 NONAME
-	_ZN18SmfPlaylistServiceD0Ev @ 188 NONAME
-	_ZN18SmfPlaylistServiceD1Ev @ 189 NONAME
-	_ZN18SmfPlaylistServiceD2Ev @ 190 NONAME
-	_ZN9SmfClient11GetServicesERK7QString @ 191 NONAME
-	_ZN9SmfClientC1Ev @ 192 NONAME
-	_ZN9SmfClientC2Ev @ 193 NONAME
-	_ZN9SmfClientD1Ev @ 194 NONAME
-	_ZN9SmfClientD2Ev @ 195 NONAME
-	_ZNK10SmfGallery10metaObjectEv @ 196 NONAME
-	_ZNK10SmfGallery11getProviderEv @ 197 NONAME
-	_ZNK14SmfMusicEvents10metaObjectEv @ 198 NONAME
-	_ZNK14SmfMusicEvents11getProviderEv @ 199 NONAME
-	_ZNK14SmfMusicSearch10metaObjectEv @ 200 NONAME
-	_ZNK14SmfMusicSearch11getProviderEv @ 201 NONAME
-	_ZNK14SmfRelationMgr10metaObjectEv @ 202 NONAME
-	_ZNK15SmfMusicService10metaObjectEv @ 203 NONAME
-	_ZNK15SmfMusicService11getProviderEv @ 204 NONAME
-	_ZNK15SmfPostProvider10metaObjectEv @ 205 NONAME
-	_ZNK15SmfPostProvider11getProviderEv @ 206 NONAME
-	_ZNK15SmfPostProvider14maxCharsInPostEv @ 207 NONAME
-	_ZNK15SmfPostProvider16supportedFormatsEv @ 208 NONAME
-	_ZNK15SmfPostProvider18supportsAppearenceEv @ 209 NONAME
-	_ZNK15SmfPostProvider8maxItemsEv @ 210 NONAME
-	_ZNK15SmfRelationItem10getContactEv @ 211 NONAME
-	_ZNK15SmfRelationItem11getProviderEv @ 212 NONAME
-	_ZNK15SmfRelationItem8getIndexEv @ 213 NONAME
-	_ZNK16SmfLyricsService10metaObjectEv @ 214 NONAME
-	_ZNK16SmfLyricsService11getProviderEv @ 215 NONAME
-	_ZNK17SmfContactFetcher10metaObjectEv @ 216 NONAME
-	_ZNK17SmfContactFetcher11getProviderEv @ 217 NONAME
-	_ZNK18SmfActivityFetcher10metaObjectEv @ 218 NONAME
-	_ZNK18SmfActivityFetcher11getProviderEv @ 219 NONAME
-	_ZNK18SmfPlaylistService10metaObjectEv @ 220 NONAME
-	_ZNK18SmfPlaylistService11getProviderEv @ 221 NONAME
-	_ZNK9SmfClient11errorStringERK8SmfError @ 222 NONAME
-	_ZTI10SmfGallery @ 223 NONAME
-	_ZTI14SmfMusicEvents @ 224 NONAME
-	_ZTI14SmfMusicSearch @ 225 NONAME
-	_ZTI14SmfRelationMgr @ 226 NONAME
-	_ZTI15SmfMusicService @ 227 NONAME
-	_ZTI15SmfPostProvider @ 228 NONAME
-	_ZTI16SmfClientPrivate @ 229 NONAME
-	_ZTI16SmfLyricsService @ 230 NONAME
-	_ZTI17CSmfClientSymbian @ 231 NONAME
-	_ZTI17SmfContactFetcher @ 232 NONAME
-	_ZTI17SmfGalleryPrivate @ 233 NONAME
-	_ZTI18SmfActivityFetcher @ 234 NONAME
-	_ZTI18SmfPlaylistService @ 235 NONAME
-	_ZTI21SmfMusicEventsPrivate @ 236 NONAME
-	_ZTI21SmfMusicSearchPrivate @ 237 NONAME
-	_ZTI22SmfMusicServicePrivate @ 238 NONAME
-	_ZTI22SmfPostProviderPrivate @ 239 NONAME
-	_ZTI23SmfLyricsServicePrivate @ 240 NONAME
-	_ZTI24SmfContactFetcherPrivate @ 241 NONAME
-	_ZTI25SmfActivityFetcherPrivate @ 242 NONAME
-	_ZTI25SmfPlaylistServicePrivate @ 243 NONAME
-	_ZTV10SmfGallery @ 244 NONAME
-	_ZTV14SmfMusicEvents @ 245 NONAME
-	_ZTV14SmfMusicSearch @ 246 NONAME
-	_ZTV14SmfRelationMgr @ 247 NONAME
-	_ZTV15SmfMusicService @ 248 NONAME
-	_ZTV15SmfPostProvider @ 249 NONAME
-	_ZTV16SmfClientPrivate @ 250 NONAME
-	_ZTV16SmfLyricsService @ 251 NONAME
-	_ZTV17CSmfClientSymbian @ 252 NONAME
-	_ZTV17SmfContactFetcher @ 253 NONAME
-	_ZTV17SmfGalleryPrivate @ 254 NONAME
-	_ZTV18SmfActivityFetcher @ 255 NONAME
-	_ZTV18SmfPlaylistService @ 256 NONAME
-	_ZTV21SmfMusicEventsPrivate @ 257 NONAME
-	_ZTV21SmfMusicSearchPrivate @ 258 NONAME
-	_ZTV22SmfMusicServicePrivate @ 259 NONAME
-	_ZTV22SmfPostProviderPrivate @ 260 NONAME
-	_ZTV23SmfLyricsServicePrivate @ 261 NONAME
-	_ZTV24SmfContactFetcherPrivate @ 262 NONAME
-	_ZTV25SmfActivityFetcherPrivate @ 263 NONAME
-	_ZTV25SmfPlaylistServicePrivate @ 264 NONAME
-	_ZlsR11QDataStreamRK15SmfRelationItem @ 265 NONAME
-	_ZrsR11QDataStreamR15SmfRelationItem @ 266 NONAME
+	_ZN10SmfGallery13cancelRequestEv @ 5 NONAME
+	_ZN10SmfGallery13customRequestERKiP10QByteArray @ 6 NONAME
+	_ZN10SmfGallery14uploadFinishedE5QListI8SmfErrorE @ 7 NONAME
+	_ZN10SmfGallery15albumsAvailableEP5QListI15SmfPictureAlbumE8SmfError13SmfResultPage @ 8 NONAME
+	_ZN10SmfGallery16staticMetaObjectE @ 9 NONAME DATA 16
+	_ZN10SmfGallery17picturesAvailableEP5QListI10SmfPictureE8SmfError13SmfResultPage @ 10 NONAME
+	_ZN10SmfGallery19customDataAvailableEiP10QByteArray @ 11 NONAME
+	_ZN10SmfGallery19getStaticMetaObjectEv @ 12 NONAME
+	_ZN10SmfGallery20descriptionAvailableE7QString8SmfError @ 13 NONAME
+	_ZN10SmfGallery6albumsE11QStringListP10SmfContactii @ 14 NONAME
+	_ZN10SmfGallery6uploadEP10SmfPictureP15SmfPictureAlbum @ 15 NONAME
+	_ZN10SmfGallery6uploadEP5QListI10SmfPictureEP15SmfPictureAlbum @ 16 NONAME
+	_ZN10SmfGallery8picturesER5QListI15SmfPictureAlbumEii @ 17 NONAME
+	_ZN10SmfGalleryC1EP11SmfProvider @ 18 NONAME
+	_ZN10SmfGalleryC2EP11SmfProvider @ 19 NONAME
+	_ZN10SmfGalleryD0Ev @ 20 NONAME
+	_ZN10SmfGalleryD1Ev @ 21 NONAME
+	_ZN10SmfGalleryD2Ev @ 22 NONAME
+	_ZN14SmfMusicSearch11qt_metacallEN11QMetaObject4CallEiPPv @ 23 NONAME
+	_ZN14SmfMusicSearch11qt_metacastEPKc @ 24 NONAME
+	_ZN14SmfMusicSearch13cancelRequestEv @ 25 NONAME
+	_ZN14SmfMusicSearch13customRequestERKiP10QByteArray @ 26 NONAME
+	_ZN14SmfMusicSearch13tracksOfAlbumE8SmfAlbumii @ 27 NONAME
+	_ZN14SmfMusicSearch13tracksSimilarE12SmfTrackInfoii @ 28 NONAME
+	_ZN14SmfMusicSearch14tracksOfArtistE10SmfArtistsii @ 29 NONAME
+	_ZN14SmfMusicSearch15recommendationsE12SmfTrackInfoii @ 30 NONAME
+	_ZN14SmfMusicSearch16staticMetaObjectE @ 31 NONAME DATA 16
+	_ZN14SmfMusicSearch19customDataAvailableERKiP10QByteArray @ 32 NONAME
+	_ZN14SmfMusicSearch19getStaticMetaObjectEv @ 33 NONAME
+	_ZN14SmfMusicSearch20storeSearchAvailableEP5QListI11SmfProviderE8SmfError13SmfResultPage @ 34 NONAME
+	_ZN14SmfMusicSearch20trackSearchAvailableEP5QListI12SmfTrackInfoE8SmfError13SmfResultPage @ 35 NONAME
+	_ZN14SmfMusicSearch6storesE12SmfTrackInfoii @ 36 NONAME
+	_ZN14SmfMusicSearch9trackInfoE19SmfMusicFingerPrintii @ 37 NONAME
+	_ZN14SmfMusicSearchC1EP11SmfProvider @ 38 NONAME
+	_ZN14SmfMusicSearchC2EP11SmfProvider @ 39 NONAME
+	_ZN14SmfMusicSearchD0Ev @ 40 NONAME
+	_ZN14SmfMusicSearchD1Ev @ 41 NONAME
+	_ZN14SmfMusicSearchD2Ev @ 42 NONAME
+	_ZN14SmfRelationMgr10searchByIdERK7QString @ 43 NONAME
+	_ZN14SmfRelationMgr11qt_metacallEN11QMetaObject4CallEiPPv @ 44 NONAME
+	_ZN14SmfRelationMgr11qt_metacastEPKc @ 45 NONAME
+	_ZN14SmfRelationMgr15getAllRelationsEv @ 46 NONAME
+	_ZN14SmfRelationMgr15searchByContactE10SmfContact @ 47 NONAME
+	_ZN14SmfRelationMgr16staticMetaObjectE @ 48 NONAME DATA 16
+	_ZN14SmfRelationMgr19getStaticMetaObjectEv @ 49 NONAME
+	_ZN14SmfRelationMgr3getER7QStringj @ 50 NONAME
+	_ZN14SmfRelationMgr5countE7QString @ 51 NONAME
+	_ZN14SmfRelationMgr6DeleteER7QString @ 52 NONAME
+	_ZN14SmfRelationMgr6createEP11SmfProviderP10SmfContact @ 53 NONAME
+	_ZN14SmfRelationMgr6getAllER7QString @ 54 NONAME
+	_ZN14SmfRelationMgr6removeER7QStringPK10SmfContact @ 55 NONAME
+	_ZN14SmfRelationMgr9associateER7QStringPK10SmfContactP11SmfProvider @ 56 NONAME
+	_ZN14SmfRelationMgrC1EP7QObject @ 57 NONAME
+	_ZN14SmfRelationMgrC2EP7QObject @ 58 NONAME
+	_ZN14SmfRelationMgrD0Ev @ 59 NONAME
+	_ZN14SmfRelationMgrD1Ev @ 60 NONAME
+	_ZN14SmfRelationMgrD2Ev @ 61 NONAME
+	_ZN15SmfMusicService10postRatingE12SmfTrackInfo14SmfMusicRating @ 62 NONAME
+	_ZN15SmfMusicService10searchUserE11SmfLocationii @ 63 NONAME
+	_ZN15SmfMusicService11qt_metacallEN11QMetaObject4CallEiPPv @ 64 NONAME
+	_ZN15SmfMusicService11qt_metacastEPKc @ 65 NONAME
+	_ZN15SmfMusicService11searchAlbumE8SmfAlbumii @ 66 NONAME
+	_ZN15SmfMusicService11searchVenueE11SmfLocationii @ 67 NONAME
+	_ZN15SmfMusicService12postCommentsE12SmfTrackInfo10SmfComment @ 68 NONAME
+	_ZN15SmfMusicService12postfinishedE8SmfError @ 69 NONAME
+	_ZN15SmfMusicService12searchArtistE10SmfArtistsii @ 70 NONAME
+	_ZN15SmfMusicService12searchEventsE8SmfEventii @ 71 NONAME
+	_ZN15SmfMusicService13cancelRequestEv @ 72 NONAME
+	_ZN15SmfMusicService13customRequestERKiP10QByteArray @ 73 NONAME
+	_ZN15SmfMusicService13userMusicInfoEv @ 74 NONAME
+	_ZN15SmfMusicService16staticMetaObjectE @ 75 NONAME DATA 16
+	_ZN15SmfMusicService18postCurrentPlayingE12SmfTrackInfo @ 76 NONAME
+	_ZN15SmfMusicService19customDataAvailableERKiP10QByteArray @ 77 NONAME
+	_ZN15SmfMusicService19getStaticMetaObjectEv @ 78 NONAME
+	_ZN15SmfMusicService22userMusicInfoAvailableEP15SmfMusicProfile8SmfError @ 79 NONAME
+	_ZN15SmfMusicService23searchUserInfoAvailableEP5QListI15SmfMusicProfileE8SmfError13SmfResultPage @ 80 NONAME
+	_ZN15SmfMusicService24searchAlbumInfoAvailableEP5QListI8SmfAlbumE8SmfError13SmfResultPage @ 81 NONAME
+	_ZN15SmfMusicService24searchVenueInfoAvailableEP5QListI11SmfLocationE8SmfError13SmfResultPage @ 82 NONAME
+	_ZN15SmfMusicService25searchArtistInfoAvailableEP5QListI10SmfArtistsE8SmfError13SmfResultPage @ 83 NONAME
+	_ZN15SmfMusicService25searchEventsInfoAvailableEP5QListI8SmfEventE8SmfError13SmfResultPage @ 84 NONAME
+	_ZN15SmfMusicServiceC1EP11SmfProvider @ 85 NONAME
+	_ZN15SmfMusicServiceC2EP11SmfProvider @ 86 NONAME
+	_ZN15SmfMusicServiceD0Ev @ 87 NONAME
+	_ZN15SmfMusicServiceD1Ev @ 88 NONAME
+	_ZN15SmfMusicServiceD2Ev @ 89 NONAME
+	_ZN15SmfPostProvider10updatePostER7SmfPost @ 90 NONAME
+	_ZN15SmfPostProvider11qt_metacallEN11QMetaObject4CallEiPPv @ 91 NONAME
+	_ZN15SmfPostProvider11qt_metacastEPKc @ 92 NONAME
+	_ZN15SmfPostProvider12postDirectedER7SmfPostR10SmfContactP11SmfLocation @ 93 NONAME
+	_ZN15SmfPostProvider12postFinishedE8SmfError @ 94 NONAME
+	_ZN15SmfPostProvider13cancelRequestEv @ 95 NONAME
+	_ZN15SmfPostProvider13customRequestERKiP10QByteArray @ 96 NONAME
+	_ZN15SmfPostProvider14commentOnAPostER7SmfPostS1_P11SmfLocation @ 97 NONAME
+	_ZN15SmfPostProvider14postAppearenceE17SmfAppearenceInfoRK7QString @ 98 NONAME
+	_ZN15SmfPostProvider14postsAvailableEP5QListI7SmfPostE8SmfError13SmfResultPage @ 99 NONAME
+	_ZN15SmfPostProvider16staticMetaObjectE @ 100 NONAME DATA 16
+	_ZN15SmfPostProvider19customDataAvailableEiP10QByteArray @ 101 NONAME
+	_ZN15SmfPostProvider19getStaticMetaObjectEv @ 102 NONAME
+	_ZN15SmfPostProvider4postER7SmfPostR11SmfLocation @ 103 NONAME
+	_ZN15SmfPostProvider5postsEP10SmfContactii @ 104 NONAME
+	_ZN15SmfPostProvider9sharePostER7SmfPostR10SmfContactb @ 105 NONAME
+	_ZN15SmfPostProviderC1EP11SmfProvider @ 106 NONAME
+	_ZN15SmfPostProviderC2EP11SmfProvider @ 107 NONAME
+	_ZN15SmfPostProviderD0Ev @ 108 NONAME
+	_ZN15SmfPostProviderD1Ev @ 109 NONAME
+	_ZN15SmfPostProviderD2Ev @ 110 NONAME
+	_ZN15SmfRelationItem10setContactER10SmfContact @ 111 NONAME
+	_ZN15SmfRelationItem11setProviderER11SmfProvider @ 112 NONAME
+	_ZN15SmfRelationItem8setIndexEj @ 113 NONAME
+	_ZN15SmfRelationItemC1Ev @ 114 NONAME
+	_ZN15SmfRelationItemC2Ev @ 115 NONAME
+	_ZN16SmfEventsFetcher10postEventsE5QListI8SmfEventE @ 116 NONAME
+	_ZN16SmfEventsFetcher11qt_metacallEN11QMetaObject4CallEiPPv @ 117 NONAME
+	_ZN16SmfEventsFetcher11qt_metacastEPKc @ 118 NONAME
+	_ZN16SmfEventsFetcher13cancelRequestEv @ 119 NONAME
+	_ZN16SmfEventsFetcher13customRequestERKiP10QByteArray @ 120 NONAME
+	_ZN16SmfEventsFetcher13eventsUpdatedE8SmfError @ 121 NONAME
+	_ZN16SmfEventsFetcher15eventsAvailableEP5QListI8SmfEventE8SmfError13SmfResultPage @ 122 NONAME
+	_ZN16SmfEventsFetcher15venuesAvailableEP5QListI11SmfLocationE8SmfError13SmfResultPage @ 123 NONAME
+	_ZN16SmfEventsFetcher16staticMetaObjectE @ 124 NONAME DATA 16
+	_ZN16SmfEventsFetcher18attendeesAvailableEP5QListI10SmfContactE8SmfError13SmfResultPage @ 125 NONAME
+	_ZN16SmfEventsFetcher19customDataAvailableERKiP10QByteArray @ 126 NONAME
+	_ZN16SmfEventsFetcher19getStaticMetaObjectEv @ 127 NONAME
+	_ZN16SmfEventsFetcher6eventsE11SmfLocationii @ 128 NONAME
+	_ZN16SmfEventsFetcher6venuesE11SmfLocationii @ 129 NONAME
+	_ZN16SmfEventsFetcher9attendeesE8SmfEventii @ 130 NONAME
+	_ZN16SmfEventsFetcherC1EP11SmfProvider @ 131 NONAME
+	_ZN16SmfEventsFetcherC2EP11SmfProvider @ 132 NONAME
+	_ZN16SmfEventsFetcherD0Ev @ 133 NONAME
+	_ZN16SmfEventsFetcherD1Ev @ 134 NONAME
+	_ZN16SmfEventsFetcherD2Ev @ 135 NONAME
+	_ZN16SmfLyricsService11qt_metacallEN11QMetaObject4CallEiPPv @ 136 NONAME
+	_ZN16SmfLyricsService11qt_metacastEPKc @ 137 NONAME
+	_ZN16SmfLyricsService13cancelRequestEv @ 138 NONAME
+	_ZN16SmfLyricsService13customRequestERKiP10QByteArray @ 139 NONAME
+	_ZN16SmfLyricsService15lyricsAvailableEP5QListI9SmfLyricsE8SmfError13SmfResultPage @ 140 NONAME
+	_ZN16SmfLyricsService16staticMetaObjectE @ 141 NONAME DATA 16
+	_ZN16SmfLyricsService17subtitleAvailableEP5QListI11SmfSubtitleE8SmfError13SmfResultPage @ 142 NONAME
+	_ZN16SmfLyricsService19customDataAvailableERKiP10QByteArray @ 143 NONAME
+	_ZN16SmfLyricsService19getStaticMetaObjectEv @ 144 NONAME
+	_ZN16SmfLyricsService6lyricsE12SmfTrackInfoii @ 145 NONAME
+	_ZN16SmfLyricsService9subtitlesE12SmfTrackInfo23SmfSubtitleSearchFilterii @ 146 NONAME
+	_ZN16SmfLyricsServiceC1EP11SmfProvider @ 147 NONAME
+	_ZN16SmfLyricsServiceC2EP11SmfProvider @ 148 NONAME
+	_ZN16SmfLyricsServiceD0Ev @ 149 NONAME
+	_ZN16SmfLyricsServiceD1Ev @ 150 NONAME
+	_ZN16SmfLyricsServiceD2Ev @ 151 NONAME
+	_ZN17SmfContactFetcher10searchNearEP11SmfLocation25SmfLocationSearchBoundaryii @ 152 NONAME
+	_ZN17SmfContactFetcher11qt_metacallEN11QMetaObject4CallEiPPv @ 153 NONAME
+	_ZN17SmfContactFetcher11qt_metacastEPKc @ 154 NONAME
+	_ZN17SmfContactFetcher13cancelRequestEv @ 155 NONAME
+	_ZN17SmfContactFetcher13customRequestERKiP10QByteArray @ 156 NONAME
+	_ZN17SmfContactFetcher13searchInGroupE8SmfGroupP10SmfContactii @ 157 NONAME
+	_ZN17SmfContactFetcher16staticMetaObjectE @ 158 NONAME DATA 16
+	_ZN17SmfContactFetcher18groupListAvailableEP5QListI8SmfGroupE8SmfError13SmfResultPage @ 159 NONAME
+	_ZN17SmfContactFetcher18searchNearFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 160 NONAME
+	_ZN17SmfContactFetcher19customDataAvailableEiP10QByteArray @ 161 NONAME
+	_ZN17SmfContactFetcher19getStaticMetaObjectEv @ 162 NONAME
+	_ZN17SmfContactFetcher20friendsListAvailableEP5QListI10SmfContactE8SmfError13SmfResultPage @ 163 NONAME
+	_ZN17SmfContactFetcher21searchContactFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 164 NONAME
+	_ZN17SmfContactFetcher21searchInGroupFinishedEP5QListI10SmfContactE8SmfError13SmfResultPage @ 165 NONAME
+	_ZN17SmfContactFetcher22followersListAvailableEP5QListI10SmfContactE8SmfError13SmfResultPage @ 166 NONAME
+	_ZN17SmfContactFetcher6groupsEii @ 167 NONAME
+	_ZN17SmfContactFetcher6searchEP10SmfContactii @ 168 NONAME
+	_ZN17SmfContactFetcher7friendsEii @ 169 NONAME
+	_ZN17SmfContactFetcher9followersEii @ 170 NONAME
+	_ZN17SmfContactFetcherC1EP11SmfProvider @ 171 NONAME
+	_ZN17SmfContactFetcherC1EP11SmfProviderP10SmfContact @ 172 NONAME
+	_ZN17SmfContactFetcherC2EP11SmfProvider @ 173 NONAME
+	_ZN17SmfContactFetcherC2EP11SmfProviderP10SmfContact @ 174 NONAME
+	_ZN17SmfContactFetcherD0Ev @ 175 NONAME
+	_ZN17SmfContactFetcherD1Ev @ 176 NONAME
+	_ZN17SmfContactFetcherD2Ev @ 177 NONAME
+	_ZN18SmfActivityFetcher11qt_metacallEN11QMetaObject4CallEiPPv @ 178 NONAME
+	_ZN18SmfActivityFetcher11qt_metacastEPKc @ 179 NONAME
+	_ZN18SmfActivityFetcher13cancelRequestEv @ 180 NONAME
+	_ZN18SmfActivityFetcher13customRequestERKiP10QByteArray @ 181 NONAME
+	_ZN18SmfActivityFetcher14selfActivitiesEii @ 182 NONAME
+	_ZN18SmfActivityFetcher16resultsAvailableEP5QListI16SmfActivityEntryE8SmfError13SmfResultPage @ 183 NONAME
+	_ZN18SmfActivityFetcher16staticMetaObjectE @ 184 NONAME DATA 16
+	_ZN18SmfActivityFetcher17friendsActivitiesERK10SmfContactii @ 185 NONAME
+	_ZN18SmfActivityFetcher19customDataAvailableERKiP10QByteArray @ 186 NONAME
+	_ZN18SmfActivityFetcher19getStaticMetaObjectEv @ 187 NONAME
+	_ZN18SmfActivityFetcher8filteredE5QListI21SmfActivityObjectTypeEii @ 188 NONAME
+	_ZN18SmfActivityFetcherC1EP11SmfProvider @ 189 NONAME
+	_ZN18SmfActivityFetcherC2EP11SmfProvider @ 190 NONAME
+	_ZN18SmfActivityFetcherD0Ev @ 191 NONAME
+	_ZN18SmfActivityFetcherD1Ev @ 192 NONAME
+	_ZN18SmfActivityFetcherD2Ev @ 193 NONAME
+	_ZN18SmfPlaylistService11playlistsOfEP10SmfContactii @ 194 NONAME
+	_ZN18SmfPlaylistService11qt_metacallEN11QMetaObject4CallEiPPv @ 195 NONAME
+	_ZN18SmfPlaylistService11qt_metacastEPKc @ 196 NONAME
+	_ZN18SmfPlaylistService13addToPlaylistE11SmfPlaylistP5QListI12SmfTrackInfoE @ 197 NONAME
+	_ZN18SmfPlaylistService13cancelRequestEv @ 198 NONAME
+	_ZN18SmfPlaylistService13customRequestERKiP10QByteArray @ 199 NONAME
+	_ZN18SmfPlaylistService15playlistUpdatedE8SmfError @ 200 NONAME
+	_ZN18SmfPlaylistService16staticMetaObjectE @ 201 NONAME DATA 16
+	_ZN18SmfPlaylistService19customDataAvailableERKiP10QByteArray @ 202 NONAME
+	_ZN18SmfPlaylistService19getStaticMetaObjectEv @ 203 NONAME
+	_ZN18SmfPlaylistService22playlistsListAvailableEP5QListI11SmfPlaylistE8SmfError13SmfResultPage @ 204 NONAME
+	_ZN18SmfPlaylistService26postCurrentPlayingPlaylistE11SmfPlaylist @ 205 NONAME
+	_ZN18SmfPlaylistService9playlistsEii @ 206 NONAME
+	_ZN18SmfPlaylistServiceC1EP11SmfProvider @ 207 NONAME
+	_ZN18SmfPlaylistServiceC2EP11SmfProvider @ 208 NONAME
+	_ZN18SmfPlaylistServiceD0Ev @ 209 NONAME
+	_ZN18SmfPlaylistServiceD1Ev @ 210 NONAME
+	_ZN18SmfPlaylistServiceD2Ev @ 211 NONAME
+	_ZN9SmfClient11GetServicesERK7QString @ 212 NONAME
+	_ZN9SmfClientC1Ev @ 213 NONAME
+	_ZN9SmfClientC2Ev @ 214 NONAME
+	_ZN9SmfClientD1Ev @ 215 NONAME
+	_ZN9SmfClientD2Ev @ 216 NONAME
+	_ZNK10SmfGallery10metaObjectEv @ 217 NONAME
+	_ZNK10SmfGallery11getProviderEv @ 218 NONAME
+	_ZNK14SmfMusicSearch10metaObjectEv @ 219 NONAME
+	_ZNK14SmfMusicSearch11getProviderEv @ 220 NONAME
+	_ZNK14SmfRelationMgr10metaObjectEv @ 221 NONAME
+	_ZNK15SmfMusicService10metaObjectEv @ 222 NONAME
+	_ZNK15SmfMusicService11getProviderEv @ 223 NONAME
+	_ZNK15SmfPostProvider10metaObjectEv @ 224 NONAME
+	_ZNK15SmfPostProvider11getProviderEv @ 225 NONAME
+	_ZNK15SmfPostProvider14maxCharsInPostEv @ 226 NONAME
+	_ZNK15SmfPostProvider16supportedFormatsEv @ 227 NONAME
+	_ZNK15SmfPostProvider18supportsAppearenceEv @ 228 NONAME
+	_ZNK15SmfPostProvider8maxItemsEv @ 229 NONAME
+	_ZNK15SmfRelationItem10getContactEv @ 230 NONAME
+	_ZNK15SmfRelationItem11getProviderEv @ 231 NONAME
+	_ZNK15SmfRelationItem8getIndexEv @ 232 NONAME
+	_ZNK16SmfEventsFetcher10metaObjectEv @ 233 NONAME
+	_ZNK16SmfEventsFetcher11getProviderEv @ 234 NONAME
+	_ZNK16SmfLyricsService10metaObjectEv @ 235 NONAME
+	_ZNK16SmfLyricsService11getProviderEv @ 236 NONAME
+	_ZNK17SmfContactFetcher10metaObjectEv @ 237 NONAME
+	_ZNK17SmfContactFetcher11getProviderEv @ 238 NONAME
+	_ZNK18SmfActivityFetcher10metaObjectEv @ 239 NONAME
+	_ZNK18SmfActivityFetcher11getProviderEv @ 240 NONAME
+	_ZNK18SmfPlaylistService10metaObjectEv @ 241 NONAME
+	_ZNK18SmfPlaylistService11getProviderEv @ 242 NONAME
+	_ZNK9SmfClient11errorStringERK8SmfError @ 243 NONAME
+	_ZTI10SmfGallery @ 244 NONAME
+	_ZTI14SmfMusicSearch @ 245 NONAME
+	_ZTI14SmfRelationMgr @ 246 NONAME
+	_ZTI15SmfMusicService @ 247 NONAME
+	_ZTI15SmfPostProvider @ 248 NONAME
+	_ZTI16SmfEventsFetcher @ 249 NONAME
+	_ZTI16SmfLyricsService @ 250 NONAME
+	_ZTI17SmfContactFetcher @ 251 NONAME
+	_ZTI18SmfActivityFetcher @ 252 NONAME
+	_ZTI18SmfPlaylistService @ 253 NONAME
+	_ZTV10SmfGallery @ 254 NONAME
+	_ZTV14SmfMusicSearch @ 255 NONAME
+	_ZTV14SmfRelationMgr @ 256 NONAME
+	_ZTV15SmfMusicService @ 257 NONAME
+	_ZTV15SmfPostProvider @ 258 NONAME
+	_ZTV16SmfEventsFetcher @ 259 NONAME
+	_ZTV16SmfLyricsService @ 260 NONAME
+	_ZTV17SmfContactFetcher @ 261 NONAME
+	_ZTV18SmfActivityFetcher @ 262 NONAME
+	_ZTV18SmfPlaylistService @ 263 NONAME
+	_ZlsR11QDataStreamRK15SmfRelationItem @ 264 NONAME
+	_ZrsR11QDataStreamR15SmfRelationItem @ 265 NONAME
 
--- a/smf/smfservermodule/smfclient/smfactivityfetcher.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfactivityfetcher.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -35,27 +35,32 @@
 	{
 	}
 
-void SmfActivityFetcher::selfActivities(int pageNum, int perPage)
+SmfError SmfActivityFetcher::selfActivities(int pageNum, int perPage)
 	{
-	m_private->selfActivities(pageNum,perPage);
+	return m_private->selfActivities(pageNum,perPage);
 	}
 
-void SmfActivityFetcher::friendsActivities(const SmfContact & aFriend, int pageNum, int perPage)
+SmfError SmfActivityFetcher::friendsActivities(const SmfContact & aFriend, int pageNum, int perPage)
 	{
-	m_private->friendsActivities(aFriend,pageNum,perPage);
+	return m_private->friendsActivities(aFriend,pageNum,perPage);
 	}
 
-void SmfActivityFetcher::filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage)
+SmfError SmfActivityFetcher::filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage)
 	{
-	m_private->filtered(filters,pageNum,perPage);
+	return m_private->filtered(filters,pageNum,perPage);
 	}
 
-void SmfActivityFetcher::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfActivityFetcher::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
 	}
 
 SmfProvider* SmfActivityFetcher::getProvider() const
 	{
 	return m_baseProvider;
 	}
+
+SmfError SmfActivityFetcher::cancelRequest()
+	{
+	return m_private->cancelRequest();
+	}
--- a/smf/smfservermodule/smfclient/smfactivityfetcher.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfactivityfetcher.h	Thu Sep 23 17:43:31 2010 +0530
@@ -53,19 +53,22 @@
 public slots:
 	/**
 	 * Emits signal resultsAvailable() when list of activities for the user is available 
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	void selfActivities(int pageNum = SMF_FIRST_PAGE,int perPage = SMF_ITEMS_PER_PAGE);
+	SmfError selfActivities(int pageNum = SMF_FIRST_PAGE,int perPage = SMF_ITEMS_PER_PAGE);
 
 	/**
 	 * Emits signal resultsAvailable() when list of activities for other contact  is available 
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	void friendsActivities(const SmfContact& aFriend, int pageNum = SMF_FIRST_PAGE,
+	SmfError friendsActivities(const SmfContact& aFriend, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
 	 * returns only those activities (self) which are from @arg filters
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void filtered(QList<SmfActivityObjectType> filters, int pageNum = SMF_FIRST_PAGE,
+	SmfError filtered(QList<SmfActivityObjectType> filters, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -73,11 +76,20 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 
 signals:
 	/**
--- a/smf/smfservermodule/smfclient/smfactivityfetcher_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfactivityfetcher_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -48,19 +48,25 @@
 		}
 	}
 
-void SmfActivityFetcherPrivate::selfActivities(int pageNum, int perPage)
+SmfError SmfActivityFetcherPrivate::selfActivities(int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_activityFetcher->getProvider();
 	//serialize start
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	//serialize end
 	
 	QString intfName(activityFetcherInterface);
@@ -69,34 +75,43 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfActivitySelfActivity, max);
+	return err;
 	}
 
-void SmfActivityFetcherPrivate::friendsActivities(const SmfContact & aFriend, int pageNum, int perPage)
+SmfError SmfActivityFetcherPrivate::friendsActivities(const SmfContact & aFriend, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_activityFetcher->getProvider();
 	//serialize start
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<aFriend;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<aFriend;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
 	
+	write<<dataToPlugins;
+		
 	QString intfName(activityFetcherInterface);
 	int max = MaxSmfActivityEntrySize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfActivityFriendsActivities, max);
+	return err;
 	}
 
-void SmfActivityFetcherPrivate::filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage)
+SmfError SmfActivityFetcherPrivate::filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_activityFetcher->getProvider();
 	
 	//serialize start
@@ -104,13 +119,18 @@
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<filters;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<filters;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(activityFetcherInterface);
 	int max = MaxSmfActivityEntrySize*perPage;
@@ -118,29 +138,37 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfActivityFiltered, max);
+	return err;
 	}
 
-void SmfActivityFetcherPrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfActivityFetcherPrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_activityFetcher->getProvider();
 	
 	//serialize start
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<operationId;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(activityFetcherInterface);
 //ToDo:- How much size to allocate for custom data? keeping MaxSmfActivityEntrySize for now
 	int maxAllocation = MaxSmfActivityEntrySize;
@@ -148,8 +176,24 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfActivityCustomRequest, maxAllocation);
+	return err;
 	}
 
+SmfError SmfActivityFetcherPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfActivityFetcherPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
+	}
+
+
 void SmfActivityFetcherPrivate::resultsAvailable(QByteArray result,SmfRequestTypeID opcode, SmfError error)
 	{
 	qDebug()<<"SmfActivityFetcherPrivate::resultsAvailable";
--- a/smf/smfservermodule/smfclient/smfactivityfetcher_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfactivityfetcher_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -51,30 +51,42 @@
 	~SmfActivityFetcherPrivate();
 	
 	/**
-	 * Emits signal resultsAvailable() when list of activities for the user is available 
+	 * Emits signal resultsAvailable() when list of activities for the user is available
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	void selfActivities(int pageNum, int perPage);
+	SmfError selfActivities(int pageNum, int perPage);
 
 	/**
-	 * Emits signal resultsAvailable() when list of activities for other contact  is available 
+	 * Emits signal resultsAvailable() when list of activities for other contact  is available
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	void friendsActivities(const SmfContact& aFriend, int pageNum, int perPage);
+	SmfError friendsActivities(const SmfContact& aFriend, int pageNum, int perPage);
 	
 	/**
 	 * returns only those activities (self) which are from @arg filters
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage);
+	SmfError filtered(QList<SmfActivityObjectType> filters, int pageNum, int perPage);
 	
 	/**
 	 * Request for a custom operation. The signal customDataAvailable() is emitted 
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public: //From smfObserver
 	/**
@@ -94,7 +106,7 @@
 	  SmfClientQt* m_SmfClientPrivate;
 	  friend class SmfClientQt;
 #endif
-	  int m_argFlag;
+	  quint8 m_argFlag;
 	  //serialized byte array of provider+other info to be sent to the server
 	  //The order:- SmfProvider then params in order of their appearance in fn
 	  QByteArray m_serializedDataToServer;
--- a/smf/smfservermodule/smfclient/smfclient.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfclient.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -26,8 +26,6 @@
 
 SmfClient::SmfClient()
 	{
-	qDebug()<<"Inside SmfClient::SmfClient()";
-	
 	//Create instance of the private wrapper
 	m_private = new SmfClientPrivate(this);
 	m_providerList = NULL;
@@ -51,8 +49,6 @@
 		delete m_providerList;
 		m_providerList = NULL;
 		}
-	qDebug()<<"Before m_private->GetServices";
-	
 	//Getting the data synchronously
 	m_providerList = m_private->GetServices(serviceName);
 	qDebug()<<"After m_private->GetServices";
--- a/smf/smfservermodule/smfclient/smfclient.pro	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfclient.pro	Thu Sep 23 17:43:31 2010 +0530
@@ -13,14 +13,16 @@
     smfgallery.h \
     smfrelationmgr.h \
     smfmusic.h \
-    smfactivityfetcher.h
+    smfactivityfetcher.h \
+    smfeventsfetcher.h
 PRIVATE_HEADERS += smfclient_p.h \
     smfcontactfetcher_p.h \
     smfpostprovider_p.h \
     smfgallery_p.h \
     smfrelationmgr_p.h \
     smfmusic_p.h \
-    smfactivityfetcher_p.h
+    smfactivityfetcher_p.h \
+    smfeventsfetcher_p.h
 SOURCES +=  \
     smfrelationmgr_p.cpp \
     smfrelationmgr.cpp \
@@ -35,7 +37,9 @@
     smfcontactfetcher_p.cpp \
     smfmusic_p.cpp \
     smfactivityfetcher.cpp \
-    smfactivityfetcher_p.cpp
+    smfactivityfetcher_p.cpp \
+    smfeventsfetcher.cpp \
+    smfeventsfetcher_p.cpp
 HEADERS += $$PUBLIC_HEADERS \
     $$PRIVATE_HEADERS
 !symbian { 
@@ -53,25 +57,11 @@
         WriteDeviceData
     TARGET.EPOCALLOWDLLDATA = 1
     LIBS += -lsmfcommon
-    BLD_INF_RULES.prj_exports += smfclient.h
-    BLD_INF_RULES.prj_exports += smfclient_p.h
-    BLD_INF_RULES.prj_exports += smfcontactfetcher.h
-    BLD_INF_RULES.prj_exports += smfcontactfetcher_p.h
-    BLD_INF_RULES.prj_exports += smfclientsymbian.h
-    BLD_INF_RULES.prj_exports += smfclientsymbiansession.h
-    BLD_INF_RULES.prj_exports += smfpostprovider.h
-    BLD_INF_RULES.prj_exports += smfpostprovider_p.h
-    BLD_INF_RULES.prj_exports += smfgallery.h
-    BLD_INF_RULES.prj_exports += smfgallery_p.h
-    BLD_INF_RULES.prj_exports += smfrelationmgr.h
-    BLD_INF_RULES.prj_exports += smfrelationmgr_p.h
-    BLD_INF_RULES.prj_exports += smfmusic.h
-    BLD_INF_RULES.prj_exports += smfmusic_p.h
-    BLD_INF_RULES.prj_exports += smfactivityfetcher.h
-    BLD_INF_RULES.prj_exports += smfactivityfetcher_p.h
+
+
 }
 symbian: { 
-    PUBLIC_HEADERS += smfclientsymbian.h \
+	PRIVATE_HEADERS += smfclientsymbian.h \
         smfclientsymbiansession.h
     SOURCES += smfclientsymbian.cpp
 }
@@ -79,3 +69,13 @@
     PRIVATE_HEADERS += smfclientqt.h
     SOURCES += smfclientqt.cpp
 }
+
+symbian: {
+  #export public header to \epocroot\epoc32\include to be able to use them
+  headers.files = $$PUBLIC_HEADERS
+  headers.path = $$PWD
+  for(header, headers.files) {
+    {BLD_INF_RULES.prj_exports += "$$header"}
+  }
+}
+
--- a/smf/smfservermodule/smfclient/smfclient_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfclient_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -21,8 +21,6 @@
 
 SmfClientPrivate::SmfClientPrivate(SmfClient* client):m_client(client)
 	{
-	qDebug()<<"Inside SmfClientPrivate::SmfClientPrivate()";
-	
 #ifdef Q_OS_SYMBIAN
 	//private impl for symbian
 	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
--- a/smf/smfservermodule/smfclient/smfclientsymbian.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfclientsymbian.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -44,16 +44,15 @@
     }
 
 CSmfClientSymbian::CSmfClientSymbian(smfObserver* aObserver)
-		: iObserver(aObserver),
-		  CActive( EPriorityStandard ),
-		  iDataPtr(NULL, 0, 0)
+		: CActive( EPriorityStandard ),
+		iObserver(aObserver),
+		iDataPtr(NULL, 0, 0)
 	{
 	CActiveScheduler::Add(this);
 	}
 
 void CSmfClientSymbian::ConstructL()
     {
-	qDebug()<<"Inside CSmfClientSymbian::ConstructL()";
     User::LeaveIfError(iSession.connectToServer());
     }
 
@@ -125,8 +124,6 @@
 				 TInt aMaxAllocation,
 				 QByteArray& aSerializedData)
 	{
-	qDebug()<<"Inside CSmfClientSymbian::sendRequest() for intf = "<<aInterfaceName;
-	
 	//Gets data synchronously from the server
     TPtr8 symbianBuf(iSession.sendSyncRequest(aInterfaceName,requestType, aMaxAllocation, aSerializedData));
     //convert this into bytearray
@@ -178,10 +175,14 @@
 
 
 RSmfClientSymbianSession::RSmfClientSymbianSession()
-		:iDataPtr8(NULL, 0, 0),iDataPtr16(NULL,0),
-		 iIntfNamePtr(NULL,0),iIntfNamePtr8(NULL,0),
-		 iPtrProvider(NULL,0),iPtrProvider8(NULL,0),
-		 iPtrToXtraInfo8(NULL,0),iPtrToXtraInfo(NULL, 0),
+		:iDataPtr8(NULL, 0, 0),
+		 iDataPtr16(NULL,0),
+		 iPtrProvider(NULL,0),
+		 iPtrProvider8(NULL,0),
+		 iIntfNamePtr(NULL,0),
+		 iIntfNamePtr8(NULL,0),
+		 iPtrToXtraInfo(NULL, 0),
+		 iPtrToXtraInfo8(NULL,0),
 		 iPtr8ToSlot0(NULL,0)
     {
     // No implementation required
@@ -189,8 +190,6 @@
 
 TInt RSmfClientSymbianSession::connectToServer()
     {
-	qDebug()<<"Inside RSmfClientSymbianSession::connectToServer()";
-	
     TInt error = ::StartServerL();
     qDebug()<<"StartServerL = "<<error;
 
@@ -207,8 +206,6 @@
 TPtr8 RSmfClientSymbianSession::sendSyncRequest(QByteArray& aSerializedData, 
 		QString aInterfaceName, SmfRequestTypeID aRequestType, TInt maxSize)
 	{
-	qDebug()<<"Inside RSmfClientSymbianSession::sendSyncRequest() for plugins";
-	qDebug()<<"iInterfaceName = "<<aInterfaceName;
 	iLastRequest = aRequestType;
 	/**
 	 * The message body consists of.- 
@@ -229,7 +226,6 @@
 	//convert the QByteArray into TPtr
 	TPtrC8 ptrSlot0(reinterpret_cast<const TText8*>(aSerializedData.constData()),aSerializedData.length());
 	qDebug()<<"ptrSlot0 size = "<<ptrSlot0.Size();
-
 	
 	iInterfaceNamebyte.clear();
 	//Pass serialized QString for interface name
@@ -263,11 +259,9 @@
     args.Set(2, &iDataPtr8);
     qDebug()<<"After setting 0,1,2 slots";
 
-    TInt err(KErrBadHandle);
     qDebug()<<"Before handle";
     if (Handle()) 
     	{
-        err = KErrNone;
         qDebug()<<"Before sendreceive";
         //synchronous request
         TInt sendErr = SendReceive(aRequestType, args);
@@ -310,7 +304,7 @@
 	iIntfNameBuffer8 = HBufC8::NewL(iInterfaceNamebyte.size());
 	iIntfNamePtr8.Set(iIntfNameBuffer8->Des());
 	iIntfNamePtr8.Copy(reinterpret_cast<TUint8*>(iInterfaceNamebyte.data()),iInterfaceNamebyte.length());
-    qDebug()<<"iIntfNamePtr8 size = "<<iIntfNamePtr8.Size();
+    qDebug()<<"iIntfNamePtr8 (1) size = "<<iIntfNamePtr8.Size();
 	
 	if(iBuffer8)
 		{
@@ -320,7 +314,6 @@
 	qDebug()<<"Allocated for output = "<<maxSize;
     iBuffer8 = HBufC8::NewL(maxSize);
     iDataPtr8.Set(iBuffer8->Des());
-    qDebug()<<"After iDataPtr8.Set";
     
 	if(iProviderBuf8)
 		{
@@ -340,11 +333,9 @@
     args.Set(1, &iIntfNamePtr8);
     args.Set(2, &iDataPtr8);
         
-    TInt err(KErrBadHandle);
     qDebug()<<"Before handle";
     if (Handle()) 
     	{
-        err = KErrNone;
         qDebug()<<"Before sendreceive";
         TInt sendErr = SendReceive(aRequestType, args);
         if(sendErr)
@@ -357,7 +348,7 @@
  * Sends sync DSM request to the Smf server
  */
 TPtr8 RSmfClientSymbianSession::sendDSMSyncRequest(SmfRequestTypeID aRequestType,
-		QByteArray& aSerializedData, SmfError aErr, TInt maxSize)
+		QByteArray& aSerializedData, SmfError& aErr, TInt maxSize)
 	{
 	/**
 	 * Slot 0:- Data to be passed to DSM
@@ -373,6 +364,7 @@
 		}
 	iSlot0Buffer8 = HBufC8::NewL(aSerializedData.size());
 	iPtr8ToSlot0.Set(iSlot0Buffer8->Des());
+	iPtr8ToSlot0.Copy(reinterpret_cast<const TText8*>(aSerializedData.constData()),aSerializedData.length());
 	
 	if(iBuffer8)
 		{
@@ -430,7 +422,7 @@
 
 	//convert the QByteArray into TPtr
     TPtrC8 ptrSlot0(reinterpret_cast<const TText8*>(aSerializedData.constData()),aSerializedData.length());
-    qDebug()<<"ptrSlot0 size = "<<ptrSlot0.Size();
+    qDebug()<<"ptrSlot0 size = "<<iPtrProvider8.Size();
     
 	//Convert the interface name into TPtr
     //Pass serialized QString for interface name
@@ -446,7 +438,7 @@
 	iIntfNameBuffer8 = HBufC8::NewL(iInterfaceNamebyte.size());
 	iIntfNamePtr8.Set(iIntfNameBuffer8->Des());
 	iIntfNamePtr8.Copy(reinterpret_cast<const TText8*>(iInterfaceNamebyte.constData()),iInterfaceNamebyte.length());
-	qDebug()<<"After iIntfNamePtr8.Copy";
+	qDebug()<<"ptrSlot1 size = "<<iIntfNamePtr8.Size();
 	
 	if(iBuffer8)
 		{
@@ -457,7 +449,6 @@
     iDataPtr8.Set(iBuffer8->Des());
     qDebug()<<"After iDataPtr.Set";
     
-    
     TIpcArgs args;
     
     //filling the slots
@@ -466,13 +457,12 @@
     args.Set(2, &iDataPtr8);
     qDebug()<<"After setting 0,1,2 slots";
     
-    TInt err(KErrBadHandle);
     qDebug()<<"Before Handle()";
     if (Handle()) 
     	{
-        err = KErrNone;
         qDebug()<<"Before sendreceive";
         SendReceive(aRequestType, args, aStatus);
+        qDebug()<<"After sendreceive";
         }
 	}
 
@@ -490,6 +480,7 @@
     RProcess server;
 
     result = server.Create( KSmfServerFilename, KNullDesC, serverUid );
+    qDebug()<<"server.Create() = "<<result;
     if ( result != KErrNone )
         {
         return  result;
@@ -513,7 +504,6 @@
     TFullName name;
 
     result = findSmfServer.Next( name );
-    
     if ( result == KErrNone )
         {
         // Server already running
--- a/smf/smfservermodule/smfclient/smfclientsymbiansession.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfclientsymbiansession.h	Thu Sep 23 17:43:31 2010 +0530
@@ -70,7 +70,7 @@
 	 */
 	TPtr8 sendDSMSyncRequest(SmfRequestTypeID aRequestType,	
 			QByteArray& aSerializedData,
-			SmfError aErr, TInt maxSize = 0 );
+			SmfError& aErr, TInt maxSize = 0 );
     
 	/**
 	 * Sends synchronous requests to the Smf server
@@ -116,19 +116,19 @@
     TBuf8<125> iInterfaceSymbian8;
     QString iInterfaceName;
     HBufC* iIntfNameBuffer;
-    TPtr iIntfNamePtr;
     HBufC* iBuffer16;
-    TPtr iPtrToXtraInfo;
     TPtr iPtrProvider;
+	TPtr8 iPtrProvider8;
 	QByteArray iInterfaceNamebyte;
 	TBuf<100> iDSMErr;
 	HBufC8* iProviderBuf8;
-	TPtr8 iPtrProvider8;
+    TPtr iIntfNamePtr;
+	TPtr8 iIntfNamePtr8;
 	HBufC8* iIntfNameBuffer8;
-	TPtr8 iIntfNamePtr8;
 	HBufC8* iBuffer8;
 	HBufC8* iXtraInfoBuf8;
-	TPtr8 iPtrToXtraInfo8;
+    TPtr iPtrToXtraInfo;
+    TPtr8 iPtrToXtraInfo8;
 	HBufC8* iSlot0Buffer8;
 	TPtr8 iPtr8ToSlot0;
 	TInt iMaxMessageSize;
--- a/smf/smfservermodule/smfclient/smfcontactfetcher.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfcontactfetcher.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -52,42 +52,47 @@
 	/** @TODO:- Request to unload the plugin*/
 	}
 
-bool SmfContactFetcher::friends(int pageNum,int perPage)
+SmfError SmfContactFetcher::friends(int pageNum,int perPage)
 	{
 	return m_private->friends(pageNum,perPage);
 	}
 
-bool SmfContactFetcher::followers(int pageNum,int perPage)
+SmfError SmfContactFetcher::followers(int pageNum,int perPage)
 	{
 	return m_private->followers(pageNum,perPage);
 	}
 
-void  SmfContactFetcher::search(SmfContact* contact,int pageNum,int perPage) 
+SmfError  SmfContactFetcher::search(SmfContact* contact,int pageNum,int perPage) 
 	{
-	m_private->search(contact,pageNum,perPage);
+	return m_private->search(contact,pageNum,perPage);
 	}
 
-bool  SmfContactFetcher::searchNear(SmfLocation* location,SmfLocationSearchBoundary proximity,int pageNum,int perPage) 
+SmfError  SmfContactFetcher::searchNear(SmfLocation* location,SmfLocationSearchBoundary proximity,int pageNum,int perPage) 
 	{
 	return m_private->searchNear(location, proximity, pageNum, perPage);
 	}
 
-bool SmfContactFetcher::groups(int pageNum,int perPage) 
+SmfError SmfContactFetcher::groups(int pageNum,int perPage) 
 	{
 	return m_private->groups(pageNum,perPage);
 	}
 
-bool  SmfContactFetcher::searchInGroup(SmfGroup group,int pageNum,int perPage) 
+SmfError  SmfContactFetcher::searchInGroup(SmfGroup group, SmfContact *contact, int pageNum,int perPage) 
 	{
-	return m_private->searchInGroup(group,pageNum,perPage);
+	return m_private->searchInGroup(group,contact,pageNum,perPage);
 	}
 
-void SmfContactFetcher::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfContactFetcher::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
 	}
 
 SmfProvider* SmfContactFetcher::getProvider() const
 	{
 	return m_baseProvider;
 	}
+
+SmfError SmfContactFetcher::cancelRequest()
+	{
+	return m_private->cancelRequest();
+	}
--- a/smf/smfservermodule/smfclient/smfcontactfetcher.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfcontactfetcher.h	Thu Sep 23 17:43:31 2010 +0530
@@ -28,6 +28,7 @@
 
 // Forward declaration
 class SmfProvider; //base-class for service provider
+class SmfContactFetcherPrivate;//implementation 
 
 /**
  * @ingroup smf_client_group 
@@ -78,9 +79,9 @@
 	 * by the user default values are used. 
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool friends ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError friends ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Get the list of followers asynchronously. The followersListAvailable() signal
@@ -90,9 +91,9 @@
 	 * If not supplied by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool followers ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError followers ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Searches for a contact The searchContactFinished() signal
@@ -102,9 +103,10 @@
 	 * @param contact The contact to be searched. The serach criteria must be 
 	 * set as one of its fields.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void search ( SmfContact* contact, int pageNum = SMF_FIRST_PAGE,
+	SmfError search ( SmfContact* contact, int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
@@ -117,8 +119,9 @@
 	 * @param proximity The search boundary criteria
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool searchNear ( SmfLocation* location, 
+	SmfError searchNear ( SmfLocation* location, 
 					SmfLocationSearchBoundary proximity,
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE);
@@ -131,8 +134,9 @@
 	 * by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool groups ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError groups ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 	
 	/**
 	 * Searches for Smf Contacts in an Smf group. The signal searchInGroupFinished() 
@@ -140,11 +144,13 @@
 	 * can specify the page number and per page item data. If not supplied by the 
 	 * user default values are used.
 	 * @param group The group to be searched in
+	 * @contact The contact to be searched, default (NULL) is the self contact.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool searchInGroup ( SmfGroup group,
+	SmfError searchInGroup ( SmfGroup group,
+						SmfContact* contact = NULL,
 						int pageNum = SMF_FIRST_PAGE,
 						int perPage = SMF_ITEMS_PER_PAGE );
 	
@@ -153,11 +159,20 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 signals:
 
--- a/smf/smfservermodule/smfclient/smfcontactfetcher_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfcontactfetcher_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -59,31 +59,36 @@
  * by the user default values are used. 
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
- * @return true if success, else false
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool SmfContactFetcherPrivate::friends(int pageNum,int perPage)
+SmfError SmfContactFetcherPrivate::friends(int pageNum,int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	m_argFlag = 1;
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	
 	//serialize start
 	m_dataSerialized.clear();
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
 	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfContactSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName, 
 			SmfContactGetFriends, maxAllocation);
-	
-	return true;
+	return err;
 	}
 
 /**
@@ -94,10 +99,11 @@
  * If not supplied by the user default values are used.
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
- * @return true if success, else false
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool SmfContactFetcherPrivate::followers(int pageNum,int perPage)
+SmfError SmfContactFetcherPrivate::followers(int pageNum,int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	
@@ -105,11 +111,16 @@
 	m_dataSerialized.clear();
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfContactSize*perPage;
@@ -117,8 +128,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactGetFollowers, maxAllocation);
-	
-	return true;
+	return err;
 	}
   
 /**
@@ -130,31 +140,38 @@
  * set as one of its fields.
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void  SmfContactFetcherPrivate::search(SmfContact* contact,int pageNum,int perPage) 
+SmfError SmfContactFetcherPrivate::search(SmfContact* contact,int pageNum,int perPage) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider+SmfContact serialized into bytearray 
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	m_dataSerialized.clear();
 	//serialize start
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	if(contact)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*contact;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*contact;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfContactSize*perPage;
@@ -162,6 +179,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactSearch, maxAllocation);
+	return err;
 	}
 
 /**
@@ -174,34 +192,42 @@
  * @param proximity The search boundary criteria
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool  SmfContactFetcherPrivate::searchNear(SmfLocation* location,
+SmfError SmfContactFetcherPrivate::searchNear(SmfLocation* location,
 		SmfLocationSearchBoundary proximity,
 		int pageNum,int perPage) 
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	m_dataSerialized.clear();
 	
 	//serialize start
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	if(location)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*location;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*location;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
-	write<<m_argFlag;
-	write<<proximity;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<proximity;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfContactSize*perPage;
@@ -209,8 +235,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactSearchNear, maxAllocation);
-	
-	return true;
+	return err;
 	}
 
 /**
@@ -221,9 +246,11 @@
  * by the user default values are used.
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool SmfContactFetcherPrivate::groups(int pageNum,int perPage) 
+SmfError SmfContactFetcherPrivate::groups(int pageNum,int perPage) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	m_dataSerialized.clear();
@@ -231,20 +258,24 @@
 	//serialize start
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
-		
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+			
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfGroupSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactGetGroups, maxAllocation);
-	
-	return true;
+	return err;
 	}
 
 /**
@@ -253,12 +284,15 @@
  * can specify the page number and per page item data. If not supplied by the 
  * user default values are used.
  * @param group The group to be searched in
+ * @contact The contact to be searched, default (NULL) is the self contact.
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
- * @return true if success, else false
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool  SmfContactFetcherPrivate::searchInGroup(SmfGroup group,int pageNum,int perPage) 
+SmfError SmfContactFetcherPrivate::searchInGroup(SmfGroup group, SmfContact *contact,
+		int pageNum,int perPage) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider+SmfGroup serialized into bytearray 
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	
@@ -266,22 +300,37 @@
 	m_dataSerialized.clear();
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<group;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<group;
+	if(contact)
+		{
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*contact;
+		}
+	else
+		{
+		m_argFlag = 0;
+		streamToPlugin<<m_argFlag;
+		}
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
 	
+	write<<dataToPlugins;
+		
 	QString intfName(contactFetcherInterface);
 	int maxAllocation = MaxSmfContactSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactSearchInGroup, maxAllocation);
-	
-	return true;
+	return err;
 	}
 
 /**
@@ -289,12 +338,14 @@
  * when the result is available.
  * @param operationId OperationId
  * @param customData Custom data to be sent
+ * @return SmfError. SmfNoError if success, else appropriate error code
  * Note:-Interpretation of operationId and customData is upto the concerned
  * plugin and client application. service provider should provide some
  * serializing-deserializing utilities for these custom data
  */
-void SmfContactFetcherPrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfContactFetcherPrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider+SmfGroup serialized into bytearray 
 	SmfProvider* m_baseProvider = m_contactFetcher->getProvider();
 	
@@ -302,20 +353,25 @@
 	m_dataSerialized.clear();
 	QDataStream write(&m_dataSerialized,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(contactFetcherInterface);
 //ToDo:- How much size to allocate for custom data? keeping MaxSmfContactSize for now
 	int maxAllocation = MaxSmfContactSize;
@@ -323,6 +379,21 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_dataSerialized, intfName,
 			SmfContactCustomRequest, maxAllocation);
+	return err;
+	}
+
+SmfError SmfContactFetcherPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfContactFetcherPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 /**
--- a/smf/smfservermodule/smfclient/smfcontactfetcher_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfcontactfetcher_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -71,9 +71,9 @@
 	 * by the user default values are used. 
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool friends ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError friends ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Get the list of followers asynchronously. The followersListAvailable() signal
@@ -83,9 +83,9 @@
 	 * If not supplied by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool followers ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError followers ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Searches for a contact The searchContactFinished() signal
@@ -96,8 +96,9 @@
 	 * set as one of its fields.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void search ( SmfContact* contact, int pageNum = SMF_FIRST_PAGE,
+	SmfError search ( SmfContact* contact, int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 	
 	/**
@@ -110,8 +111,9 @@
 	 * @param proximity The search boundary criteria
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool searchNear ( SmfLocation* location, 
+	SmfError searchNear ( SmfLocation* location, 
 					SmfLocationSearchBoundary proximity,
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE);
@@ -124,8 +126,9 @@
 	 * by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool groups ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
+	SmfError groups ( int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Searches for Smf Contacts in an Smf group. The signal searchInGroupFinished() 
@@ -133,11 +136,13 @@
 	 * can specify the page number and per page item data. If not supplied by the 
 	 * user default values are used.
 	 * @param group The group to be searched in
+	 * @contact The contact to be searched, default (NULL) is the self contact.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 * @return true if success, else false
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool searchInGroup ( SmfGroup group,
+	SmfError searchInGroup ( SmfGroup group,
+						SmfContact* contact = NULL,
 						int pageNum = SMF_FIRST_PAGE,
 						int perPage = SMF_ITEMS_PER_PAGE );
 
@@ -146,11 +151,20 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
    
 public: //from smfobserver
 	/**
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfclient/smfeventsfetcher.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,71 @@
+/**
+ * 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:
+ * Nalina Hariharan
+ *
+ * Description:
+ * Events related services
+ *
+ */
+
+#include "smfeventsfetcher.h"
+#include "smfeventsfetcher_p.h"
+
+SmfEventsFetcher::SmfEventsFetcher(SmfProvider *baseProvider)
+		:m_baseProvider(baseProvider)
+	{
+	m_private = new SmfEventsFetcherPrivate(this);
+	}
+
+SmfEventsFetcher::~SmfEventsFetcher()
+	{
+	if(m_private)
+		{
+		delete m_private;
+		m_private = NULL;
+		}
+	}
+
+SmfError SmfEventsFetcher::events(SmfLocation venue, int pageNum, int perPage)
+	{
+	return m_private->events(venue,pageNum,perPage);
+	}
+
+SmfError SmfEventsFetcher::venues(SmfLocation location, int pageNum, int perPage)
+	{
+	return m_private->venues(location,pageNum,perPage);
+	}
+
+SmfError SmfEventsFetcher::attendees(SmfEvent event, int pageNum, int perPage )
+	{
+	return m_private->attendees(event,pageNum,perPage);
+	}
+
+SmfError SmfEventsFetcher::postEvents(SmfEventList events)
+	{
+	return m_private->postEvents(events);
+	}
+
+SmfError SmfEventsFetcher::customRequest(const int& operationId,QByteArray* customData)
+	{
+	return m_private->customRequest(operationId, customData);
+	}
+
+SmfProvider* SmfEventsFetcher::getProvider() const
+	{
+	return m_baseProvider;
+	}
+
+SmfError SmfEventsFetcher::cancelRequest()
+	{
+	return m_private->cancelRequest();
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfclient/smfeventsfetcher.h	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,180 @@
+/**
+ * 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:
+ * Nalina Hariharan
+ *
+ * Description:
+ * Events related services
+ *
+ */
+
+#ifndef SMFEVENTSFETCHER_H_
+#define SMFEVENTSFETCHER_H_
+
+#include <smfglobal.h>
+#include <smfevent.h>
+#include <smflocation.h>
+#include <smfprovider.h>
+#include <smfcontact.h>
+
+class SmfEventsFetcherPrivate;
+
+using namespace QtMobility;
+
+/**
+ * @ingroup smf_client_group
+ * provides service ("org.symbian.smf.client.events.fetcher")
+ */
+class SMFCLIENT_EXPORT SmfEventsFetcher : public QObject
+	{
+	Q_OBJECT
+	
+public:
+	/**
+	 * Constructs SmfEventsFetcher with base provider info
+	 * Seeing as this is a plug-in implementation, these will realistically
+	 * be generated by SMF factory of some kind
+	 */
+	SmfEventsFetcher ( SmfProvider* baseProvider = 0 );
+	
+	/**
+	 * Destructor
+	 */
+	~SmfEventsFetcher ( );
+	
+public:
+	/**
+	 * Gets list of events in a particular venue asynchronously.
+	 * eventsAvailable() signal is emitted with SmfEventsList once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError events ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	/**
+	 * Gets list of venues of a particular location asynchronously.
+	 * venuesAvailable() signal is emitted with SmfLocationList once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value 
+	 */
+	SmfError venues ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	
+	/**
+	 * Gets a list of attendees to the event
+	 * attendeesAvailable() signal is emitted with SmfContacts for the users attending this event
+	 * @param event 
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError attendees(SmfEvent event, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE); 
+	
+public slots:
+	/**
+	 * Updates events. Might not be supported by all service provider.
+	 * eventsUpdated() signal can be checked for success value.
+	 * @param SmfEventsList List of events to be posted
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError postEvents ( SmfEventList events );
+	
+	/**
+	 * Request for a custom operation. The signal customDataAvailable() is emitted 
+	 * when the result is available.
+	 * @param operationId OperationId
+	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
+	 * Note:-Interpretation of operationId and customData is upto the concerned
+	 * plugin and client application. service provider should provide some
+	 * serializing-deserializing utilities for these custom data
+	 */
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
+	
+signals:
+	/**
+	 * Notification on arrival of event lists
+	 * Note if number of list is large, then it can download the list page by page.
+	 * @param list List of events
+	 * @param error SmfNoError if success, else appropriate error value
+	 * @param resultPage Page number info
+	 */
+	void eventsAvailable ( SmfEventList* list, 
+			SmfError error, SmfResultPage resultPage );
+	
+	/**
+	 * Notification on arrival of venues lists
+	 * Note if number of list is large, then it can download the list page by page.
+	 * @param list List of venues
+	 * @param error SmfNoError if success, else appropriate error value
+	 * @param resultPage Page number info
+	 */
+	void venuesAvailable ( SmfLocationList* list, 
+			SmfError error, SmfResultPage resultPage );
+	
+	/**
+	 * Notification on arrival of attendees lists
+	 * Note if number of list is large, then it can download the list page by page.
+	 * @param list List of attendees
+	 * @param error SmfNoError if success, else appropriate error value
+	 * @param resultPage Page number info
+	 */
+	void attendeesAvailable ( SmfContactList* list, 
+			SmfError error, SmfResultPage resultPage );
+
+	/**
+	 * Notification of the success of request to post an event
+	 * @param error SmfNoError if success, else appropriate error value
+	 */
+	void eventsUpdated ( SmfError success );
+	
+	/**
+	 * Signals availability of the result of the customRequest
+	 * @param operationId The ID to be shared between clients and the plugin
+	 * @param customData data
+	 */
+	void customDataAvailable( const int& operationId, QByteArray* customData );
+	
+private:
+	/**
+	 * Gets the base provider info
+	 */
+	SmfProvider* getProvider() const;
+	
+private:
+	SmfProvider* m_baseProvider;
+	SmfEventsFetcherPrivate* m_private;
+	friend class SmfEventsFetcherPrivate;
+	
+	};
+
+SMF_SERVICE_NAME(SmfEventsFetcher, "org.symbian.smf.client.events.fetcher\0.2")
+
+
+#endif /* SMFEVENTSFETCHER_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfclient/smfeventsfetcher_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,289 @@
+/**
+ * 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:
+ * Nalina Hariharan
+ *
+ * Description:
+ * Private implementation of events related services
+ *
+ */
+
+#include <qdebug.h>
+#include <smfcontact.h>
+
+#include "smfeventsfetcher.h"
+#include "smfeventsfetcher_p.h"
+#ifdef Q_OS_SYMBIAN
+	#include "smfclientsymbian.h"
+#else
+	#include "smfclientqt.h"
+#endif
+
+
+SmfEventsFetcherPrivate::SmfEventsFetcherPrivate(SmfEventsFetcher* aEventFetcher)
+		:m_eventFetcher(aEventFetcher)
+	{
+#ifdef Q_OS_SYMBIAN
+	//private impl for symbian
+	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
+#else
+	//TODO:- Use private impl for other platforms or else Qt impl
+#endif
+	}
+
+SmfEventsFetcherPrivate::~SmfEventsFetcherPrivate()
+	{
+	if(m_SmfClientPrivate)
+		{
+		delete m_SmfClientPrivate;
+		m_SmfClientPrivate = NULL;
+		}
+	}
+
+SmfError SmfEventsFetcherPrivate::events(SmfLocation venue, int pageNum, int perPage)
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_eventFetcher->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<venue;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+		
+	QString intfName(eventFetcherInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 1000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfEventsGetEvents, maxalloc);
+	return err;
+	}
+
+SmfError SmfEventsFetcherPrivate::venues(SmfLocation location, int pageNum, int perPage)
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_eventFetcher->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<location;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+		
+	QString intfName(eventFetcherInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 1000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfEventsGetVenues, maxalloc);
+	return err;
+	}
+
+SmfError SmfEventsFetcherPrivate::attendees(SmfEvent event, int pageNum, int perPage )
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_eventFetcher->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<event;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+		
+	QString intfName(eventFetcherInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 1000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfEventsGetEventAttendees, maxalloc);
+	return err;
+	}
+
+SmfError SmfEventsFetcherPrivate::postEvents(SmfEventList events)
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_eventFetcher->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<events;
+	
+	write<<dataToPlugins;
+	
+	QString intfName(eventFetcherInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 1000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfEventsPostEvents, maxalloc);
+	return err;
+	}
+
+SmfError SmfEventsFetcherPrivate::customRequest ( const int& operationId, QByteArray* customData )
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_eventFetcher->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
+	if(customData)
+		{
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
+		}
+	else
+		{
+		m_argFlag = 0;
+		streamToPlugin<<m_argFlag;
+		}
+	
+	write<<dataToPlugins;
+	
+	QString intfName(eventFetcherInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 1000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfEventsCustomRequest, maxalloc);
+	return err;
+	}
+
+SmfError SmfEventsFetcherPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfEventsFetcherPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
+	}
+
+void SmfEventsFetcherPrivate::resultsAvailable(QByteArray result,SmfRequestTypeID opcode,SmfError error)
+	{
+	//note:- "result" is serialized and we need to de-serialize it as per opcode
+	//Order of serialization Error value followed by data
+	
+	QDataStream reader(&result,QIODevice::ReadOnly);
+	
+	//Now de-serialize it based on opcode
+	switch(opcode)
+		{
+		case SmfEventsGetEvents:
+			{
+			SmfEventList* m_events = new SmfEventList;
+			reader>>*(m_events);
+			
+			// ToDo :-
+			SmfResultPage page;
+			
+			m_eventFetcher->eventsAvailable(m_events,error,page);
+			break;
+			}
+			
+		case SmfEventsGetVenues:
+			{
+			SmfLocationList* m_venues = new SmfLocationList;
+			reader>>*(m_venues);
+			
+			//ToDo :-
+			SmfResultPage page;
+			
+			m_eventFetcher->venuesAvailable(m_venues,error,page);
+			break;
+			}
+			
+		case SmfEventsGetEventAttendees:
+			{
+			SmfContactList* m_list = new SmfContactList;
+			reader>>*(m_list);
+			
+			//ToDo :-
+			SmfResultPage page;
+			
+			m_eventFetcher->attendeesAvailable(m_list,error,page);
+			break;
+			}
+			
+		case SmfEventsPostEvents:
+			m_eventFetcher->eventsUpdated(error);
+			break;
+			
+		case SmfEventsCustomRequest:
+   			{
+   			int operationId;
+   			QByteArray *data = new QByteArray;
+   			reader>>operationId;
+   			reader>>*data;
+   			qDebug()<<"operationId = "<<operationId;
+   			qDebug()<<"data size = "<<data->size();
+   			emit m_eventFetcher->customDataAvailable(operationId, data);
+   			break;
+   			}
+   			
+		default:
+			Q_ASSERT_X(1,"SmfEventsFetcherPrivate::resultsAvailable","unknown opcode");
+		}
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfclient/smfeventsfetcher_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,142 @@
+/**
+ * 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:
+ * Nalina Hariharan
+ *
+ * Description:
+ * Private implementation of events related services
+ *
+ */
+
+#ifndef SMFEVENTSFETCHER_P_H_
+#define SMFEVENTSFETCHER_P_H_
+
+#include <smfglobal.h>
+#include <smfobserver.h>
+#include <smfevent.h>
+#include <smflocation.h>
+#include <smfprovider.h>
+
+class SmfEventsFetcher;
+
+#ifdef Q_OS_SYMBIAN
+	class CSmfClientSymbian;	
+#else
+	class SmfClientQt;
+#endif
+
+class SmfEventsFetcherPrivate : public smfObserver
+	{
+	Q_OBJECT
+
+public:
+	/**
+	 * Constructs SmfEventsFetcher with base provider info
+	 */
+	SmfEventsFetcherPrivate(SmfEventsFetcher* aEventFetcher);
+	
+	/**
+	 * Destructor
+	 */
+	~SmfEventsFetcherPrivate();
+
+public:
+	/**
+	 * Gets list of events in a particular venue asynchronously.
+	 * eventsAvailable() signal is emitted with SmfEventsList once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError events ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	/**
+	 * Gets list of venues of a particular location asynchronously.
+	 * venuesAvailable() signal is emitted with SmfLocationList once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value 
+	 */
+	SmfError venues ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	
+	/**
+	 * Gets a list of attendees to the event
+	 * attendeesAvailable() signal is emitted with SmfContacts for the users attending this event
+	 * @param event 
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError attendees(SmfEvent event, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE); 
+	
+	/**
+	 * Updates events. Might not be supported by all service provider.
+	 * eventsUpdated() signal can be checked for success value.
+	 * @param SmfEventsList List of events to be posted
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError postEvents ( SmfEventList events );
+	
+	/**
+	 * Request for a custom operation. The signal customDataAvailable() is emitted 
+	 * when the result is available.
+	 * @param operationId OperationId
+	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
+	 * Note:-Interpretation of operationId and customData is upto the concerned
+	 * plugin and client application. service provider should provide some
+	 * serializing-deserializing utilities for these custom data
+	 */
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
+	
+public: //From smfObserver
+	/**
+	 * To notify availibility of asynchronous requests.
+	 * @param result Requested result, before using must check error param.
+	 * @param opcode Requested opcode, for which the result has arrived.
+	 * @param error Error 
+	 */
+	void resultsAvailable(QByteArray result,SmfRequestTypeID opcode, SmfError error);
+
+private:
+	SmfEventsFetcher* m_eventFetcher;
+	//serialized byte array of provider+other info to be sent to the server
+	//The order:- SmfProvider then params in order of their appearance in fn
+	QByteArray m_serializedDataToServer;
+#ifdef Q_OS_SYMBIAN
+	CSmfClientSymbian* m_SmfClientPrivate;
+	friend class CSmfClientSymbian;
+#else
+	SmfClientQt* m_SmfClientPrivate;
+	friend class SmfClientQt;
+#endif
+	quint8 m_argFlag;
+	
+	};
+
+#endif /* SMFEVENTSFETCHER_P_H_ */
--- a/smf/smfservermodule/smfclient/smfgallery.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfgallery.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -45,10 +45,11 @@
  * @param user the user whose albums are requested 
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGallery::albums(QStringList names, SmfContact* user, int pageNum, int perPage)
+SmfError SmfGallery::albums(QStringList names, SmfContact* user, int pageNum, int perPage)
 	{
-	m_private->albums(names,user, pageNum, perPage);	
+	return m_private->albums(names,user, pageNum, perPage);	
 	}
 
 /**
@@ -59,41 +60,45 @@
  * @param albums album(s) whose pictures are being requested
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGallery::pictures(SmfPictureAlbumList &albums, int pageNum, int perPage)
+SmfError SmfGallery::pictures(SmfPictureAlbumList &albums, int pageNum, int perPage)
 	{
-	m_private->pictures( albums, pageNum, perPage);
+	return m_private->pictures( albums, pageNum, perPage);
 	}
 
 
 /**
  * Returns a user title/caption for the picture
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGallery::description ( SmfPicture& picture )
+SmfError SmfGallery::description ( SmfPicture& picture )
 	{
-	m_private->description(picture);
+	return m_private->description(picture);
 	}
 
 /**
  * Upload an image.Implemented as slot to connect to UI controls more easily
  * uploadFinished() signal is emitted with the success value of the upload
  * @param image the image to be uploaded
- * @param album the optional destination album name 
+ * @param album the optional destination album name
+ * @return SmfError. SmfNoError if success, else appropriate error code 
  */
-void SmfGallery::upload(SmfPicture* image, SmfPictureAlbum* album)
+SmfError SmfGallery::upload(SmfPicture* image, SmfPictureAlbum* album)
 	{
-	m_private->upload(image,album);
+	return m_private->upload(image,album);
 	}
 
 /**
  * Upload an list image.Implemented as slot to connect to UI controls more easily
  * uploadFinished() signal is emitted with the success value of the upload
  * @param images the list image to be uploaded
- * @param album the optional destination album name 
+ * @param album the optional destination album name
+ * @return SmfError. SmfNoError if success, else appropriate error code 
  */
-void SmfGallery::upload(SmfPictureList* images, SmfPictureAlbum* album) 
+SmfError SmfGallery::upload(SmfPictureList* images, SmfPictureAlbum* album) 
 	{
-	m_private->upload(images,album);
+	return m_private->upload(images,album);
 	}
 
 /**
@@ -101,23 +106,25 @@
  * with success of the post once comment is posted.
  * @param image Image to comment on
  * @param comment Comment to post
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGallery::postComment(SmfPicture image, SmfComment comment) 
+SmfError SmfGallery::postComment(SmfPicture image, SmfComment comment) 
 	{
-	m_private->postComment(image,comment);
+	return m_private->postComment(image,comment);
 	}
    
 /**
  * Request for a custom operation.
  * @param operationId OperationId
  * @param customData Custom data to be sent
+ * @return SmfError. SmfNoError if success, else appropriate error code
  * Note:-Interpretation of operationId and customData is upto the concerned
  * plugin and client application. service provider should provide some
  * serializing-deserializing utilities for these custom data
  */
-void SmfGallery::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfGallery::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
 	}
 
 /**
@@ -127,3 +134,8 @@
 	{
 	return m_baseProvider;
 	}
+
+SmfError SmfGallery::cancelRequest()
+	{
+	return m_private->cancelRequest();
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfclient/smfgallery.d	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,403 @@
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\smfgallery.cpp
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: /S60/devices/Nokia_Symbian3_SDK_v0.8/epoc32/include/rvct/rvct.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: /S60/devices/Nokia_Symbian3_SDK_v0.8/epoc32/include/variant/Symbian_OS.hrh
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\platform_paths.hrh
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\smfgallery.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QObject
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qobject.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\../../src/corelib/kernel/qobject.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobjectdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/kernel/qobjectdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/global/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/global/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stddef.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/cdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\_ansi.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/_null.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/_types.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis/machine/_types.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qconfig.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/global/qconfig.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32def.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qfeatures.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/global/qfeatures.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qchar.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qchar.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/thread/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbasicatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/thread/qbasicatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic_arch.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/arch/qatomic_arch.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic_symbian.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/arch/qatomic_symbian.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32std.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32cmn.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32const.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32err.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32lang.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32reg.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32capability.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32des8.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32des16.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis/stlportv5/exception
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32cmn.inl
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\e32std.inl
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\string.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\strings.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stdarg.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\string
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_prolog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/features.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_stlport_version.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/user_config.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/compat.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/host.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/_system.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/stl_rvct.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/stl_symbian.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/stl_confix.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/config/_native_headers.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_hash.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_hash_fun.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_cstddef.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_alloc.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_cstdlib.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stdlib.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_cmath.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\math.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis/machine/_limits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\libm_aliases.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\signgam.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_cstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\using/cstring
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_algobase.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\climits
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\limits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/limits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_pair.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/type_traits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/type_manips.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_move_construct_fwk.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_iterator_base.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_algobase.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_iterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_new.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis/stlportv5/new
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_construct.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_alloc.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_fwd.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\iosfwd
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_cwchar.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis/wchar.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/stat.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/time.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/_timeval.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/types.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/timespec.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\time.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\_ctype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stdio.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\errno.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stdarg_e.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sys/dirent.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_mbstate_t.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_iosfwd.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/char_traits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_function_base.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_uninitialized.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_base.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_npos.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_operators.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ctraits_fns.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_range_errors.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_io.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ostream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ios.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ios_base.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_stdexcept_base.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_exception.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\utility
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_locale.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_threads.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\pthread.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\pthreadtypes.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\sched.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\pthreadalias.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_threads.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ctype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/c_locale.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\ctype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_numpunct.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ios.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_streambuf.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_streambuf.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ostreambuf_iterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_ostream.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_num_put.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_iostream_string.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_num_put.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_limits.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\cfloat
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\float.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_limits.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_istream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_istreambuf_iterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_istream.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_num_get.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_num_get.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_string_io.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_epilog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_config_compat_post.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qiterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qalgorithms.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qalgorithms.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\iterator
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_prolog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_stream_iterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_epilog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_config_compat_post.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\list
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_prolog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_list.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_list.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_list.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_carray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_relops_cont.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_epilog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_config_compat_post.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qscopedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qscopedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QBuffer
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qbuffer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\../../src/corelib/io/qbuffer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiodevice.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/io/qiodevice.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobject.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\QNetworkRequest
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\qnetworkrequest.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\../../src/network/access/qnetworkrequest.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QSharedDataPointer
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QString
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QUrl
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qurl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/io/qurl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobjectdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpair.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qpair.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/io/qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qscopedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiodevice.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QVariant
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qvariant.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/kernel/qvariant.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qmetatype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/kernel/qmetatype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qmap.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qmap.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\map
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_prolog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_map.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_tree.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_tree.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_relops_cont.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_relops_cont.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_relops_cont.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_epilog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_config_compat_post.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qhash.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qhash.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qchar.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpair.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\QNetworkAccessManager
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\qnetworkaccessmanager.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtNetwork\../../src/network/access/qnetworkaccessmanager.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QObject
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobject.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfclientglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/QtGlobal
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QString
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfpicture.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui\QImage
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui\qimage.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui\../../src/gui/image/qimage.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qtransform.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qtransform.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qmatrix.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qmatrix.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qpolygon.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qpolygon.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qvector.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qvector.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qiterator.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qalgorithms.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\vector
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_prolog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_vector.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_vector.c
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_bvector.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_relops_cont.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_epilog.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\stdapis\stlportv5\stl/_config_compat_post.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qsize.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qsize.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qregion.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qregion.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qwindowdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/kernel/qwindowdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobjectdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qwindowdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qline.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qline.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qpainterpath.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qpainterpath.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qmatrix.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qline.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qvector.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qscopedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qpolygon.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qregion.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qwindowdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qline.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qpoint.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qpaintdevice.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qpaintdevice.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qwindowdefs.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/qrgb.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui/../../src/gui/painting/qrgb.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qbytearray.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qrect.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QDateTime
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatetime.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\../../src/corelib/tools/qdatetime.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qnamespace.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qsharedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qsharedpointer.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qglobal.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qsharedpointer_impl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qsharedpointer_impl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qatomic.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qobject.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QStringList
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qstringlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\../../src/corelib/tools/qstringlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qalgorithms.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qregexp.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qregexp.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstringmatcher.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/../../src/corelib/tools/qstringmatcher.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore/qstring.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QUrl
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qurl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QSharedData
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QMetaType
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qmetatype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfcomment.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QDateTime
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatetime.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QSharedData
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QMetaType
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qmetatype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfpicturealbum.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui\QImage
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtGui\qimage.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QDateTime
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatetime.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QStringList
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qstringlist.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QUrl
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qurl.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qdatastream.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QSharedData
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qshareddata.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QMetaType
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qmetatype.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\smfgallery_p.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \S60\devices\Nokia_Symbian3_SDK_v0.8\epoc32\include\smfobserver.h
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\QObject
+\S60\devices\Nokia_Symbian3_SDK_v0.8\EPOC32\BUILD\ARMv5\sfmerged\sf\smf\smfservermodule\smfclient\SMFCLIENT_0XE08059D4\ARMV5\udeb\smfgallery.o: \Qt\4.6.2\include\QtCore\qobject.h
--- a/smf/smfservermodule/smfclient/smfgallery.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfgallery.h	Thu Sep 23 17:43:31 2010 +0530
@@ -71,8 +71,9 @@
 	 * @param user the user whose albums are requested 
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void albums ( QStringList names, SmfContact* user, 
+	SmfError albums ( QStringList names, SmfContact* user, 
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 		
@@ -84,15 +85,17 @@
 	 * @param albums album(s) whose pictures are being requested
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void pictures ( SmfPictureAlbumList &albums, 
+	SmfError pictures ( SmfPictureAlbumList &albums, 
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Returns a user title/caption for the picture
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void description ( SmfPicture& picture );
+	SmfError description ( SmfPicture& picture );
 	
 public slots:
 	/**
@@ -100,34 +103,46 @@
 	 * uploadFinished() signal is emitted with the success value of the upload
 	 * @param image the image to be uploaded
 	 * @param album the optional destination album name 
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void upload ( SmfPicture* image, SmfPictureAlbum* album = NULL );
+	SmfError upload ( SmfPicture* image, SmfPictureAlbum* album = NULL );
 
 	/**
 	 * Upload an list image.Implemented as slot to connect to UI controls more easily
 	 * uploadFinished() signal is emitted with the success value of the upload
 	 * @param images the list image to be uploaded
-	 * @param album the optional destination album name 
+	 * @param album the optional destination album name
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	void upload ( SmfPictureList* images, SmfPictureAlbum* album = NULL );
+	SmfError upload ( SmfPictureList* images, SmfPictureAlbum* album = NULL );
 
 	/**
 	 * Posts a comment for an image. uploadFinished() signal is emitted
 	 * with success of the post once comment is posted.
 	 * @param image Image to comment on
 	 * @param comment Comment to post
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void postComment ( SmfPicture image, SmfComment comment );
+	SmfError postComment ( SmfPicture image, SmfComment comment );
 	
 	/**
 	 * Request for a custom operation.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 signals:
 	/**
--- a/smf/smfservermodule/smfclient/smfgallery_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfgallery_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -57,32 +57,39 @@
  * @param user the user whose albums are requested 
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGalleryPrivate::albums(QStringList names, SmfContact* user, int pageNum, int perPage)
+SmfError SmfGalleryPrivate::albums(QStringList names, SmfContact* user, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<names;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<names;
 	if(user)
 		{
-		write<<m_argFlag;
-		write<<*user;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*user;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(galleryInterface);
 	int maxalloc = MaxSmfPictureAlbumSize*perPage;
@@ -90,6 +97,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfPictureGetAlbums, maxalloc);
+	return err;
 	}
 
 
@@ -101,21 +109,29 @@
  * @param albums album(s) whose pictures are being requested
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGalleryPrivate::pictures(SmfPictureAlbumList &albums,int pageNum,int perPage)
+SmfError SmfGalleryPrivate::pictures(SmfPictureAlbumList &albums,int pageNum,int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<albums;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<albums;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(galleryInterface);
 	int maxalloc = MaxSmfPictureSize*perPage;
@@ -123,22 +139,31 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 		  SmfPictureGetPictures, maxalloc);
+	return err;
 	}
 
 /**
  * Returns a user title/caption for the picture
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGalleryPrivate::description ( SmfPicture& picture )
+SmfError SmfGalleryPrivate::description ( SmfPicture& picture )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<picture;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<picture;
 	
+	write<<dataToPlugins;
+		
 	QString intfName(galleryInterface);
 	// ToDo :- Setting max limit of description string as 1000
 	int maxalloc = 1000;
@@ -146,89 +171,107 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 		  SmfPictureDescription, maxalloc);
+	return err;
 	}
 
 /**
  * Upload an image.Implemented as slot to connect to UI controls more easily
  * uploadFinished() signal is emitted with the success value of the upload
  * @param image the image to be uploaded
- * @param album the optional destination album name 
+ * @param album the optional destination album name
+ * @return SmfError. SmfNoError if success, else appropriate error code 
  */
-void SmfGalleryPrivate::upload(SmfPicture* image, SmfPictureAlbum* album)
+SmfError SmfGalleryPrivate::upload(SmfPicture* image, SmfPictureAlbum* album)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	if(image)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*image;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*image;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 
 	if(album)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*album;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*album;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+		
 	QString intfName(galleryInterface);
 	int maxalloc = 100; // ToDo:- limit set as 100
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 		  SmfPictureUpload, maxalloc);
+	return err;
 	}
 
 /**
  * Upload an list image.Implemented as slot to connect to UI controls more easily
  * uploadFinished() signal is emitted with the success value of the upload
  * @param images the list image to be uploaded
- * @param album the optional destination album name 
+ * @param album the optional destination album name
+ * @return SmfError. SmfNoError if success, else appropriate error code 
  */
-void SmfGalleryPrivate::upload(SmfPictureList* images, SmfPictureAlbum* album)
+SmfError SmfGalleryPrivate::upload(SmfPictureList* images, SmfPictureAlbum* album)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray
 	m_serializedDataToServer.clear();
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	if(images)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*images;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*images;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 
 	if(album)
 		{
 		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*album;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*album;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
+	
+	write<<dataToPlugins;
 		
 	QString intfName(galleryInterface);
 	int maxalloc = 1000; // ToDo:- limit set as 1000
@@ -236,6 +279,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfPictureMultiUpload, maxalloc);
+	return err;
 	}
 
 /**
@@ -243,56 +287,73 @@
  * with success of the post once comment is posted.
  * @param image Image to comment on
  * @param comment Comment to post
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfGalleryPrivate::postComment(SmfPicture image, SmfComment comment)
+SmfError SmfGalleryPrivate::postComment(SmfPicture image, SmfComment comment)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<image;
-	write<<m_argFlag;
-	write<<comment;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<image;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<comment;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(galleryInterface);
 	int maxalloc = 100; // ToDo:- limit set as 100
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfPicturePostComment, maxalloc);
+	return err;
 	}
 
 /**
  * Request for a custom operation.
  * @param operationId OperationId
  * @param customData Custom data to be sent
+ * @return SmfError. SmfNoError if success, else appropriate error code
  * Note:-Interpretation of operationId and customData is upto the concerned
  * plugin and client application. service provider should provide some
  * serializing-deserializing utilities for these custom data
  */
-void SmfGalleryPrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfGalleryPrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_gallery->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
-
+	
+	write<<dataToPlugins;
+	
 	QString intfName(galleryInterface);
 	//ToDo:- How much size to allocate for custo data? keeping MaxSmfPictureSize for now
 	int maxAlloc = MaxSmfPictureSize;
@@ -300,6 +361,21 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfPictureCustomRequest, maxAlloc);
+	return err;
+	}
+
+SmfError SmfGalleryPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfGalleryPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 
--- a/smf/smfservermodule/smfclient/smfgallery_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfgallery_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -70,8 +70,9 @@
 	 * @param user the user whose albums are requested 
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void albums ( QStringList names, SmfContact* user, 
+	SmfError albums ( QStringList names, SmfContact* user, 
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 		
@@ -83,49 +84,63 @@
 	 * @param albums album(s) whose pictures are being requested
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void pictures ( SmfPictureAlbumList &albums, 
+	SmfError pictures ( SmfPictureAlbumList &albums, 
 					int pageNum = SMF_FIRST_PAGE,
 					int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Returns a user title/caption for the picture
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void description ( SmfPicture& picture );
+	SmfError description ( SmfPicture& picture );
 
 	/**
 	 * Upload an image.Implemented as slot to connect to UI controls more easily
 	 * uploadFinished() signal is emitted with the success value of the upload
 	 * @param image the image to be uploaded
-	 * @param album the optional destination album name 
+	 * @param album the optional destination album name
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void upload ( SmfPicture* image, SmfPictureAlbum* album = NULL );
+	SmfError upload ( SmfPicture* image, SmfPictureAlbum* album = NULL );
 
 	/**
 	 * Upload an list image.Implemented as slot to connect to UI controls more easily
 	 * uploadFinished() signal is emitted with the success value of the upload
 	 * @param images the list image to be uploaded
-	 * @param album the optional destination album name 
+	 * @param album the optional destination album name
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void upload ( SmfPictureList* images, SmfPictureAlbum* album = NULL );
+	SmfError upload ( SmfPictureList* images, SmfPictureAlbum* album = NULL );
 
 	/**
 	 * Posts a comment for an image. uploadFinished() signal is emitted
 	 * with success of the post once comment is posted.
 	 * @param image Image to comment on
 	 * @param comment Comment to post
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void postComment ( SmfPicture image, SmfComment comment );
+	SmfError postComment ( SmfPicture image, SmfComment comment );
 	
 	/**
 	 * Request for a custom operation.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public:// from smfobserver
 	/**
@@ -139,7 +154,7 @@
 private:
 	SmfGallery* m_gallery;
 	QByteArray m_serializedDataToServer;//serialized byte array of provider+other info to be sent to the server
-	int m_argFlag;
+	quint8 m_argFlag;
 #ifdef Q_OS_SYMBIAN
 	CSmfClientSymbian* m_SmfClientPrivate;
 	friend class CSmfClientSymbian;
--- a/smf/smfservermodule/smfclient/smfmusic.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfmusic.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -19,6 +19,7 @@
 #include <smfmusicrating.h>
 #include <smfcomment.h>
 #include <smfmusicfingerprint.h>
+#include <smfcontact.h>
 
 #include "smfmusic.h"
 #include "smfmusic_p.h"
@@ -40,34 +41,59 @@
 		}
 	}
 
-void SmfMusicService::userinfo()
+SmfError SmfMusicService::userMusicInfo()
 	{
-	m_private->userinfo();
+	return m_private->userMusicInfo();
+	}
+
+SmfError SmfMusicService::searchArtist ( SmfArtists artist, int pageNum, int perPage)
+	{
+	return m_private->searchArtist(artist,pageNum,perPage);
 	}
 
-void SmfMusicService::searchUser(SmfLocation venue, int pageNum, int perPage)
+SmfError SmfMusicService::searchAlbum ( SmfAlbum album, int pageNum, int perPage)
+	{
+	return m_private->searchAlbum(album,pageNum,perPage);
+	}
+
+SmfError SmfMusicService::searchEvents ( SmfEvent event, int pageNum, int perPage)
 	{
-	m_private->searchUser(venue,pageNum,perPage);
+	return m_private->searchEvents(event,pageNum,perPage);
+	}
+
+SmfError SmfMusicService::searchVenue ( SmfLocation location, int pageNum, int perPage)
+	{
+	return m_private->searchVenue(location,pageNum,perPage);
 	}
 
-void SmfMusicService::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfMusicService::searchUser(SmfLocation venue, int pageNum, int perPage)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->searchUser(venue,pageNum,perPage);
+	}
+
+SmfError SmfMusicService::customRequest(const int& operationId,QByteArray* customData)
+	{
+	return m_private->customRequest(operationId, customData);
 	}
 
-void SmfMusicService::postCurrentPlaying(SmfTrackInfo track)
+SmfError SmfMusicService::postCurrentPlaying(SmfTrackInfo track)
 	{
-	m_private->postCurrentPlaying(track);
+	return m_private->postCurrentPlaying(track);
 	}
 
-void SmfMusicService::postRating(SmfTrackInfo track, SmfMusicRating rate)
+SmfError SmfMusicService::postRating(SmfTrackInfo track, SmfMusicRating rate)
 	{
-	m_private->postRating(track,rate);
+	return m_private->postRating(track,rate);
 	}
 
-void SmfMusicService::postComments(SmfTrackInfo track, SmfComment comment)
+SmfError SmfMusicService::postComments(SmfTrackInfo track, SmfComment comment)
 	{
-	m_private->postComments(track,comment);
+	return m_private->postComments(track,comment);
+	}
+
+SmfError SmfMusicService::cancelRequest()
+	{
+	return m_private->cancelRequest();
 	}
 
 SmfProvider* SmfMusicService::getProvider() const
@@ -93,29 +119,44 @@
 		}
 	}
 
-void SmfMusicSearch::recommendations(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearch::recommendations(SmfTrackInfo track, int pageNum, int perPage)
 	{
-	m_private->recommendations(track,pageNum,perPage);
+	return m_private->recommendations(track,pageNum,perPage);
 	}
 
-void SmfMusicSearch::tracks(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearch::tracksSimilar ( SmfTrackInfo track, int pageNum, int perPage)
 	{
-	m_private->tracks(track,pageNum,perPage);
+	return m_private->tracksSimilar(track,pageNum,perPage);
+	}
+
+SmfError SmfMusicSearch::tracksOfAlbum ( SmfAlbum album, int pageNum, int perPage )
+	{
+	return m_private->tracksOfAlbum(album,pageNum,perPage);
 	}
 
-void SmfMusicSearch::trackInfo(SmfMusicFingerPrint signature, int pageNum, int perPage)
+SmfError SmfMusicSearch::tracksOfArtist ( SmfArtists artists, int pageNum, int perPage )
 	{
-	m_private->trackInfo(signature,pageNum,perPage);
+	return m_private->tracksOfArtist(artists,pageNum,perPage);
+	}
+
+SmfError SmfMusicSearch::trackInfo(SmfMusicFingerPrint signature, int pageNum, int perPage)
+	{
+	return m_private->trackInfo(signature,pageNum,perPage);
 	}
 
-void SmfMusicSearch::stores(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearch::stores(SmfTrackInfo track, int pageNum, int perPage)
 	{
-	m_private->stores(track,pageNum,perPage);
+	return m_private->stores(track,pageNum,perPage);
 	}
 
-void SmfMusicSearch::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfMusicSearch::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
+	}
+
+SmfError SmfMusicSearch::cancelRequest()
+	{
+	return m_private->cancelRequest();
 	}
 
 SmfProvider* SmfMusicSearch::getProvider() const
@@ -141,29 +182,34 @@
 		}
 	}
 
-void SmfPlaylistService::playlists(int pageNum, int perPage)
+SmfError SmfPlaylistService::playlists(int pageNum, int perPage)
 	{
-	m_private->playlists(pageNum,perPage);
+	return m_private->playlists(pageNum,perPage);
 	}
 
-void SmfPlaylistService::playlistsOf(SmfMusicProfile *user, int pageNum, int perPage)
+SmfError SmfPlaylistService::playlistsOf(SmfContact *user, int pageNum, int perPage)
 	{
-	m_private->playlistsOf(user,pageNum,perPage);
+	return m_private->playlistsOf(user,pageNum,perPage);
 	}
 
-int SmfPlaylistService::addToPlaylist(SmfPlaylist plst, SmfTrackInfoList *tracks)
+SmfError SmfPlaylistService::addToPlaylist(SmfPlaylist plst, SmfTrackInfoList *tracks)
 	{
 	return m_private->addToPlaylist(plst,tracks);
 	}
 
-int SmfPlaylistService::postCurrentPlayingPlaylist(SmfPlaylist plst)
+SmfError SmfPlaylistService::postCurrentPlayingPlaylist(SmfPlaylist plst)
 	{
 	return m_private->postCurrentPlayingPlaylist(plst);
 	}
 
-void SmfPlaylistService::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfPlaylistService::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
+	}
+
+SmfError SmfPlaylistService::cancelRequest()
+	{
+	return m_private->cancelRequest();
 	}
 
 SmfProvider* SmfPlaylistService::getProvider() const
@@ -173,49 +219,6 @@
 //SmfPlaylistService end
 
 
-//SmfMusicEvents start
-SmfMusicEvents::SmfMusicEvents(SmfProvider *baseProvider)
-		:m_baseProvider(baseProvider)
-	{
-	m_private = new SmfMusicEventsPrivate(this);
-	}
-
-SmfMusicEvents::~SmfMusicEvents()
-	{
-	if(m_private)
-		{
-		delete m_private;
-		m_private = NULL;
-		}
-	}
-
-void SmfMusicEvents::events(SmfLocation venue, int pageNum, int perPage)
-	{
-	m_private->events(venue,pageNum,perPage);
-	}
-
-void SmfMusicEvents::venues(SmfLocation location, int pageNum, int perPage)
-	{
-	m_private->venues(location,pageNum,perPage);
-	}
-
-void SmfMusicEvents::postEvents(SmfEventList events)
-	{
-	m_private->postEvents(events);
-	}
-
-void SmfMusicEvents::customRequest(const int& operationId,QByteArray* customData)
-	{
-	m_private->customRequest(operationId, customData);
-	}
-
-SmfProvider* SmfMusicEvents::getProvider() const
-	{
-	return m_baseProvider;
-	}
-//SmfMusicEvents end
-
-
 //SmfLyricsService start
 SmfLyricsService::SmfLyricsService(SmfProvider *baseProvider)
 		:m_baseProvider(baseProvider)
@@ -232,19 +235,24 @@
 		}
 	}
 
-void SmfLyricsService::lyrics(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfLyricsService::lyrics(SmfTrackInfo track, int pageNum, int perPage)
 	{
-	m_private->lyrics(track,pageNum,perPage);
+	return m_private->lyrics(track,pageNum,perPage);
 	}
 
-void SmfLyricsService::subtitles(SmfTrackInfo track, SmfSubtitleSearchFilter filter, int pageNum, int perPage)
+SmfError SmfLyricsService::subtitles(SmfTrackInfo track, SmfSubtitleSearchFilter filter, int pageNum, int perPage)
 	{
-	m_private->subtitles(track,filter,pageNum,perPage);
+	return m_private->subtitles(track,filter,pageNum,perPage);
 	}
 
-void SmfLyricsService::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfLyricsService::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
+	}
+
+SmfError SmfLyricsService::cancelRequest()
+	{
+	return m_private->cancelRequest();
 	}
 
 SmfProvider* SmfLyricsService::getProvider() const
--- a/smf/smfservermodule/smfclient/smfmusic.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfmusic.h	Thu Sep 23 17:43:31 2010 +0530
@@ -30,15 +30,16 @@
 #include <smftrackinfo.h>
 #include <smflocation.h>
 #include <smfprovider.h>
+#include <smfcontact.h>
 
 class SmfMusicServicePrivate;
 class SmfMusicSearchPrivate;
 class SmfLyricsServicePrivate;
 class SmfPlaylistServicePrivate;
-class SmfMusicEventsPrivate;
 class SmfMusicFingerPrint;
 class SmfMusicRating;
 class SmfComment;
+class SmfContact;
 
 using namespace QtMobility;
 
@@ -46,6 +47,11 @@
 /**
  * @ingroup smf_client_group
  * Basic music service ("org.symbian.smf.client.music.service")
+ * This is the music profile information of a user in this service. Also provides searching
+ * on music meta information like albums artists etc. For searching for actual music/tracks
+ * use ("org.symbian.smf.client.music.search") interface from this service provider
+ * For usual contact information (like address, nickname, friends etc) please 
+ * use ("org.symbian.smf.client.contact.fetcher") interface from this service provider 
  */
 class SMFCLIENT_EXPORT SmfMusicService : public QObject
 	{
@@ -65,57 +71,166 @@
 
 public slots:
 	/**
-	 * Gets self profile information asynchronously.
-	 * userInfoAvailable() signal is emitted with SmfMusicProfile when the info is arrived
+	 * Gets self profile information (e.g. music likings, feavorites etc) asynchronously.
+	 * userMusicInfoAvailable() signal is emitted with SmfMusicProfile when the info is arrived
+	 * @return SmfError. SmfNoError if success, else appropriate error code
+	 */
+	SmfError userMusicInfo ( );
+
+	/**
+	 * Asynchronously searches information about artists in this service. All information 
+	 * in SmfArtists is not required, however more available the better 
+	 * searchArtistInfoAvailable() signal is emitted when the info is arrived.
+	 * @param artist The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchArtist ( SmfArtists artist, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+
+	/**
+	 * Asynchronously searches information about albums in this service. All information 
+	 * in SmfAlbum is not required, however more available the better 
+	 * searchAlbumInfoAvailable() signal is emitted when the info is arrived.
+	 * @param album The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
 	 */
-	void userinfo ( );
+	SmfError searchAlbum ( SmfAlbum album, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+	
+	/**
+	 * Asynchronously searches information about events in this service. All information 
+	 * in SmfEvents is not required, however more available the better 
+	 * searchEventsInfoAvailable() signal is emitted when the info is arrived.
+	 * @param event The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchEvents ( SmfEvent event, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+	
+	/**
+	 * Asynchronously searches information about venue in this service. All information 
+	 * in SmfVenue is not required, however more available the better 
+	 * searchVenueInfoAvailable() signal is emitted when the info is arrived.
+	 * @param location The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchVenue ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Asynchronously searches information about other service users for a particular venue
-	 * searchInfoAvailable() signal is emitted with SmfMusicProfileList when the info is arrived.
+	 * searchUserInfoAvailable() signal is emitted with SmfMusicProfileList when the info is arrived.
 	 * When the list is big user can specify the page number and per page item data.
 	 * If not supplied by the user default values are used.
+	 * @param location The search criteria
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
 	 */
-	void searchUser ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
+	SmfError searchUser ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
 						int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
+	 * Posts currently playing track.
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track to post
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError postCurrentPlaying ( SmfTrackInfo track);
+	
+	/**
+	 * Rate a music via this API 
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track on which rating should be posted
+	 * @param rate Rating value
+	 * @return SmfError, SmfNoError if success, else appropriate error value 
+	 */
+	SmfError postRating ( SmfTrackInfo track, SmfMusicRating rate);
+
+	/**
+	 * Comment on a track via this API 
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track on which comment should be posted
+	 * @param comment The comemnt to be posted
+	 * @return SmfError, SmfNoError if success, else appropriate error value  
+	 */
+	SmfError postComments ( SmfTrackInfo track, SmfComment comment);
+
+	/**
 	 * Request for a custom operation. The signal customDataAvailable() is emitted 
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
 	
-public slots:
-	/**
-	 * Posts currently playing track.
-	 * Success can be checked by checking the signal postFinished()
-	 * @param track Track to post
-	 */
-	void postCurrentPlaying ( SmfTrackInfo track);
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
-	void postRating ( SmfTrackInfo track, SmfMusicRating rate);
 	
-	void postComments ( SmfTrackInfo track, SmfComment comment);
-
 signals:
 	/**
 	 * Notification on arrival of the self profile as result of userinfo().
 	 * @param profile The self profile
+	 * @param error SmfNoError if success, else appropriate error value
 	 */
-	void userInfoAvailable ( SmfMusicProfile* profile, SmfError error );
+	void userMusicInfoAvailable ( SmfMusicProfile* profile, SmfError error );
+	
+	/**
+	 * Notification on arrival of search info
+	 * @param profileList List of music profiles
+	 * @param error SmfNoError if success, else appropriate error value
+	 */
+	void searchUserInfoAvailable ( SmfMusicProfileList* profileList, 
+			SmfError error, SmfResultPage resultPage );
 	
 	/**
 	 * Notification on arrival of search info
-	 * @param profileList List of music profiles
+	 * @param artists List of artists
+	 * @param error SmfNoError if success, else appropriate error value
+	 */
+	void searchArtistInfoAvailable (QList<SmfArtists>* artists, 
+			SmfError error, SmfResultPage resultPage );
+	
+	/**
+	 * Notification on arrival of search info
+	 * @param albumList List of albums
+	 * @param error SmfNoError if success, else appropriate error value
 	 */
-	void searchInfoAvailable ( SmfMusicProfileList* profileList, 
+	void searchAlbumInfoAvailable ( QList<SmfAlbum>* albumList, 
+			SmfError error, SmfResultPage resultPage );
+
+	/**
+	 * Notification on arrival of search info
+	 * @param eventList List of events
+	 * @param error SmfNoError if success, else appropriate error value
+	 */
+	void searchEventsInfoAvailable ( SmfEventList* eventList, 
+			SmfError error, SmfResultPage resultPage );
+	
+	/**
+	 * Notification on arrival of search info
+	 * @param venueList List of venues
+	 * @param error SmfNoError if success, else appropriate error value
+	 */
+	void searchVenueInfoAvailable ( SmfLocationList* venueList, 
 			SmfError error, SmfResultPage resultPage );
 	
 	/**
@@ -127,7 +242,7 @@
 	
 	/**
 	 * Signals availability of the result of the posting a track or a comment or a rating
-	 * @param error Error if any
+	 * @param error SmfNoError if success, else appropriate error value
 	 */
 	void postfinished ( SmfError error );
 	
@@ -177,8 +292,9 @@
 	 * @param track The track for which similar recommendations need to be fetched.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void recommendations ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError recommendations ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -190,8 +306,37 @@
 	 * @param track The search criteria, similar tracks are searched
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void tracks ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError tracksSimilar ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+
+	/**
+	 * Searches for tracks for a given album asynchronously.
+	 * The signal trackSearchAvailable() is emitted with SmfTrackInfoList
+	 * once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param album The album containing the id
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError tracksOfAlbum ( SmfAlbum album, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	/**
+	 * Searches for tracks for a given artist(s) asynchronously.
+	 * The signal trackSearchAvailable() is emitted with SmfTrackInfoList
+	 * once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param artists The artists list
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError tracksOfArtist ( SmfArtists artists, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -201,8 +346,9 @@
 	 * @param signature The search criteria,signature to be searched for
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void trackInfo ( SmfMusicFingerPrint signature, int pageNum = SMF_FIRST_PAGE,
+	SmfError trackInfo ( SmfMusicFingerPrint signature, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -211,8 +357,9 @@
 	 * @param track The search criteria for stores
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void stores ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE, 
+	SmfError stores ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE, 
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -220,17 +367,27 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 signals:
 	/**
-	 * Emitted when the search result for a track is available.
+	 * Emitted when the search results for tracks (for album, artist, etc) are available.
 	 * Note if number of tacks in the search is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
+	 * @param result list of tracks
+	 * @param error SmfNoError if success, else appropriate error value
 	 * @param resultPage Page number info
 	 */
 	void trackSearchAvailable ( SmfTrackInfoList* result, 
@@ -239,7 +396,8 @@
 	/**
 	 *  Emitted when the search result for a store is available.
 	 *  Note if number of tacks in the search is large, then it can download the list page by page.
-	 *  In that case this signal is emitted multiple times.
+	 *  @param result List of stores
+	 *  @param error SmfNoError if success, else appropriate error value
 	 *  @param resultPage Page number info
 	 */
 	void storeSearchAvailable ( SmfProviderList* result, 
@@ -309,8 +467,9 @@
 	 * If not supplied by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void playlists ( int pageNum = SMF_FIRST_PAGE,
+	SmfError playlists ( int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -322,8 +481,9 @@
 	 * @param user User for which to get the playlists
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void playlistsOf ( SmfMusicProfile* user, int pageNum = SMF_FIRST_PAGE,
+	SmfError playlistsOf ( SmfContact* user, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 public slots:
@@ -332,40 +492,53 @@
 	 * playlistUpdated() can be checked for success value
 	 * @param plst The playlist to be added in
 	 * @param tracks The list of tracks to uploaded
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	int addToPlaylist ( SmfPlaylist plst, SmfTrackInfoList* tracks );
+	SmfError addToPlaylist ( SmfPlaylist plst, SmfTrackInfoList* tracks );
 	
 	/**
 	 * Upload currently playing playlist . Signal
 	 * playlistUpdated() can be checked for success value
 	 * @param plst The playlist to be uploaded
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	int postCurrentPlayingPlaylist ( SmfPlaylist plst );
+	SmfError postCurrentPlayingPlaylist ( SmfPlaylist plst );
 	
 	/**
 	 * Request for a custom operation. The signal customDataAvailable() is emitted 
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 		
 signals:
 	/**
 	 * Notification of availability of list of playlists requested.
 	 * Note if number of list is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
+	 * @param plst List of playlists
+	 * @param error, SmfNoError if success, else appropriate error value
 	 * @param resultPage Page number info
 	 */
-	void playlistsListAvailable ( SmfPlaylistList*, 
+	void playlistsListAvailable ( SmfPlaylistList* plst, 
 			SmfError error, SmfResultPage resultPage );
 	/**
 	 * Signals remote updation of playlist with success value
+	 * @param error, SmfNoError if success, else appropriate error value
 	 */
-	void playlistUpdated ( SmfError success );
+	void playlistUpdated ( SmfError error );
 	
 	/**
 	 * Signals availability of the result of the customRequest
@@ -390,114 +563,6 @@
 SMF_SERVICE_NAME(SmfPlaylistService, "org.symbian.smf.client.music.playlist\0.2")
 
 
-/**
- * provides service ("org.symbian.smf.client.music.events")
- */
-class SMFCLIENT_EXPORT SmfMusicEvents : public QObject
-	{
-	Q_OBJECT
-	
-public:
-	/**
-	 * Constructs SmfMusicEvents with base provider info
-	 * Seeing as this is a plug-in implementation, these will realistically
-	 *  be generated by SMF factory of some kind
-	 */
-	SmfMusicEvents ( SmfProvider* baseProvider = 0 );
-	
-	/**
-	 * Destructor
-	 */
-	~SmfMusicEvents ( );
-	
-public:
-	/**
-	 * Gets list of events in a particular venue asynchronously.
-	 * eventsAvailable() signal is emitted with SmfEventsList once its arrived.
-	 * When the list is big user can specify the page number and per page item data.
-	 * If not supplied by the user default values are used.
-	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 */
-	void events ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
-			int perPage = SMF_ITEMS_PER_PAGE);
-	
-	/**
-	 * Gets list of venues of a particular location asynchronously.
-	 * venuesAvailable() signal is emitted with SmfLocationList once its arrived.
-	 * When the list is big user can specify the page number and per page item data.
-	 * If not supplied by the user default values are used.
-	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 */
-	void venues ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
-			int perPage = SMF_ITEMS_PER_PAGE);
-	
-public slots:
-	/**
-	 * Updates events. Might not be supported by all service provider.
-	 * eventsUpdated() signal can be checked for success value.
-	 * @param SmfEventsList List of events to be posted
-	 */
-	void postEvents ( SmfEventList events );
-	
-	/**
-	 * Request for a custom operation. The signal customDataAvailable() is emitted 
-	 * when the result is available.
-	 * @param operationId OperationId
-	 * @param customData Custom data to be sent
-	 * Note:-Interpretation of operationId and customData is upto the concerned
-	 * plugin and client application. service provider should provide some
-	 * serializing-deserializing utilities for these custom data
-	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
-	
-signals:
-	/**
-	 * Notification on arrival of event lists
-	 * Note if number of list is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
-	 * @param resultPage Page number info
-	 */
-	void eventsAvailable ( SmfEventList* list, 
-			SmfError error, SmfResultPage resultPage );
-	
-	/**
-	 * Notification on arrival of venues lists
-	 * Note if number of list is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
-	 * @param resultPage Page number info
-	 */
-	void venuesAvailable ( SmfLocationList* list, 
-			SmfError error, SmfResultPage resultPage );
-	
-	/**
-	 * Notification of the success of request to post an event
-	 */
-	void eventsUpdated ( SmfError success );
-	
-	/**
-	 * Signals availability of the result of the customRequest
-	 * @param operationId The ID to be shared between clients and the plugin
-	 * @param customData data
-	 */
-	void customDataAvailable( const int& operationId, QByteArray* customData );
-	
-private:
-	/**
-	 * Gets the base provider info
-	 */
-	SmfProvider* getProvider() const;
-	
-private:
-	SmfProvider* m_baseProvider;
-	SmfMusicEventsPrivate* m_private;
-	friend class SmfMusicEventsPrivate;
-	
-	};
-
-SMF_SERVICE_NAME(SmfMusicEvents, "org.symbian.smf.client.music.events\0.2")
-
 
 /**
  * provides service ("org.symbian.smf.client.music.lyrics")
@@ -524,8 +589,9 @@
 	 * @param track Track for which lyrics needs to be fetched.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void lyrics ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError lyrics ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -536,8 +602,9 @@
 	 * @param filter Subtitle search filter
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void subtitles ( SmfTrackInfo track, SmfSubtitleSearchFilter filter,
+	SmfError subtitles ( SmfTrackInfo track, SmfSubtitleSearchFilter filter,
 			int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -545,17 +612,27 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 
 signals:
 	/**
 	 * Notification on arrival of lyrics
 	 * Note if the list is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
+	 * @param list List of lyrics
+	 * @param error SmfNoError if success, else appropriate error value
 	 * @param resultPage Page number info
 	 */
 	void lyricsAvailable ( SmfLyricsList* list, 
@@ -564,7 +641,8 @@
 	/**
 	 * Notification on arrival of subtitle based on filter.
 	 * Note if the list is large, then it can download the list page by page.
-	 * In that case this signal is emitted multiple times.
+	 * @param list List of subtitles
+	 * @param error SmfNoError if success, else appropriate error value
 	 * @param resultPage Page number info
 	 */
 	void subtitleAvailable ( SmfSubtitleList* list, 
@@ -578,6 +656,7 @@
 	void customDataAvailable( const int& operationId, QByteArray* customData );
 	
 private:
+	
 	/**
 	 * Gets the base provider info
 	 */
--- a/smf/smfservermodule/smfclient/smfmusic_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfmusic_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -53,8 +53,9 @@
 		}
 	}
 
-void SmfMusicServicePrivate::userinfo()
+SmfError SmfMusicServicePrivate::userMusicInfo()
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
@@ -67,22 +68,150 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName, 
 			SmfMusicGetUserInfo, maxalloc);
+	return err;
+	}
+
+SmfError SmfMusicServicePrivate::searchArtist ( SmfArtists artist, int pageNum, int perPage )
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_musicService->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<artist;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+	
+	QString intfName(musicServiceInterface);
+	int maxalloc = SmfMusicProfileMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicSearchArtist, maxalloc);
+	return err;
 	}
 
-void SmfMusicServicePrivate::searchUser(SmfLocation venue, int pageNum, int perPage)
+SmfError SmfMusicServicePrivate::searchAlbum ( SmfAlbum album, int pageNum, int perPage )
 	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_musicService->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<album;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+	
+	QString intfName(musicServiceInterface);
+	int maxalloc = SmfMusicProfileMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicSearchAlbum, maxalloc);
+	return err;
+	}
+
+
+SmfError SmfMusicServicePrivate::searchEvents ( SmfEvent event, int pageNum, int perPage )
+	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<venue;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<event;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+	
+	QString intfName(musicServiceInterface);
+	int maxalloc = SmfMusicProfileMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicSearchEvent, maxalloc);
+	return err;
+	}
+
+SmfError SmfMusicServicePrivate::searchVenue ( SmfLocation location, int pageNum, int perPage )
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_musicService->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<location;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+	
+	QString intfName(musicServiceInterface);
+	int maxalloc = SmfMusicProfileMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicSearchVenue, maxalloc);
+	return err;
+	}
+	
+SmfError SmfMusicServicePrivate::searchUser(SmfLocation venue, int pageNum, int perPage)
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_musicService->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<venue;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(musicServiceInterface);
 	int maxalloc = SmfMusicProfileMaxSize*perPage;
@@ -90,29 +219,37 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 	SmfMusicSearchUser, maxalloc);
+	return err;
 	}
 
-void SmfMusicServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfMusicServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(musicServiceInterface);
 	//ToDo:- How much size to allocate for custo data? keeping SmfMusicProfileMaxSize for now
 	int maxAlloc = SmfMusicProfileMaxSize;
@@ -120,18 +257,26 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicServiceCustomRequest, maxAlloc);
+	return err;
 	}
 
-void SmfMusicServicePrivate::postCurrentPlaying(SmfTrackInfo track) 
+SmfError SmfMusicServicePrivate::postCurrentPlaying(SmfTrackInfo track) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(musicServiceInterface);
 	//TODO:-revisit all the maxalloc
@@ -140,20 +285,28 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicPostCurrentPlaying, maxalloc);
+	return err;
 	}
 
-void SmfMusicServicePrivate::postRating(SmfTrackInfo track, SmfMusicRating rate) 
+SmfError SmfMusicServicePrivate::postRating(SmfTrackInfo track, SmfMusicRating rate) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<rate;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<rate;
+	
+	write<<dataToPlugins;
 
 	QString intfName(musicServiceInterface);
 	//TODO:-revisit all the maxalloc
@@ -162,20 +315,28 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 	SmfMusicPostRating, maxalloc);
+	return err;
 	}
 
-void SmfMusicServicePrivate::postComments(SmfTrackInfo track, SmfComment comment) 
+SmfError SmfMusicServicePrivate::postComments(SmfTrackInfo track, SmfComment comment) 
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicService->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<comment;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<comment;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(musicServiceInterface);
 	//TODO:-revisit all the maxalloc
@@ -184,6 +345,22 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicPostComment, maxalloc);
+	return err;
+	}
+
+
+SmfError SmfMusicServicePrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfMusicServicePrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 void SmfMusicServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
@@ -201,7 +378,54 @@
 			SmfMusicProfile* m_profile = new SmfMusicProfile;
 			reader>>*m_profile;
 
-			emit m_musicService->userInfoAvailable(m_profile,error);
+			emit m_musicService->userMusicInfoAvailable(m_profile,error);
+			break;
+			}
+			
+		case SmfMusicSearchArtist:
+			{
+			SmfArtistsList *m_List = new SmfArtistsList;
+			reader>>*m_List;
+			
+			//ToDo :- not incorporating paging now
+			SmfResultPage page;
+
+			emit m_musicService->searchArtistInfoAvailable(m_List, error, page);
+			break;
+			}
+			
+		case SmfMusicSearchAlbum:
+			{
+			SmfAlbumList *m_List = new SmfAlbumList;
+			reader>>*m_List;
+			
+			//ToDo :- not incorporating paging now
+			SmfResultPage page;
+
+			emit m_musicService->searchAlbumInfoAvailable(m_List, error, page);
+			break;
+			}
+			
+		case SmfMusicSearchEvent:
+			{
+			SmfEventList *m_List = new SmfEventList;
+			reader>>*m_List;
+			
+			//ToDo :- not incorporating paging now
+			SmfResultPage page;
+
+			emit m_musicService->searchEventsInfoAvailable(m_List, error, page);
+			break;
+			}
+		case SmfMusicSearchVenue:
+			{
+			SmfLocationList *m_List = new SmfLocationList;
+			reader>>*m_List;
+			
+			//ToDo :- not incorporating paging now
+			SmfResultPage page;
+
+			emit m_musicService->searchVenueInfoAvailable(m_List, error, page);
 			break;
 			}
 				
@@ -213,7 +437,7 @@
 			//ToDo :- not incorporating paging now
 			SmfResultPage page;
 
-			emit m_musicService->searchInfoAvailable(m_profileList, error, page);
+			emit m_musicService->searchUserInfoAvailable(m_profileList, error, page);
 			break;
 			}
 			
@@ -265,133 +489,250 @@
 		}
 	}
 
-void SmfMusicSearchPrivate::recommendations(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearchPrivate::recommendations(SmfTrackInfo track, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray
+	m_serializedDataToServer.clear();
+	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+		
+	QString intfName(musicSearchInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = SmfMusicTracksMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicGetRecommendations, maxalloc);
+	return err;
+	}
+
+SmfError SmfMusicSearchPrivate::tracksSimilar ( SmfTrackInfo track, int pageNum, int perPage )
+	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray
 	m_serializedDataToServer.clear();
 	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
-		
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+	
 	QString intfName(musicSearchInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicTracksMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetRecommendations, maxalloc);
+			SmfMusicGetTracksSimilar, maxalloc);
+	return err;
 	}
 
-void SmfMusicSearchPrivate::tracks(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearchPrivate::tracksOfAlbum ( SmfAlbum album, int pageNum, int perPage )
 	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray
+	m_serializedDataToServer.clear();
 	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
-	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<album;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
 	
+	write<<dataToPlugins;
+		
 	QString intfName(musicSearchInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicTracksMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetTracks, maxalloc);
+			SmfMusicGetTracksOfAlbum, maxalloc);
+	return err;
 	}
 
-void SmfMusicSearchPrivate::trackInfo(SmfMusicFingerPrint signature, int pageNum, int perPage)
+SmfError SmfMusicSearchPrivate::tracksOfArtist ( SmfArtists artists, int pageNum, int perPage )
 	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray
+	m_serializedDataToServer.clear();
+	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<artists;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
+		
+	QString intfName(musicSearchInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = SmfMusicTracksMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicGetTracksOfArtist, maxalloc);
+	return err;
+	}
+
+SmfError SmfMusicSearchPrivate::trackInfo(SmfMusicFingerPrint signature, int pageNum, int perPage)
+	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<signature;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<signature;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(musicSearchInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicTracksMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName, 
 			SmfMusicGetTrackInfo, maxalloc);
+	return err;
 	}
 
-void SmfMusicSearchPrivate::stores(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfMusicSearchPrivate::stores(SmfTrackInfo track, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(musicSearchInterface);
 	/** @TODO:-revisit all the maxalloc */
-	int maxalloc = 1000;
+	int maxalloc = 1000*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicGetStores, maxalloc);
+	return err;
 	}
 
-void SmfMusicSearchPrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfMusicSearchPrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
-	
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(musicSearchInterface);
 	/** @TODO:-revisit all the maxalloc */
-	int maxalloc = 1000;
+	int maxalloc = 10000;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicSearchCustomRequest, maxalloc);
+	return err;
 	}
 
+SmfError SmfMusicSearchPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfMusicSearchPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
+	}
 
 
 void SmfMusicSearchPrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
@@ -405,7 +746,9 @@
 	switch(opcode)
 		{
 		case SmfMusicGetRecommendations:
-		case SmfMusicGetTracks:
+		case SmfMusicGetTracksSimilar:
+		case SmfMusicGetTracksOfAlbum:
+		case SmfMusicGetTracksOfArtist:
 		case SmfMusicGetTrackInfo:
 				{
 				SmfTrackInfoList* m_trackInfoList = new SmfTrackInfoList;
@@ -470,51 +813,104 @@
 		}	
 	}
 
-void SmfPlaylistServicePrivate::playlists(int pageNum, int perPage)
+SmfError SmfPlaylistServicePrivate::playlists(int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*(m_baseProvider);
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+		
+	write<<dataToPlugins;
+	
+	QString intfName(playlistServiceInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = SmfMusicPlaylistMaxSize*perPage;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicGetPlaylists, maxalloc);
+	return err;
+	}
+
+SmfError SmfPlaylistServicePrivate::playlistsOf(SmfContact *user, int pageNum, int perPage)
+	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	if(user)
+		{
+		m_argFlag = 1;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*user;
+		}
+	else
+		{
+		m_argFlag = 0;
+		streamToPlugin<<m_argFlag;
+		}
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
-	
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+		
+	write<<dataToPlugins;
+		
 	QString intfName(playlistServiceInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicPlaylistMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetPlaylists, maxalloc);
+			SmfMusicGetPlaylistsOfUser, maxalloc);
+	return err;
 	}
 
-void SmfPlaylistServicePrivate::playlistsOf(SmfMusicProfile *user, int pageNum, int perPage)
+SmfError SmfPlaylistServicePrivate::addToPlaylist(SmfPlaylist plst, SmfTrackInfoList *tracks)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
-	if(user)
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<plst;
+	if(tracks)
 		{
-		m_argFlag = 1;
-		write<<m_argFlag;
-		write<<*user;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*tracks;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+		
+	write<<dataToPlugins;
 		
 	QString intfName(playlistServiceInterface);
 	//TODO:-revisit all the maxalloc
@@ -522,80 +918,27 @@
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetPlaylistsOfUser, maxalloc);
+			SmfMusicAddToPlaylist, maxalloc);
+	return err;
 	}
 
-int SmfPlaylistServicePrivate::addToPlaylist(SmfPlaylist plst, SmfTrackInfoList *tracks)
+SmfError SmfPlaylistServicePrivate::postCurrentPlayingPlaylist(SmfPlaylist plst)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<plst;
-	if(tracks)
-		{
-		write<<m_argFlag;
-		write<<*tracks;
-		}
-	else
-		{
-		m_argFlag = 0;
-		write<<m_argFlag;
-		}
-		
-	QString intfName(playlistServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
 	
-	//call private impl's send method
-	return m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicAddToPlaylist, maxalloc);
-	}
-
-int SmfPlaylistServicePrivate::postCurrentPlayingPlaylist(SmfPlaylist plst)
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*(m_baseProvider);
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<plst;
-	
-	QString intfName(playlistServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
-	
-	//call private impl's send method
-	return m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicPostCurrentPlayingPlaylist, maxalloc);
-	}
-
-void SmfPlaylistServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*m_baseProvider;
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
-	
-	if(customData)
-		{
-		write<<m_argFlag;
-		write<<*customData;
-		}
-	else
-		{
-		m_argFlag = 0;
-		write<<m_argFlag;
-		}
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<plst;
+		
+	write<<dataToPlugins;
 	
 	QString intfName(playlistServiceInterface);
 	//TODO:-revisit all the maxalloc
@@ -603,7 +946,60 @@
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
+			SmfMusicPostCurrentPlayingPlaylist, maxalloc);
+	return err;
+	}
+
+SmfError SmfPlaylistServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
+	{
+	SmfError err = SmfNoError;
+	//We need to pass Opcode and SmfProvider serialized into bytearray 
+	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
+	m_serializedDataToServer.clear();
+	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
+	write<<*m_baseProvider;
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
+	m_argFlag = 1;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
+	if(customData)
+		{
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
+		}
+	else
+		{
+		m_argFlag = 0;
+		streamToPlugin<<m_argFlag;
+		}
+	
+	write<<dataToPlugins;
+	
+	QString intfName(playlistServiceInterface);
+	//TODO:-revisit all the maxalloc
+	int maxalloc = 10000;
+	
+	//call private impl's send method
+	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicPlaylistCustomRequest, maxalloc);
+	return err;
+	}
+
+SmfError SmfPlaylistServicePrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfPlaylistServicePrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 void SmfPlaylistServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
@@ -654,182 +1050,6 @@
 //SmfPlaylistServicePrivate end
 
 
-//SmfMusicEventsPrivate start
-SmfMusicEventsPrivate::SmfMusicEventsPrivate(SmfMusicEvents *aMusicEvent)
-		:m_musicEvent(aMusicEvent)
-	{
-#ifdef Q_OS_SYMBIAN
-	//private impl for symbian
-	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
-#else
-	//TODO:- Use private impl for other platforms or else Qt impl
-#endif
-	}
-
-SmfMusicEventsPrivate::~SmfMusicEventsPrivate()
-	{
-	if(m_SmfClientPrivate)
-		{
-		delete m_SmfClientPrivate;
-		m_SmfClientPrivate = NULL;
-		}
-	}
-
-void SmfMusicEventsPrivate::events(SmfLocation venue, int pageNum, int perPage)
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*(m_baseProvider);
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<venue;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
-		
-	QString intfName(musicEventServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
-	
-	//call private impl's send method
-	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetEventsOnLoc, maxalloc);
-	}
-
-void SmfMusicEventsPrivate::venues(SmfLocation location, int pageNum, int perPage)
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*(m_baseProvider);
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<location;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
-		
-	QString intfName(musicEventServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
-	
-	//call private impl's send method
-	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicGetVenueOnLoc, maxalloc);
-	}
-
-void SmfMusicEventsPrivate::postEvents(SmfEventList events)
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*(m_baseProvider);
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<events;
-	
-	QString intfName(musicEventServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
-	
-	//call private impl's send method
-	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicPostEvents, maxalloc);
-	}
-
-void SmfMusicEventsPrivate::customRequest ( const int& operationId, QByteArray* customData )
-	{
-	//We need to pass Opcode and SmfProvider serialized into bytearray 
-	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
-	m_serializedDataToServer.clear();
-	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
-	write<<*m_baseProvider;
-	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
-	
-	if(customData)
-		{
-		write<<m_argFlag;
-		write<<*customData;
-		}
-	else
-		{
-		m_argFlag = 0;
-		write<<m_argFlag;
-		}
-	
-	QString intfName(musicEventServiceInterface);
-	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
-	
-	//call private impl's send method
-	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
-			SmfMusicEventsCustomRequest, maxalloc);
-	}
-
-void SmfMusicEventsPrivate::resultsAvailable(QByteArray result,SmfRequestTypeID opcode,SmfError error)
-	{
-	//note:- "result" is serialized and we need to de-serialize it as per opcode
-	//Order of serialization Error value followed by data
-	
-	QDataStream reader(&result,QIODevice::ReadOnly);
-	
-	//Now de-serialize it based on opcode
-	switch(opcode)
-		{
-		case SmfMusicGetEventsOnLoc:
-			{
-			SmfEventList* m_events = new SmfEventList;
-			reader>>*(m_events);
-			
-			// ToDo :-
-			SmfResultPage page;
-			
-			m_musicEvent->eventsAvailable(m_events,error,page);
-			break;
-			}
-			
-		case SmfMusicGetVenueOnLoc:
-			{
-			SmfLocationList* m_venues = new SmfLocationList;
-			reader>>*(m_venues);
-			
-			//ToDo :-
-			SmfResultPage page;
-			
-			m_musicEvent->venuesAvailable(m_venues,error,page);
-			break;
-			}
-			
-		case SmfMusicPostEvents:
-			m_musicEvent->eventsUpdated(error);
-			break;
-			
-		case SmfMusicEventsCustomRequest:
-   			{
-   			int operationId;
-   			QByteArray *data = new QByteArray;
-   			reader>>operationId;
-   			reader>>*data;
-   			qDebug()<<"operationId = "<<operationId;
-   			qDebug()<<"data size = "<<data->size();
-   			emit m_musicEvent->customDataAvailable(operationId, data);
-   			break;
-   			}
-   			
-		default:
-			Q_ASSERT_X(1,"SmfMusicEventsPrivate::resultsAvailable","unknown opcode");
-		}
-	}
-//SmfMusicEventsPrivate end
-
 
 //SmfLyricsServicePrivate start
 SmfLyricsServicePrivate::SmfLyricsServicePrivate(SmfLyricsService *aLyricsSrvc)
@@ -852,85 +1072,122 @@
 		}
 	}
 
-void SmfLyricsServicePrivate::lyrics(SmfTrackInfo track, int pageNum, int perPage)
+SmfError SmfLyricsServicePrivate::lyrics(SmfTrackInfo track, int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(lyricsServiceInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicLyricsMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicGetLyrics, maxalloc);
+	return err;
 	}
 
-void SmfLyricsServicePrivate::subtitles(SmfTrackInfo track, SmfSubtitleSearchFilter filter, 
+SmfError SmfLyricsServicePrivate::subtitles(SmfTrackInfo track, SmfSubtitleSearchFilter filter, 
 		int pageNum, int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*(m_baseProvider);
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<track;
-	write<<m_argFlag;
-	write<<filter;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<track;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<filter;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(lyricsServiceInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = SmfMusicLyricsMaxSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicGetSubtitle, maxalloc);
+	return err;
 	}
 
-void SmfLyricsServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfLyricsServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider serialized into bytearray 
 	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+	
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
-	
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(lyricsServiceInterface);
 	//TODO:-revisit all the maxalloc
-	int maxalloc = 1000;
+	int maxalloc = 10000;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfMusicLyricsCustomRequest, maxalloc);
+	return err;
+	}
+
+SmfError SmfLyricsServicePrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfLyricsServicePrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 void SmfLyricsServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
--- a/smf/smfservermodule/smfclient/smfmusic_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfmusic_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -31,6 +31,8 @@
 #include <smftrackinfo.h>
 #include <smflocation.h>
 #include <smfprovider.h>
+#include <smfartists.h>
+#include <smfalbum.h>
 
 #ifdef Q_OS_SYMBIAN
 	class CSmfClientSymbian;	
@@ -40,11 +42,11 @@
 class SmfMusicService;
 class SmfMusicSearch;
 class SmfPlaylistService;
-class SmfMusicEvents;
 class SmfLyricsService;
 class SmfMusicFingerPrint;
 class SmfMusicRating;
 class SmfComment;
+class SmfContact;
 
 
 class SmfMusicServicePrivate : public smfObserver
@@ -62,43 +64,118 @@
 	~SmfMusicServicePrivate();
 	
 	/**
-	 * Gets self profile information asynchronously.
-	 * userInfoAvailable() signal is emitted with SmfMusicProfile when the info is arrived
+	 * Gets self profile information (e.g. music likings, feavorites etc) asynchronously.
+	 * userMusicInfoAvailable() signal is emitted with SmfMusicProfile when the info is arrived
+	 * @return SmfError. SmfNoError if success, else appropriate error code
+	 */
+	SmfError userMusicInfo ( );
+
+	/**
+	 * Asynchronously searches information about artisits in this service. All information 
+	 * in SmfArtists is not required, however more available the better 
+	 * searchArtistInfoAvailable() signal is emitted when the info is arrived.
+	 * @param artist The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchArtist ( SmfArtists artist, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+
+	/**
+	 * Asynchronously searches information about albums in this service. All information 
+	 * in SmfAlbum is not required, however more available the better 
+	 * searchAlbumInfoAvailable() signal is emitted when the info is arrived.
+	 * @param album The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
 	 */
-	void userinfo ( );
+	SmfError searchAlbum ( SmfAlbum album, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+	
+	/**
+	 * Asynchronously searches information about events in this service. All information 
+	 * in SmfEvents is not required, however more available the better 
+	 * searchEventsInfoAvailable() signal is emitted when the info is arrived.
+	 * @param event The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchEvents ( SmfEvent event, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
+	
+	/**
+	 * Asynchronously searches information about venue in this service. All information 
+	 * in SmfVenue is not required, however more available the better 
+	 * searchVenueInfoAvailable() signal is emitted when the info is arrived.
+	 * @param location The search criteria
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError searchVenue ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
+						int perPage = SMF_ITEMS_PER_PAGE );
 
 	/**
 	 * Asynchronously searches information about other service users for a particular venue
-	 * searchInfoAvailable() signal is emitted with SmfMusicProfileList when the info is arrived.
+	 * searchUserInfoAvailable() signal is emitted with SmfMusicProfileList when the info is arrived.
 	 * When the list is big user can specify the page number and per page item data.
 	 * If not supplied by the user default values are used.
+	 * @param location The search criteria
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfError, SmfNoError if success, else appropriate error value
 	 */
-	void searchUser ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
+	SmfError searchUser ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
 						int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
+	 * Posts currently playing track.
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track to post
+	 * @return SmfError, SmfNoError if success, else appropriate error value
+	 */
+	SmfError postCurrentPlaying ( SmfTrackInfo track);
+	
+	/**
+	 * Rate a music via this API 
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track on which rating should be posted
+	 * @param rate Rating value
+	 * @return SmfError, SmfNoError if success, else appropriate error value 
+	 */
+	SmfError postRating ( SmfTrackInfo track, SmfMusicRating rate);
+
+	/**
+	 * Comment on a track via this API 
+	 * Success can be checked by checking the signal postFinished()
+	 * @param track Track on which comment should be posted
+	 * @param comment The comemnt to be posted
+	 * @return SmfError, SmfNoError if success, else appropriate error value  
+	 */
+	SmfError postComments ( SmfTrackInfo track, SmfComment comment);
+
+	/**
 	 * Request for a custom operation. The signal customDataAvailable() is emitted 
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
 	
-	/**
-	 * Posts currently playing track.
-	 * Success can be checked by checking the signal postFinished()
-	 * @param track Track to post
-	 */
-	void postCurrentPlaying ( SmfTrackInfo track);
-	
-	void postRating ( SmfTrackInfo track, SmfMusicRating rate);
-	
-	void postComments ( SmfTrackInfo track, SmfComment comment);
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public: // from smfObserver
 	/**
@@ -121,7 +198,7 @@
 	SmfClientQt* m_SmfClientPrivate;
 	friend class SmfClientQt;
 #endif
-	int m_argFlag;
+	quint8 m_argFlag;
 	
 	};
 
@@ -151,8 +228,9 @@
 	 * @param track The track for which similar recommendations need to be fetched.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void recommendations ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError recommendations ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -164,8 +242,37 @@
 	 * @param track The search criteria, similar tracks are searched
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void tracks ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError tracksSimilar ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+
+	/**
+	 * Searches for tracks for a given album asynchronously.
+	 * The signal trackSearchAvailable() is emitted with SmfTrackInfoList
+	 * once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param album The album containing the id
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError tracksOfAlbum ( SmfAlbum album, int pageNum = SMF_FIRST_PAGE,
+			int perPage = SMF_ITEMS_PER_PAGE);
+	
+	/**
+	 * Searches for tracks for a given artist(s) asynchronously.
+	 * The signal trackSearchAvailable() is emitted with SmfTrackInfoList
+	 * once its arrived.
+	 * When the list is big user can specify the page number and per page item data.
+	 * If not supplied by the user default values are used.
+	 * @param artists The artists list
+	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
+	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
+	 */
+	SmfError tracksOfArtist ( SmfArtists artists, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -175,8 +282,9 @@
 	 * @param signature The search criteria,signature to be searched for
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void trackInfo ( SmfMusicFingerPrint signature, int pageNum = SMF_FIRST_PAGE,
+	SmfError trackInfo ( SmfMusicFingerPrint signature, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -185,8 +293,9 @@
 	 * @param track The search criteria for stores
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void stores ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE, 
+	SmfError stores ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE, 
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -194,11 +303,20 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public: //From smfObserver
 	/**
@@ -221,7 +339,7 @@
 	SmfClientQt* m_SmfClientPrivate;
 	friend class SmfClientQt;
 #endif
-	int m_argFlag;
+	quint8 m_argFlag;
 
 	};
 
@@ -250,8 +368,9 @@
 	 * If not supplied by the user default values are used.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void playlists ( int pageNum = SMF_FIRST_PAGE,
+	SmfError playlists ( int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -263,8 +382,9 @@
 	 * @param user User for which to get the playlists
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void playlistsOf ( SmfMusicProfile* user, int pageNum = SMF_FIRST_PAGE,
+	SmfError playlistsOf ( SmfContact* user, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -272,26 +392,37 @@
 	 * playlistUpdated() can be checked for success value
 	 * @param plst The playlist to be added in
 	 * @param tracks The list of tracks to uploaded
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	int addToPlaylist ( SmfPlaylist plst, SmfTrackInfoList* tracks );
+	SmfError addToPlaylist ( SmfPlaylist plst, SmfTrackInfoList* tracks );
 	
 	/**
 	 * Upload currently playing playlist . Signal
 	 * playlistUpdated() can be checked for success value
 	 * @param plst The playlist to be uploaded
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	int postCurrentPlayingPlaylist ( SmfPlaylist plst );
+	SmfError postCurrentPlayingPlaylist ( SmfPlaylist plst );
 	
 	/**
 	 * Request for a custom operation. The signal customDataAvailable() is emitted 
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public: //From smfObserver
 	/**
@@ -315,92 +446,11 @@
 	SmfClientQt* m_SmfClientPrivate;
 	friend class SmfClientQt;
 #endif
-	int m_argFlag;
+	quint8 m_argFlag;
 	
 	};
 
 
-class SmfMusicEventsPrivate : public smfObserver
-	{
-	Q_OBJECT
-
-public:
-	/**
-	 * Constructs SmfMusicEvents with base provider info
-	 */
-	SmfMusicEventsPrivate(SmfMusicEvents* aMusicEvent);
-	
-	/**
-	 * Destructor
-	 */
-	~SmfMusicEventsPrivate();
-
-public:
-	/**
-	 * Gets list of events in a particular venue asynchronously.
-	 * eventsAvailable() signal is emitted with SmfEventsList once its arrived.
-	 * When the list is big user can specify the page number and per page item data.
-	 * If not supplied by the user default values are used.
-	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 */
-	void events ( SmfLocation venue, int pageNum = SMF_FIRST_PAGE,
-			int perPage = SMF_ITEMS_PER_PAGE);
-	
-	/**
-	 * Gets list of venues of a particular location asynchronously.
-	 * venuesAvailable() signal is emitted with SmfLocationList once its arrived.
-	 * When the list is big user can specify the page number and per page item data.
-	 * If not supplied by the user default values are used.
-	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
-	 */
-	void venues ( SmfLocation location, int pageNum = SMF_FIRST_PAGE,
-			int perPage = SMF_ITEMS_PER_PAGE);
-	
-	/**
-	 * Updates events. Might not be supported by all service provider.
-	 * eventsUpdated() signal can be checked for success value.
-	 * @param SmfEventsList List of events to be posted
-	 */
-	void postEvents ( SmfEventList events );
-	
-	/**
-	 * Request for a custom operation. The signal customDataAvailable() is emitted 
-	 * when the result is available.
-	 * @param operationId OperationId
-	 * @param customData Custom data to be sent
-	 * Note:-Interpretation of operationId and customData is upto the concerned
-	 * plugin and client application. service provider should provide some
-	 * serializing-deserializing utilities for these custom data
-	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
-	
-public: //From smfObserver
-	/**
-	 * To notify availibility of asynchronous requests.
-	 * @param result Requested result, before using must check error param.
-	 * @param opcode Requested opcode, for which the result has arrived.
-	 * @param error Error 
-	 */
-	void resultsAvailable(QByteArray result,SmfRequestTypeID opcode, SmfError error);
-
-private:
-	SmfMusicEvents* m_musicEvent;
-	//serialized byte array of provider+other info to be sent to the server
-	//The order:- SmfProvider then params in order of their appearance in fn
-	QByteArray m_serializedDataToServer;
-#ifdef Q_OS_SYMBIAN
-	CSmfClientSymbian* m_SmfClientPrivate;
-	friend class CSmfClientSymbian;
-#else
-	SmfClientQt* m_SmfClientPrivate;
-	friend class SmfClientQt;
-#endif
-	int m_argFlag;
-	
-	};
-
 
 /**
  * provides service ("org.symbian.smf.client.music.lyrics")
@@ -427,8 +477,9 @@
 	 * @param track Track for which lyrics needs to be fetched.
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void lyrics ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
+	SmfError lyrics ( SmfTrackInfo track, int pageNum = SMF_FIRST_PAGE,
 			int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -439,8 +490,9 @@
 	 * @param filter Subtitle search filter
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
 	 * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+	 * @return SmfNoError if success, else appropriate error value
 	 */
-	void subtitles ( SmfTrackInfo track, SmfSubtitleSearchFilter filter,
+	SmfError subtitles ( SmfTrackInfo track, SmfSubtitleSearchFilter filter,
 			int pageNum = SMF_FIRST_PAGE, int perPage = SMF_ITEMS_PER_PAGE);
 	
 	/**
@@ -448,11 +500,20 @@
 	 * when the result is available.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfNoError if success, else appropriate error value
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest ( const int& operationId, QByteArray* customData );
+	SmfError customRequest ( const int& operationId, QByteArray* customData );
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
 	
 public: //From smfObserver
 	/**
@@ -475,7 +536,7 @@
 	SmfClientQt* m_SmfClientPrivate;
 	friend class SmfClientQt;
 #endif
-	int m_argFlag;
+	quint8 m_argFlag;
 
 	};
 
--- a/smf/smfservermodule/smfclient/smfpostprovider.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfpostprovider.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -81,12 +81,13 @@
  * once the post lists are available
  * @param user user's contact in this SP, omit for self contact
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
- * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE 
+ * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+ * @return SmfError. SmfNoError if success, else appropriate error code 
  * @see postsAvailable()
  */
-void SmfPostProvider::posts(SmfContact* user ,int pageNum,int perPage)
+SmfError SmfPostProvider::posts(SmfContact* user ,int pageNum,int perPage)
 	{ 
-	m_private->posts(user,pageNum,perPage);
+	return m_private->posts(user,pageNum,perPage);
 	}
 
 /**
@@ -94,10 +95,11 @@
  * updatePostFinished() signal
  * @param postData data to be posted
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProvider::post(SmfPost& postData,SmfLocation& location) 
+SmfError SmfPostProvider::post(SmfPost& postData,SmfLocation& location) 
 	{
-	m_private->post(postData,location);
+	return m_private->post(postData,location);
 	} 
 
 /**
@@ -105,10 +107,11 @@
  * updatePostFinished() signal
  * @param postData edited/new data to be posted
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProvider::updatePost(SmfPost& postData)
+SmfError SmfPostProvider::updatePost(SmfPost& postData)
 	{ 
-	m_private->updatePost(postData);
+	return m_private->updatePost(postData);
 	} 
 
 /**
@@ -117,10 +120,11 @@
  * @param postData data to be posted
  * @param contact contact to which the post is to be directed
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProvider::postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location)
+SmfError SmfPostProvider::postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location)
 	{ 
-	m_private->postDirected(postData,contact,location);
+	return m_private->postDirected(postData,contact,location);
 	}
 
 /**
@@ -128,20 +132,21 @@
  * @param aTarget Post on which comment has to be posted
  * @param aComment comment to be posted
  * @param aLocation location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProvider::commentOnAPost( SmfPost &aTarget, SmfPost &aComment, 
+SmfError SmfPostProvider::commentOnAPost( SmfPost &aTarget, SmfPost &aComment, 
 		SmfLocation *aLocation)
 	{
-	m_private->commentOnAPost(aTarget,aComment,aLocation);
+	return m_private->commentOnAPost(aTarget,aComment,aLocation);
 	}
 
 /**
  * Posts appearance info of the user.e.g. appear offline, busy, do-not-disturb
  * @param appearence user appearance
  * @see SmfPresenceInfo
- * @return False on Failure/Not supported 
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool SmfPostProvider::postAppearence(SmfAppearenceInfo appearence, const QString &status)
+SmfError SmfPostProvider::postAppearence(SmfAppearenceInfo appearence, const QString &status)
 	{ 
 	return m_private->postAppearence(appearence, status);
 	} 
@@ -152,15 +157,16 @@
  * @param postData data to be posted
  * @param contact contact to which the post belonged
  * @param bool whether user changed items within the post
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProvider::sharePost(SmfPost& postData,SmfContact& contact,bool edited)
+SmfError SmfPostProvider::sharePost(SmfPost& postData,SmfContact& contact,bool edited)
 	{
-	m_private->sharePost(postData,contact,edited);
+	return m_private->sharePost(postData,contact,edited);
 	}
 
-void SmfPostProvider::customRequest(const int& operationId,QByteArray* customData)
+SmfError SmfPostProvider::customRequest(const int& operationId,QByteArray* customData)
 	{
-	m_private->customRequest(operationId, customData);
+	return m_private->customRequest(operationId, customData);
 	}
 
 /**
@@ -171,3 +177,7 @@
 	return m_baseProvider;
 	}
 
+SmfError SmfPostProvider::cancelRequest()
+	{
+	return m_private->cancelRequest();	
+	}
--- a/smf/smfservermodule/smfclient/smfpostprovider.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfpostprovider.h	Thu Sep 23 17:43:31 2010 +0530
@@ -91,50 +91,55 @@
 	 * @param user user's contact in this SP, omit for self contact
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
      * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE 
+     * @return SmfError. SmfNoError if success, else appropriate error code
 	 * @see postsAvailable()
 	 */
-	void posts(SmfContact* user = 0,int pageNum=SMF_FIRST_PAGE,int perPage=SMF_ITEMS_PER_PAGE);
+	SmfError posts(SmfContact* user = 0,int pageNum=SMF_FIRST_PAGE,int perPage=SMF_ITEMS_PER_PAGE);
 	
 	/**
 	 * Updates a post to own area, the success of the post can be checked with signal
 	 * updatePostFinished() signal
 	 * @param postData data to be posted
 	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void post(SmfPost& postData,SmfLocation& location);
+	SmfError post(SmfPost& postData,SmfLocation& location);
 	
 	/**
 	 * Updates the last post to own area with new data, the success of the post can be checked with signal
 	 * updatePostFinished() signal
 	 * @param postData edited/new data to be posted
 	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void updatePost(SmfPost& postData); 
+	SmfError updatePost(SmfPost& postData); 
 	
 	/**
 	 * Updates a post to a particular Smf contact. the success of the post can be checked with signal
 	 * updatePostFinished() signal.
 	 * @param postData data to be posted
 	 * @param contact contact to which the post is to be directed
-	 * @param location location data
+	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location=0);
+	SmfError postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location=0);
 	
 	/**
 	 * Method to post a comment on a post.
 	 * @param aTarget Post on which comment has to be posted
 	 * @param aComment comment to be posted
 	 * @param aLocation location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void commentOnAPost( SmfPost &aTarget, SmfPost &aComment, SmfLocation *aLocation = NULL);
+	SmfError commentOnAPost( SmfPost &aTarget, SmfPost &aComment, SmfLocation *aLocation = NULL);
 	
 	/**
 	 * Posts appearance info of the user.e.g. appear offline, busy, do-not-disturb
 	 * @param appearence user appearance
 	 * @see SmfPresenceInfo
-	 * @return False on Failure/Not supported 
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	bool postAppearence(SmfAppearenceInfo appearence, const QString &status); 
+	SmfError postAppearence(SmfAppearenceInfo appearence, const QString &status); 
 	
 	/**
 	 * Share /a contact's post to user's friends and followers (e.g. retweet in twitter, share on facebook)
@@ -142,18 +147,28 @@
 	 * @param postData data to be posted
 	 * @param contact contact to which the post belonged
 	 * @param bool whether user changed items within the post
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void sharePost(SmfPost& postData,SmfContact& contact,bool edited);
+	SmfError sharePost(SmfPost& postData,SmfContact& contact,bool edited);
 	
    /**
 	* Request for a custom operation.
 	* @param operationId OperationId
 	* @param customData Custom data to be sent
+	* @return SmfError. SmfNoError if success, else appropriate error code
 	* Note:-Interpretation of operationId and customData is upto the concerned
 	* plugin and client application. service provider should provide some
 	* serializing-deserializing utilities for these custom data
 	*/
-   void customRequest(const int& operationId,QByteArray* customData);
+   SmfError customRequest(const int& operationId,QByteArray* customData);
+   
+   /**
+    * Cancels a request generated due to the call to any API which results 
+    * into http request. Might return error if no request is currently pending.
+    * Please note that there can be only one request pending at any point of time
+    * @return Appropriate SmfError value
+    */
+	SmfError cancelRequest ();
 	
 signals:
 	
--- a/smf/smfservermodule/smfclient/smfpostprovider_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfpostprovider_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -166,10 +166,12 @@
  * @param user user's contact in this SP, omit for self contact
  * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
  * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE 
+ * @return SmfError. SmfNoError if success, else appropriate error code
  * @see postsAvailable()
  */
-void SmfPostProviderPrivate::posts(SmfContact* user ,int pageNum,int perPage)
+SmfError SmfPostProviderPrivate::posts(SmfContact* user ,int pageNum,int perPage)
 	{
+	SmfError err = SmfNoError;
 	//We need to pass Opcode and SmfProvider+SmfContact (when user is not NULL) serialized into bytearray 
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
@@ -177,29 +179,37 @@
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
 	if(user)
 		{
-		write<<m_argFlag;
-		write<<*user;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*user;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<pageNum;
-	write<<m_argFlag;
-	write<<perPage;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<pageNum;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<perPage;
 	
+	write<<dataToPlugins;
+
 	QString intfName(postProviderInterface);
 	int maxAllocation = MaxSmfPostSize*perPage;
 	
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactRetrievePosts, maxAllocation);
+	
+	return err;
 	}
 	
 /**
@@ -207,9 +217,11 @@
  * updatePostFinished() signal
  * @param postData data to be posted
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProviderPrivate::post(SmfPost& postData,SmfLocation& location) 
+SmfError SmfPostProviderPrivate::post(SmfPost& postData,SmfLocation& location) 
 	{
+	SmfError err = SmfNoError;
 	m_serializedDataToServer.clear();
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
@@ -218,11 +230,17 @@
 	
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<postData;
-	write<<m_argFlag;
-	write<<location;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<postData;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<location;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(postProviderInterface);
 	
@@ -230,6 +248,7 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactPost, 10);
+	return err;
 	}
 
 /**
@@ -237,9 +256,11 @@
  * updatePostFinished() signal
  * @param postData edited/new data to be posted
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProviderPrivate::updatePost(SmfPost& postData)
+SmfError SmfPostProviderPrivate::updatePost(SmfPost& postData)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
 	//serialize start
@@ -247,15 +268,22 @@
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<postData;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<postData;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(postProviderInterface);
 	//we are not mentioning the max size, as we'll receive only bool
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactUpdatePost, 10);
+	return err;
 	}
 
 /**
@@ -264,9 +292,11 @@
  * @param postData data to be posted
  * @param contact contact to which the post is to be directed
  * @param location location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProviderPrivate::postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location)
+SmfError SmfPostProviderPrivate::postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
 	//serialize start
@@ -275,27 +305,34 @@
 	
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<postData;
-	write<<m_argFlag;
-	write<<contact;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<postData;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<contact;
 	if(location)
 		{
-		write<<m_argFlag;
-		write<<*location;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*location;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(postProviderInterface);
 	//we are not mentioning the max size, as we'll receive only bool
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactPostDirected, 10);
+	return err;
 	}
 
 /**
@@ -303,10 +340,12 @@
  * @param aTarget Post on which comment has to be posted
  * @param aComment comment to be posted
  * @param aLocation location data
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProviderPrivate::commentOnAPost( SmfPost &aTarget, SmfPost &aComment, 
+SmfError SmfPostProviderPrivate::commentOnAPost( SmfPost &aTarget, SmfPost &aComment, 
 		SmfLocation *aLocation)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
 	//serialize start
@@ -315,39 +354,46 @@
 	
 	//SmfProvider
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<aTarget;
-	write<<m_argFlag;
-	write<<aComment;
-	
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<aTarget;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<aComment;
 	if(aLocation)
 		{
-		write<<m_argFlag;
-		write<<*aLocation;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*aLocation;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(postProviderInterface);
 	//we are not mentioning the max size, as we'll receive only bool
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactCommentOnAPost, 10);
+	return err;
 	}
 
 /**
  * Posts appearance info of the user.e.g. appear offline, busy, do-not-disturb
  * @param appearence user appearance
  * @see SmfPresenceInfo
- * @return False on Failure/Not supported 
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-bool SmfPostProviderPrivate::postAppearence(SmfAppearenceInfo appearence,
+SmfError SmfPostProviderPrivate::postAppearence(SmfAppearenceInfo appearence,
 		const QString &status)
 	{
+	SmfError err = SmfNoError;
 	//TODO:-How to return "supported" value? should it be synchronous?
 	//Currently doing it asynchronously with the assumption of always supported
 	//TODO:- implement some signal completion API
@@ -357,19 +403,24 @@
 	//serialize start
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<appearence;
-	write<<m_argFlag;
-	write<<status;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<appearence;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<status;
+	
+	write<<dataToPlugins;
 		
 	QString intfName(postProviderInterface);
 	//we are not mentioning the max size, as we'll receive only bool
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactPostAppearence, 10);
-	
-	return true;
+	return err;
 	}
 
 /**
@@ -378,28 +429,37 @@
  * @param postData data to be posted
  * @param contact contact to which the post belonged
  * @param bool whether user changed items within the post
+ * @return SmfError. SmfNoError if success, else appropriate error code
  */
-void SmfPostProviderPrivate::sharePost(SmfPost& postData,SmfContact& contact,bool edited)
+SmfError SmfPostProviderPrivate::sharePost(SmfPost& postData,SmfContact& contact,bool edited)
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
 	//serialize start
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
+
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<postData;
-	write<<m_argFlag;
-	write<<contact;
-	write<<m_argFlag;
-	write<<edited;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<postData;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<contact;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<edited;
+	
+	write<<dataToPlugins;
 	
 	QString intfName(postProviderInterface);
 	//we are not mentioning the max size, as we'll receive only bool
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactSharePost, 10);
+	return err;
 	}
 
 /**
@@ -407,32 +467,39 @@
  * when the result is available.
  * @param operationId OperationId
  * @param customData Custom data to be sent
+ * @return SmfError. SmfNoError if success, else appropriate error code
  * Note:-Interpretation of operationId and customData is upto the concerned
  * plugin and client application. service provider should provide some
  * serializing-deserializing utilities for these custom data
  */
-void SmfPostProviderPrivate::customRequest ( const int& operationId, QByteArray* customData )
+SmfError SmfPostProviderPrivate::customRequest ( const int& operationId, QByteArray* customData )
 	{
+	SmfError err = SmfNoError;
 	SmfProvider* m_baseProvider = m_postProvider->getProvider();
 	
 	//serialize start
 	m_serializedDataToServer.clear();
 	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
 	write<<*m_baseProvider;
+	
+	QByteArray dataToPlugins;
+	QDataStream streamToPlugin(&dataToPlugins, QIODevice::WriteOnly);
 	m_argFlag = 1;
-	write<<m_argFlag;
-	write<<operationId;
+	streamToPlugin<<m_argFlag;
+	streamToPlugin<<operationId;
 	if(customData)
 		{
-		write<<m_argFlag;
-		write<<*customData;
+		streamToPlugin<<m_argFlag;
+		streamToPlugin<<*customData;
 		}
 	else
 		{
 		m_argFlag = 0;
-		write<<m_argFlag;
+		streamToPlugin<<m_argFlag;
 		}
 	
+	write<<dataToPlugins;
+	
 	QString intfName(postProviderInterface);
 	//ToDo:- How much size to allocate for custo data? keeping MaxSmfPostSize for now
 	int maxAllocation = MaxSmfPostSize;
@@ -440,6 +507,21 @@
 	//call private impl's send method
 	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
 			SmfContactPostCustomRequest, maxAllocation);
+	return err;
+	}
+
+SmfError SmfPostProviderPrivate::cancelRequest()
+	{
+	qDebug()<<"Inside SmfPostProviderPrivate::cancelRequest()";
+	QByteArray notused;
+	QByteArray retData = m_SmfClientPrivate->sendSyncRequest(notused,SmfCancelRequest,1000, notused);
+	
+	//De-serialize it into SmfError
+	QDataStream reader(&retData,QIODevice::ReadOnly);
+	int val;
+	reader>>val;
+	SmfError error = (SmfError) val;
+	return error;
 	}
 
 /**
--- a/smf/smfservermodule/smfclient/smfpostprovider_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfpostprovider_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -99,26 +99,29 @@
 	 * once the post lists are available
 	 * @param user user's contact in this SP, omit for self contact
 	 * @param pageNum Page number to download, SMF_FIRST_PAGE denotes fresh query.
-     * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE 
+     * @param perPage Item per page, default is SMF_ITEMS_PER_PAGE
+     * @return SmfError. SmfNoError if success, else appropriate error code 
 	 * @see postsAvailable()
 	 */
-	void posts(SmfContact* user = 0,int pageNum=SMF_FIRST_PAGE,int perPage=SMF_ITEMS_PER_PAGE);
+	SmfError posts(SmfContact* user = 0,int pageNum=SMF_FIRST_PAGE,int perPage=SMF_ITEMS_PER_PAGE);
 	
 	/**
 	 * Updates a post to own area, the success of the post can be checked with signal
 	 * updatePostFinished() signal
 	 * @param postData data to be posted
 	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void post(SmfPost& postData,SmfLocation& location) ; 
+	SmfError post(SmfPost& postData,SmfLocation& location) ; 
 	
 	/**
 	 * Updates the last post to own area with new data, the success of the post can be checked with signal
 	 * updatePostFinished() signal
 	 * @param postData edited/new data to be posted
 	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void updatePost(SmfPost& postData); 
+	SmfError updatePost(SmfPost& postData); 
 	
 	/**
 	 * Updates a post to a particular Smf contact. the success of the post can be checked with signal
@@ -126,24 +129,26 @@
 	 * @param postData data to be posted
 	 * @param contact contact to which the post is to be directed
 	 * @param location location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location=0);
+	SmfError postDirected(SmfPost& postData,SmfContact& contact,SmfLocation* location=0);
 	
 	/**
 	 * Method to post a comment on a post.
 	 * @param aTarget Post on which comment has to be posted
 	 * @param aComment comment to be posted
 	 * @param aLocation location data
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void commentOnAPost( SmfPost &aTarget, SmfPost &aComment, SmfLocation *aLocation = NULL);
+	SmfError commentOnAPost( SmfPost &aTarget, SmfPost &aComment, SmfLocation *aLocation = NULL);
 	
 	/**
 	 * Posts appearance info of the user.e.g. appear offline, busy, do-not-disturb
 	 * @param appearence user appearance
 	 * @see SmfPresenceInfo
-	 * @return False on Failure/Not supported 
+	 * @return SmfError. SmfNoError if success, else appropriate error code 
 	 */
-	bool postAppearence(SmfAppearenceInfo appearence, const QString &status); 
+	SmfError postAppearence(SmfAppearenceInfo appearence, const QString &status); 
 	
 	/**
 	 * Share /a contact's post to user's friends and followers (e.g. retweet in twitter, share on facebook)
@@ -151,18 +156,28 @@
 	 * @param postData data to be posted
 	 * @param contact contact to which the post belonged
 	 * @param bool whether user changed items within the post
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 */
-	void sharePost(SmfPost& postData,SmfContact& contact,bool edited);
+	SmfError sharePost(SmfPost& postData,SmfContact& contact,bool edited);
 	
 	/**
 	 * Request for a custom operation.
 	 * @param operationId OperationId
 	 * @param customData Custom data to be sent
+	 * @return SmfError. SmfNoError if success, else appropriate error code
 	 * Note:-Interpretation of operationId and customData is upto the concerned
 	 * plugin and client application. service provider should provide some
 	 * serializing-deserializing utilities for these custom data
 	 */
-	void customRequest(const int& operationId,QByteArray* customData);
+	SmfError customRequest(const int& operationId,QByteArray* customData);
+	
+    /**
+     * Cancels a request generated due to the call to any API which results 
+     * into http request. Might return error if no request is currently pending.
+     * Please note that there can be only one request pending at any point of time
+     * @return Appropriate SmfError value
+     */
+	SmfError cancelRequest ();
    
 public:	//From smfobserver 
 	/**
--- a/smf/smfservermodule/smfclient/smfrelationmgr.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfrelationmgr.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -20,9 +20,8 @@
 #include "smfrelationmgr.h"
 #include "smfrelationmgr_p.h"
 
-SmfRelationItem::SmfRelationItem(SmfProvider* provider)
+SmfRelationItem::SmfRelationItem()
 	{
-	m_provider = *(provider);
 	}
 
 SmfProvider SmfRelationItem::getProvider() const
--- a/smf/smfservermodule/smfclient/smfrelationmgr.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfrelationmgr.h	Thu Sep 23 17:43:31 2010 +0530
@@ -28,7 +28,7 @@
 class SmfRelationMgrPrivate;
 
 // implementaion constants
-const int maxSmfRelationIdSize = 500;
+const int maxSmfRelationIdSize = 1000;
 const int maxSmfRelationItemSize = 1000;
 const int maxRelationItems = 1000;
 
@@ -37,12 +37,13 @@
 typedef QString SmfRelationId;
 
 /**
+ * @ingroup smf_client_group
  * One record of a contact in a relation. Index specifies their position in the relationship.
  */
 class SMFCLIENT_EXPORT SmfRelationItem : public SmfContact
 	{
 public:
-	SmfRelationItem(SmfProvider* provider=0);
+	SmfRelationItem();
 	
 public:
 	SmfProvider getProvider() const;
@@ -134,7 +135,7 @@
 	SmfRelationId create(SmfProvider *provider=NULL, SmfContact *contact=NULL);
 
 	/** assign contact to a relation */
-	SmfError associate( SmfRelationId& relation,
+	SmfError associate( SmfRelationId& phoneId,
 						const SmfContact* contact,
 						SmfProvider* provider);
 
--- a/smf/smfservermodule/smfclient/smfrelationmgr_p.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfclient/smfrelationmgr_p.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -16,6 +16,7 @@
  * Private Implementation of Relation Manager
  * 
  */
+#include <qdebug.h>
 
 #include "smfrelationmgr.h"
 #include "smfrelationmgr_p.h"
@@ -237,7 +238,7 @@
 	m_dataFromDSM = m_SmfClientPrivate->sendDSMSyncRequest(SmfRelationCount,m_dataForDSM,err,maxAlloc);
 	if(err == SmfNoError)
 		{
-		QDataStream readStream(&m_dataForDSM,QIODevice::ReadOnly);
+		QDataStream readStream(&m_dataFromDSM,QIODevice::ReadOnly);
 		readStream>>count;
 		}
 	else
--- a/smf/smfservermodule/smfcommon/bwins/smfcommonu.def	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/bwins/smfcommonu.def	Thu Sep 23 17:43:31 2010 +0530
@@ -5,434 +5,450 @@
 	??6@YAAAVQDataStream@@AAV0@ABVSmfPictureAlbum@@@Z @ 4 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPictureAlbum const &)
 	??0SmfPicture@@QAE@XZ @ 5 NONAME ; SmfPicture::SmfPicture(void)
 	?createParameterString@SmfPluginUtil@@QAE?AVQByteArray@@ABVQString@@W4Operation@QNetworkAccessManager@@ABV2@2W4SmfSignatureMethod@@ABV?$QMultiMap@VQByteArray@@V1@@@W4SmfParsingMode@@@Z @ 6 NONAME ; class QByteArray SmfPluginUtil::createParameterString(class QString const &, enum QNetworkAccessManager::Operation, class QByteArray const &, class QByteArray const &, enum SmfSignatureMethod, class QMultiMap<class QByteArray, class QByteArray> const &, enum SmfParsingMode)
-	?applicationUrl@SmfProvider@@QBE?AVQUrl@@XZ @ 7 NONAME ; class QUrl SmfProvider::applicationUrl(void) const
-	?setDetails@SmfActivityEntry@@QAE_NABVSmfPost@@@Z @ 8 NONAME ; bool SmfActivityEntry::setDetails(class SmfPost const &)
-	?setDuration@SmfTrackInfo@@QAEXABVQTime@@@Z @ 9 NONAME ; void SmfTrackInfo::setDuration(class QTime const &)
-	?setId@SmfLocation@@QAEXABVQString@@@Z @ 10 NONAME ; void SmfLocation::setId(class QString const &)
-	?owner@SmfPost@@QBE?AVSmfContact@@XZ @ 11 NONAME ; class SmfContact SmfPost::owner(void) const
-	?setGeoPositionInfo@SmfLocation@@QAEXABVQGeoPositionInfo@QtMobility@@@Z @ 12 NONAME ; void SmfLocation::setGeoPositionInfo(class QtMobility::QGeoPositionInfo const &)
-	?setLanguage@SmfLyrics@@QAEXABVQString@@@Z @ 13 NONAME ; void SmfLyrics::setLanguage(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactType@QtMobility@@@Z @ 14 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactType const &)
-	?metadata@SmfPlaylist@@QBE?AV?$QMap@VQString@@VQVariant@@@@XZ @ 15 NONAME ; class QMap<class QString, class QVariant> SmfPlaylist::metadata(void) const
-	?extension@SmfPlaylist@@QBE?AV?$QMap@VQString@@VQVariant@@@@XZ @ 16 NONAME ; class QMap<class QString, class QVariant> SmfPlaylist::extension(void) const
-	?duration@SmfSubtitle@@QBENXZ @ 17 NONAME ; double SmfSubtitle::duration(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfContact@@@Z @ 18 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfContact const &)
-	?setLocation@SmfPlaylist@@QAEXABVQUrl@@@Z @ 19 NONAME ; void SmfPlaylist::setLocation(class QUrl const &)
-	?postedDateTime@SmfPost@@QBE?AVQDateTime@@XZ @ 20 NONAME ; class QDateTime SmfPost::postedDateTime(void) const
-	?setDescription@SmfPictureAlbum@@QAEXABVQString@@@Z @ 21 NONAME ; void SmfPictureAlbum::setDescription(class QString const &)
-	?link@SmfActivityObject@@QBE?AVQString@@XZ @ 22 NONAME ; class QString SmfActivityObject::link(void) const
-	?image@SmfArtists@@QBE?AVQImage@@XZ @ 23 NONAME ; class QImage SmfArtists::image(void) const
-	?setVersion@SmfPlaylist@@QAEXABVQString@@@Z @ 24 NONAME ; void SmfPlaylist::setVersion(class QString const &)
-	??0SmfLocation@@QAE@ABV0@@Z @ 25 NONAME ; SmfLocation::SmfLocation(class SmfLocation const &)
-	?setTicketUrl@SmfEvent@@QAEXABVQUrl@@@Z @ 26 NONAME ; void SmfEvent::setTicketUrl(class QUrl const &)
-	?setId@SmfAlbum@@QAEXABVQString@@@Z @ 27 NONAME ; void SmfAlbum::setId(class QString const &)
-	??0SmfTrackInfo@@QAE@ABV0@@Z @ 28 NONAME ; SmfTrackInfo::SmfTrackInfo(class SmfTrackInfo const &)
-	??1SmfMusicRating@@QAE@XZ @ 29 NONAME ; SmfMusicRating::~SmfMusicRating(void)
-	?setObjData@SmfActivityObject@@QAEXABVQVariant@@@Z @ 30 NONAME ; void SmfActivityObject::setObjData(class QVariant const &)
-	?setName@SmfAlbum@@QAEXABVQString@@@Z @ 31 NONAME ; void SmfAlbum::setName(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactTimestamp@QtMobility@@@Z @ 32 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactTimestamp const &)
-	?parse@SmfPluginUtil@@QAE?AVQVariant@@PAVQIODevice@@PA_N@Z @ 33 NONAME ; class QVariant SmfPluginUtil::parse(class QIODevice *, bool *)
-	??0SmfMusicProfile@@QAE@ABV0@@Z @ 34 NONAME ; SmfMusicProfile::SmfMusicProfile(class SmfMusicProfile const &)
-	??0SmfPost@@QAE@XZ @ 35 NONAME ; SmfPost::SmfPost(void)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicFingerPrint@@@Z @ 36 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicFingerPrint &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactBirthday@QtMobility@@@Z @ 37 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactBirthday &)
-	?caption@SmfActivityObject@@QBE?AVQString@@XZ @ 38 NONAME ; class QString SmfActivityObject::caption(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfTrackInfo@@@Z @ 39 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfTrackInfo const &)
-	?title@SmfUrl@@QBE?AVQString@@XZ @ 40 NONAME ; class QString SmfUrl::title(void) const
-	?tags@SmfPicture@@QBE?AVQStringList@@XZ @ 41 NONAME ; class QStringList SmfPicture::tags(void) const
-	?language@SmfSubtitle@@QBE?AVQString@@XZ @ 42 NONAME ; class QString SmfSubtitle::language(void) const
-	??0SmfSubtitle@@QAE@ABV0@@Z @ 43 NONAME ; SmfSubtitle::SmfSubtitle(class SmfSubtitle const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactNickname@QtMobility@@@Z @ 44 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactNickname const &)
-	?userEvents@SmfMusicProfile@@QBE?AV?$QList@VSmfEvent@@@@XZ @ 45 NONAME ; class QList<class SmfEvent> SmfMusicProfile::userEvents(void) const
-	??4SmfPicture@@QAEAAV0@ABV0@@Z @ 46 NONAME ; class SmfPicture & SmfPicture::operator=(class SmfPicture const &)
-	?id@SmfUrl@@QBE?AVQString@@XZ @ 47 NONAME ; class QString SmfUrl::id(void) const
-	?setImage@SmfPost@@QAEXABVQImage@@@Z @ 48 NONAME ; void SmfPost::setImage(class QImage const &)
-	?supportedInterfaces@SmfProvider@@QBE?AV?$QList@VQString@@@@XZ @ 49 NONAME ; class QList<class QString> SmfProvider::supportedInterfaces(void) const
-	??0SmfComment@@QAE@ABV0@@Z @ 50 NONAME ; SmfComment::SmfComment(class SmfComment const &)
-	?setCaption@SmfActivityObject@@QAEXABVQString@@@Z @ 51 NONAME ; void SmfActivityObject::setCaption(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicProfile@@@Z @ 52 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicProfile &)
-	?setLyrics@SmfLyrics@@QAEXABVQByteArray@@@Z @ 53 NONAME ; void SmfLyrics::setLyrics(class QByteArray const &)
-	?setServiceUrl@SmfProvider@@QAEXAAVQUrl@@@Z @ 54 NONAME ; void SmfProvider::setServiceUrl(class QUrl &)
-	??4SmfAlbum@@QAEAAV0@ABV0@@Z @ 55 NONAME ; class SmfAlbum & SmfAlbum::operator=(class SmfAlbum const &)
-	?setTitle@SmfActivityEntry@@QAE_NABVSmfPost@@@Z @ 56 NONAME ; bool SmfActivityEntry::setTitle(class SmfPost const &)
-	?setUrl@SmfPost@@QAEXAAVQUrl@@@Z @ 57 NONAME ; void SmfPost::setUrl(class QUrl &)
-	?length@SmfUrl@@QBE?AVQString@@XZ @ 58 NONAME ; class QString SmfUrl::length(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfComment@@@Z @ 59 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfComment const &)
-	??0SmfPictureAlbum@@QAE@ABV0@@Z @ 60 NONAME ; SmfPictureAlbum::SmfPictureAlbum(class SmfPictureAlbum const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfLyrics@@@Z @ 61 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfLyrics const &)
-	?setLicense@SmfPlaylist@@QAEXABVQUrl@@@Z @ 62 NONAME ; void SmfPlaylist::setLicense(class QUrl const &)
-	?creationDate@SmfPlaylist@@QBE?AVQDateTime@@XZ @ 63 NONAME ; class QDateTime SmfPlaylist::creationDate(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfEvent@@@Z @ 64 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfEvent &)
-	??0SmfGroup@@QAE@ABV0@@Z @ 65 NONAME ; SmfGroup::SmfGroup(class SmfGroup const &)
-	?parse@SmfPluginUtil@@QAE?AVQVariant@@ABVQByteArray@@PA_N@Z @ 66 NONAME ; class QVariant SmfPluginUtil::parse(class QByteArray const &, bool *)
-	?id@SmfGroup@@QBE?AVQString@@XZ @ 67 NONAME ; class QString SmfGroup::id(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfArtists@@@Z @ 68 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfArtists const &)
-	?setUserEvents@SmfMusicProfile@@QAEXABV?$QList@VSmfEvent@@@@@Z @ 69 NONAME ; void SmfMusicProfile::setUserEvents(class QList<class SmfEvent> const &)
-	?setRel@SmfUrl@@QAEXABVQString@@@Z @ 70 NONAME ; void SmfUrl::setRel(class QString const &)
-	?setUrl@SmfArtists@@QAEXABVQUrl@@@Z @ 71 NONAME ; void SmfArtists::setUrl(class QUrl const &)
-	?setMaxRating@SmfMusicRating@@QAEXABH@Z @ 72 NONAME ; void SmfMusicRating::setMaxRating(int const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfPictureAlbum@@@Z @ 73 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPictureAlbum &)
-	?serviceName@SmfProvider@@QBE?AVQString@@XZ @ 74 NONAME ; class QString SmfProvider::serviceName(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfActivityEntry@@@Z @ 75 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfActivityEntry &)
-	?title@SmfTrackInfo@@QBE?AVQString@@XZ @ 76 NONAME ; class QString SmfTrackInfo::title(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfAlbum@@@Z @ 77 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfAlbum const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactTimestamp@QtMobility@@@Z @ 78 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactTimestamp &)
-	?visibility@SmfPictureAlbum@@QBE?AW4SmfPictureVisibility@@XZ @ 79 NONAME ; enum SmfPictureVisibility SmfPictureAlbum::visibility(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVQContactBirthday@QtMobility@@@Z @ 80 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactBirthday const &)
-	?setTime@SmfActivityObject@@QAEXABVQDateTime@@@Z @ 81 NONAME ; void SmfActivityObject::setTime(class QDateTime const &)
-	?rating@SmfTrackInfo@@QBE?AVSmfMusicRating@@XZ @ 82 NONAME ; class SmfMusicRating SmfTrackInfo::rating(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVQContactOnlineAccount@QtMobility@@@Z @ 83 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactOnlineAccount &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactGeoLocation@QtMobility@@@Z @ 84 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGeoLocation &)
-	?type@SmfUrl@@QBE?AVQString@@XZ @ 85 NONAME ; class QString SmfUrl::type(void) const
-	?setVenue@SmfEvent@@QAEXABVSmfLocation@@@Z @ 86 NONAME ; void SmfEvent::setVenue(class SmfLocation const &)
-	?rating@SmfMusicRating@@QBEHXZ @ 87 NONAME ; int SmfMusicRating::rating(void) const
-	?id@SmfActivityObject@@QBE?AVQString@@XZ @ 88 NONAME ; class QString SmfActivityObject::id(void) const
-	?setId@SmfPictureAlbum@@QAEXABVQString@@@Z @ 89 NONAME ; void SmfPictureAlbum::setId(class QString const &)
-	??4SmfUrl@@QAEAAV0@ABV0@@Z @ 90 NONAME ; class SmfUrl & SmfUrl::operator=(class SmfUrl const &)
-	??0SmfPost@@QAE@ABV0@@Z @ 91 NONAME ; SmfPost::SmfPost(class SmfPost const &)
-	?setVisibility@SmfPicture@@QAEXABW4SmfPictureVisibility@@@Z @ 92 NONAME ; void SmfPicture::setVisibility(enum SmfPictureVisibility const &)
-	?setTimeStamp@SmfComment@@QAEXABVQDateTime@@@Z @ 93 NONAME ; void SmfComment::setTimeStamp(class QDateTime const &)
-	?setContent@SmfActivityObject@@QAEXABVQString@@@Z @ 94 NONAME ; void SmfActivityObject::setContent(class QString const &)
-	?id@SmfMusicProfile@@QBE?AVQString@@XZ @ 95 NONAME ; class QString SmfMusicProfile::id(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfLyrics@@@Z @ 96 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfLyrics &)
-	??4SmfPlaylist@@QAEAAV0@ABV0@@Z @ 97 NONAME ; class SmfPlaylist & SmfPlaylist::operator=(class SmfPlaylist const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactThumbnail@QtMobility@@@Z @ 98 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactThumbnail const &)
-	?setOwner@SmfPicture@@QAEXABVQString@@@Z @ 99 NONAME ; void SmfPicture::setOwner(class QString const &)
-	??4SmfPictureAlbum@@QAEAAV0@ABV0@@Z @ 100 NONAME ; class SmfPictureAlbum & SmfPictureAlbum::operator=(class SmfPictureAlbum const &)
-	?tags@SmfTrackInfo@@QBE?AVQStringList@@XZ @ 101 NONAME ; class QStringList SmfTrackInfo::tags(void) const
-	?setType@SmfActivityObject@@QAEXABW4SmfActivityObjectType@@@Z @ 102 NONAME ; void SmfActivityObject::setType(enum SmfActivityObjectType const &)
-	?id@SmfAlbum@@QBE?AVQString@@XZ @ 103 NONAME ; class QString SmfAlbum::id(void) const
-	?maxRating@SmfMusicRating@@QBEHXZ @ 104 NONAME ; int SmfMusicRating::maxRating(void) const
-	??0SmfPlaylist@@QAE@ABV0@@Z @ 105 NONAME ; SmfPlaylist::SmfPlaylist(class SmfPlaylist const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactAddress@QtMobility@@@Z @ 106 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAddress const &)
-	?picture@SmfPicture@@QBE?AVQImage@@XZ @ 107 NONAME ; class QImage SmfPicture::picture(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfActivityEntry@@@Z @ 108 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfActivityEntry const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfPost@@@Z @ 109 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPost const &)
-	??1SmfPluginUtil@@QAE@XZ @ 110 NONAME ; SmfPluginUtil::~SmfPluginUtil(void)
-	?setActivities@SmfActivityEntry@@QAE_NAAV?$QList@VSmfActivityObject@@@@@Z @ 111 NONAME ; bool SmfActivityEntry::setActivities(class QList<class SmfActivityObject> &)
-	?thumbnail@SmfPictureAlbum@@QBE?AVQImage@@XZ @ 112 NONAME ; class QImage SmfPictureAlbum::thumbnail(void) const
-	??4SmfSubtitle@@QAEAAV0@ABV0@@Z @ 113 NONAME ; class SmfSubtitle & SmfSubtitle::operator=(class SmfSubtitle const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfPlaylist@@@Z @ 114 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPlaylist &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfTrackInfo@@@Z @ 115 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfTrackInfo &)
-	?setRating@SmfMusicRating@@QAEXABH@Z @ 116 NONAME ; void SmfMusicRating::setRating(int const &)
-	?comments@SmfPlaylist@@QBE?AV?$QList@VSmfComment@@@@XZ @ 117 NONAME ; class QList<class SmfComment> SmfPlaylist::comments(void) const
-	??0SmfGroup@@QAE@PAV?$QList@VSmfContact@@@@@Z @ 118 NONAME ; SmfGroup::SmfGroup(class QList<class SmfContact> *)
-	?playListTitle@SmfPlaylist@@QBE?AVQString@@XZ @ 119 NONAME ; class QString SmfPlaylist::playListTitle(void) const
-	?convert@SmfContact@@QBEXAAVQContact@QtMobility@@@Z @ 120 NONAME ; void SmfContact::convert(class QtMobility::QContact &) const
-	??4SmfTrackInfo@@QAEAAV0@ABV0@@Z @ 121 NONAME ; class SmfTrackInfo & SmfTrackInfo::operator=(class SmfTrackInfo const &)
-	?street@SmfLocation@@QBE?AVQString@@XZ @ 122 NONAME ; class QString SmfLocation::street(void) const
-	?author@SmfPlaylist@@QBE?AVQString@@XZ @ 123 NONAME ; class QString SmfPlaylist::author(void) const
-	?duration@SmfTrackInfo@@QBE?AVQTime@@XZ @ 124 NONAME ; class QTime SmfTrackInfo::duration(void) const
-	??1SmfPictureAlbum@@QAE@XZ @ 125 NONAME ; SmfPictureAlbum::~SmfPictureAlbum(void)
-	?setServiceIcon@SmfProvider@@QAEXAAVQImage@@@Z @ 126 NONAME ; void SmfProvider::setServiceIcon(class QImage &)
-	??0SmfMusicRating@@QAE@ABV0@@Z @ 127 NONAME ; SmfMusicRating::SmfMusicRating(class SmfMusicRating const &)
-	?setTitle@SmfPicture@@QAEXABVQString@@@Z @ 128 NONAME ; void SmfPicture::setTitle(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfPicture@@@Z @ 129 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPicture const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicRating@@@Z @ 130 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicRating const &)
-	?url@SmfLocation@@QBE?AVQUrl@@XZ @ 131 NONAME ; class QUrl SmfLocation::url(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVQContactPhoneNumber@QtMobility@@@Z @ 132 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactPhoneNumber const &)
-	?url@SmfPictureAlbum@@QBE?AVQUrl@@XZ @ 133 NONAME ; class QUrl SmfPictureAlbum::url(void) const
-	?image@SmfAlbum@@QBE?AVQImage@@XZ @ 134 NONAME ; class QImage SmfAlbum::image(void) const
-	?duration@SmfEvent@@QBE?AVQTime@@XZ @ 135 NONAME ; class QTime SmfEvent::duration(void) const
-	?setOwner@SmfPost@@QAEXABVSmfContact@@@Z @ 136 NONAME ; void SmfPost::setOwner(class SmfContact const &)
-	?setId@SmfPost@@QAEXVQString@@@Z @ 137 NONAME ; void SmfPost::setId(class QString)
-	??0SmfAlbum@@QAE@ABV0@@Z @ 138 NONAME ; SmfAlbum::SmfAlbum(class SmfAlbum const &)
-	?url@SmfPicture@@QBE?AVQUrl@@XZ @ 139 NONAME ; class QUrl SmfPicture::url(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfPlaylist@@@Z @ 140 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPlaylist const &)
-	??_ESmfComment@@QAE@I@Z @ 141 NONAME ; SmfComment::~SmfComment(unsigned int)
-	?setText@SmfComment@@QAEXABVQString@@@Z @ 142 NONAME ; void SmfComment::setText(class QString const &)
-	?postedDate@SmfPicture@@QBE?AVQDateTime@@XZ @ 143 NONAME ; class QDateTime SmfPicture::postedDate(void) const
-	?setArtists@SmfAlbum@@QAEXABVSmfArtists@@@Z @ 144 NONAME ; void SmfAlbum::setArtists(class SmfArtists const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactOnlineAccount@QtMobility@@@Z @ 145 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactOnlineAccount const &)
-	??1SmfUrl@@QAE@XZ @ 146 NONAME ; SmfUrl::~SmfUrl(void)
-	??1SmfActivityEntry@@QAE@XZ @ 147 NONAME ; SmfActivityEntry::~SmfActivityEntry(void)
-	?artists@SmfTrackInfo@@QBE?AVSmfArtists@@XZ @ 148 NONAME ; class SmfArtists SmfTrackInfo::artists(void) const
-	??0SmfMusicProfile@@QAE@XZ @ 149 NONAME ; SmfMusicProfile::SmfMusicProfile(void)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactThumbnail@QtMobility@@@Z @ 150 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactThumbnail &)
-	?title@SmfActivityEntry@@QBE?AVSmfPost@@XZ @ 151 NONAME ; class SmfPost SmfActivityEntry::title(void) const
-	??0SmfAlbum@@QAE@XZ @ 152 NONAME ; SmfAlbum::SmfAlbum(void)
-	?ticketUrl@SmfEvent@@QBE?AVQUrl@@XZ @ 153 NONAME ; class QUrl SmfEvent::ticketUrl(void) const
-	?setId@SmfGroup@@QAEXAAVQString@@@Z @ 154 NONAME ; void SmfGroup::setId(class QString &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactName@QtMobility@@@Z @ 155 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactName &)
-	?text@SmfComment@@QBE?AVQString@@XZ @ 156 NONAME ; class QString SmfComment::text(void) const
-	?setTargetObj@SmfActivityEntry@@QAE_NABVSmfActivityObject@@@Z @ 157 NONAME ; bool SmfActivityEntry::setTargetObj(class SmfActivityObject const &)
-	?setName@SmfGroup@@QAEXAAVQString@@@Z @ 158 NONAME ; void SmfGroup::setName(class QString &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfProvider@@@Z @ 159 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfProvider &)
-	??_ESmfEvent@@QAE@I@Z @ 160 NONAME ; SmfEvent::~SmfEvent(unsigned int)
-	?setValue@SmfContact@@QAEXABVQString@@AAVQVariant@@@Z @ 161 NONAME ; void SmfContact::setValue(class QString const &, class QVariant &)
-	?info@SmfPlaylist@@QBE?AVQUrl@@XZ @ 162 NONAME ; class QUrl SmfPlaylist::info(void) const
-	?author@SmfActivityEntry@@QBE?AVSmfContact@@XZ @ 163 NONAME ; class SmfContact SmfActivityEntry::author(void) const
-	?setLink@SmfActivityObject@@QAEXABVQString@@@Z @ 164 NONAME ; void SmfActivityObject::setLink(class QString const &)
-	?subtitle@SmfSubtitle@@QBE?AVQByteArray@@XZ @ 165 NONAME ; class QByteArray SmfSubtitle::subtitle(void) const
-	?setId@SmfTrackInfo@@QAEXABVQString@@@Z @ 166 NONAME ; void SmfTrackInfo::setId(class QString const &)
-	?setImage@SmfAlbum@@QAEXABVQImage@@@Z @ 167 NONAME ; void SmfAlbum::setImage(class QImage const &)
-	?id@SmfPost@@QBE?AVQString@@XZ @ 168 NONAME ; class QString SmfPost::id(void) const
-	?setGenre@SmfTrackInfo@@QAEXABVQString@@@Z @ 169 NONAME ; void SmfTrackInfo::setGenre(class QString const &)
-	?serviceUrl@SmfProvider@@QBE?AVQUrl@@XZ @ 170 NONAME ; class QUrl SmfProvider::serviceUrl(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfActivityObject@@@Z @ 171 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfActivityObject &)
-	?releaseYear@SmfLyrics@@QBE?AVQDateTime@@XZ @ 172 NONAME ; class QDateTime SmfLyrics::releaseYear(void) const
-	?frameRate@SmfSubtitle@@QBENXZ @ 173 NONAME ; double SmfSubtitle::frameRate(void) const
-	??1SmfEvent@@QAE@XZ @ 174 NONAME ; SmfEvent::~SmfEvent(void)
-	?setPostedDate@SmfPicture@@QAEXABVQDateTime@@@Z @ 175 NONAME ; void SmfPicture::setPostedDate(class QDateTime const &)
-	?setTitle@SmfPictureAlbum@@QAEXABVQString@@@Z @ 176 NONAME ; void SmfPictureAlbum::setTitle(class QString const &)
-	?comments@SmfPicture@@QBE?AV?$QList@VSmfComment@@@@XZ @ 177 NONAME ; class QList<class SmfComment> SmfPicture::comments(void) const
-	??1SmfMusicFingerPrint@@QAE@XZ @ 178 NONAME ; SmfMusicFingerPrint::~SmfMusicFingerPrint(void)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfProvider@@@Z @ 179 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfProvider const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactAvatar@QtMobility@@@Z @ 180 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAvatar const &)
-	?trackList@SmfPlaylist@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 181 NONAME ; class QList<class SmfTrackInfo> SmfPlaylist::trackList(void) const
-	??1SmfArtists@@QAE@XZ @ 182 NONAME ; SmfArtists::~SmfArtists(void)
-	??_ESmfActivityObject@@QAE@I@Z @ 183 NONAME ; SmfActivityObject::~SmfActivityObject(unsigned int)
-	??4SmfMusicRating@@QAEAAV0@ABV0@@Z @ 184 NONAME ; class SmfMusicRating & SmfMusicRating::operator=(class SmfMusicRating const &)
-	?getNonce@SmfPluginUtil@@QAEXAAVQString@@_J@Z @ 185 NONAME ; void SmfPluginUtil::getNonce(class QString &, long long)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactAvatar@QtMobility@@@Z @ 186 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAvatar &)
-	??0SmfActivityObject@@QAE@XZ @ 187 NONAME ; SmfActivityObject::SmfActivityObject(void)
-	?musicFingerPrint@SmfMusicFingerPrint@@QBE?AVQByteArray@@XZ @ 188 NONAME ; class QByteArray SmfMusicFingerPrint::musicFingerPrint(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfSubtitle@@@Z @ 189 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfSubtitle &)
-	??4SmfComment@@QAEAAV0@ABV0@@Z @ 190 NONAME ; class SmfComment & SmfComment::operator=(class SmfComment const &)
-	?subTypes@SmfContact@@QBE?AVQStringList@@XZ @ 191 NONAME ; class QStringList SmfContact::subTypes(void) const
-	??0SmfActivityObject@@QAE@ABV0@@Z @ 192 NONAME ; SmfActivityObject::SmfActivityObject(class SmfActivityObject const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactNote@QtMobility@@@Z @ 193 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactNote &)
-	?setImage@SmfArtists@@QAEXABVQImage@@@Z @ 194 NONAME ; void SmfArtists::setImage(class QImage const &)
-	?setTitle@SmfTrackInfo@@QAEXABVQString@@@Z @ 195 NONAME ; void SmfTrackInfo::setTitle(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactEmailAddress@QtMobility@@@Z @ 196 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactEmailAddress const &)
-	??4SmfContact@@QAEAAV0@ABV0@@Z @ 197 NONAME ; class SmfContact & SmfContact::operator=(class SmfContact const &)
-	??1SmfLocation@@QAE@XZ @ 198 NONAME ; SmfLocation::~SmfLocation(void)
-	?version@SmfPlaylist@@QBE?AVQString@@XZ @ 199 NONAME ; class QString SmfPlaylist::version(void) const
-	??1SmfLyrics@@QAE@XZ @ 200 NONAME ; SmfLyrics::~SmfLyrics(void)
-	??0SmfEvent@@QAE@ABV0@@Z @ 201 NONAME ; SmfEvent::SmfEvent(class SmfEvent const &)
-	?setMusicFingerPrint@SmfMusicFingerPrint@@QAEXABVQByteArray@@@Z @ 202 NONAME ; void SmfMusicFingerPrint::setMusicFingerPrint(class QByteArray const &)
-	?hreflang@SmfUrl@@QBE?AVQString@@XZ @ 203 NONAME ; class QString SmfUrl::hreflang(void) const
-	?setDescription@SmfProvider@@QAEXAAVQString@@@Z @ 204 NONAME ; void SmfProvider::setDescription(class QString &)
-	??0SmfActivityEntry@@QAE@ABV0@@Z @ 205 NONAME ; SmfActivityEntry::SmfActivityEntry(class SmfActivityEntry const &)
-	?activities@SmfActivityEntry@@QBE?AV?$QList@VSmfActivityObject@@@@XZ @ 206 NONAME ; class QList<class SmfActivityObject> SmfActivityEntry::activities(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVQContactUrl@QtMobility@@@Z @ 207 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactUrl &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactOrganization@QtMobility@@@Z @ 208 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactOrganization const &)
-	?comments@SmfTrackInfo@@QBE?AV?$QList@VSmfComment@@@@XZ @ 209 NONAME ; class QList<class SmfComment> SmfTrackInfo::comments(void) const
-	?setComment@SmfTrackInfo@@QAEXABV?$QList@VSmfComment@@@@@Z @ 210 NONAME ; void SmfTrackInfo::setComment(class QList<class SmfComment> const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfSubtitle@@@Z @ 211 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfSubtitle const &)
-	?attribution@SmfPlaylist@@QBE?AV?$QList@VQUrl@@@@XZ @ 212 NONAME ; class QList<class QUrl> SmfPlaylist::attribution(void) const
-	?addKeywords@SmfPictureAlbum@@QAEXABVQStringList@@@Z @ 213 NONAME ; void SmfPictureAlbum::addKeywords(class QStringList const &)
-	?setTags@SmfTrackInfo@@QAEXABVQStringList@@@Z @ 214 NONAME ; void SmfTrackInfo::setTags(class QStringList const &)
-	?setExtension@SmfPlaylist@@QAEXABV?$QMap@VQString@@VQVariant@@@@@Z @ 215 NONAME ; void SmfPlaylist::setExtension(class QMap<class QString, class QVariant> const &)
-	?setArtists@SmfEvent@@QAEXABVSmfArtists@@@Z @ 216 NONAME ; void SmfEvent::setArtists(class SmfArtists const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfGroup@@@Z @ 217 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfGroup const &)
-	?id@SmfPicture@@QBE?AVQString@@XZ @ 218 NONAME ; class QString SmfPicture::id(void) const
-	?description@SmfPost@@QBE?AVQString@@XZ @ 219 NONAME ; class QString SmfPost::description(void) const
-	?value@SmfContact@@QBE?AVQVariant@@ABVQString@@@Z @ 220 NONAME ; class QVariant SmfContact::value(class QString const &) const
-	??0SmfActivityEntry@@QAE@XZ @ 221 NONAME ; SmfActivityEntry::SmfActivityEntry(void)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactPhoneNumber@QtMobility@@@Z @ 222 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactPhoneNumber &)
-	?targetObj@SmfActivityEntry@@QBE?AVSmfActivityObject@@XZ @ 223 NONAME ; class SmfActivityObject SmfActivityEntry::targetObj(void) const
-	?id@SmfPlaylist@@QBE?AVQString@@XZ @ 224 NONAME ; class QString SmfPlaylist::id(void) const
-	?title@SmfPicture@@QBE?AVQString@@XZ @ 225 NONAME ; class QString SmfPicture::title(void) const
-	?title@SmfEvent@@QBE?AVQString@@XZ @ 226 NONAME ; class QString SmfEvent::title(void) const
-	?setMinRating@SmfMusicRating@@QAEXABH@Z @ 227 NONAME ; void SmfMusicRating::setMinRating(int const &)
-	??0SmfPicture@@QAE@ABV0@@Z @ 228 NONAME ; SmfPicture::SmfPicture(class SmfPicture const &)
-	?setId@SmfUrl@@QAEXABVQString@@@Z @ 229 NONAME ; void SmfUrl::setId(class QString const &)
-	?setId@SmfActivityEntry@@QAE_NABVQString@@@Z @ 230 NONAME ; bool SmfActivityEntry::setId(class QString const &)
-	?setDescription@SmfPost@@QAEXABVQString@@@Z @ 231 NONAME ; void SmfPost::setDescription(class QString const &)
-	?href@SmfUrl@@QBE?AVQUrl@@XZ @ 232 NONAME ; class QUrl SmfUrl::href(void) const
-	?image@SmfPost@@QBE?AVQImage@@XZ @ 233 NONAME ; class QImage SmfPost::image(void) const
-	?id@SmfLyrics@@QBE?AVQString@@XZ @ 234 NONAME ; class QString SmfLyrics::id(void) const
-	?setUrl@SmfPicture@@QAEXABVQUrl@@@Z @ 235 NONAME ; void SmfPicture::setUrl(class QUrl const &)
-	??4SmfEvent@@QAEAAV0@ABV0@@Z @ 236 NONAME ; class SmfEvent & SmfEvent::operator=(class SmfEvent const &)
-	??1SmfContact@@QAE@XZ @ 237 NONAME ; SmfContact::~SmfContact(void)
-	??4SmfPost@@QAEAAV0@ABV0@@Z @ 238 NONAME ; class SmfPost & SmfPost::operator=(class SmfPost const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactPresence@QtMobility@@@Z @ 239 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactPresence &)
-	?genre@SmfTrackInfo@@QBE?AVQString@@XZ @ 240 NONAME ; class QString SmfTrackInfo::genre(void) const
-	??0SmfLocation@@QAE@XZ @ 241 NONAME ; SmfLocation::SmfLocation(void)
-	?license@SmfPlaylist@@QBE?AVQUrl@@XZ @ 242 NONAME ; class QUrl SmfPlaylist::license(void) const
-	?setId@SmfEvent@@QAEXABVQString@@@Z @ 243 NONAME ; void SmfEvent::setId(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactGuid@QtMobility@@@Z @ 244 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGuid &)
-	?serviceIcon@SmfProvider@@QBE?AVQImage@@XZ @ 245 NONAME ; class QImage SmfProvider::serviceIcon(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVQContactEmailAddress@QtMobility@@@Z @ 246 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactEmailAddress &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfContact@@@Z @ 247 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfContact &)
-	?interestInfo@SmfMusicProfile@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 248 NONAME ; class QList<class SmfTrackInfo> SmfMusicProfile::interestInfo(void) const
-	?setStreet@SmfLocation@@QAEXABVQString@@@Z @ 249 NONAME ; void SmfLocation::setStreet(class QString const &)
-	??1SmfPost@@QAE@XZ @ 250 NONAME ; SmfPost::~SmfPost(void)
-	?members@SmfGroup@@QBE?AV?$QList@VSmfContact@@@@XZ @ 251 NONAME ; class QList<class SmfContact> SmfGroup::members(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicRating@@@Z @ 252 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicRating &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactId@QtMobility@@@Z @ 253 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactId &)
-	?setYear@SmfTrackInfo@@QAEXABVQDateTime@@@Z @ 254 NONAME ; void SmfTrackInfo::setYear(class QDateTime const &)
-	?geoPositionInfo@SmfLocation@@QBE?AVQGeoPositionInfo@QtMobility@@XZ @ 255 NONAME ; class QtMobility::QGeoPositionInfo SmfLocation::geoPositionInfo(void) const
-	??0SmfMusicFingerPrint@@QAE@ABV0@@Z @ 256 NONAME ; SmfMusicFingerPrint::SmfMusicFingerPrint(class SmfMusicFingerPrint const &)
-	?setPlayListTitle@SmfPlaylist@@QAEXABVQString@@@Z @ 257 NONAME ; void SmfPlaylist::setPlayListTitle(class QString const &)
-	?time@SmfActivityObject@@QBE?AVQDateTime@@XZ @ 258 NONAME ; class QDateTime SmfActivityObject::time(void) const
-	??1SmfComment@@QAE@XZ @ 259 NONAME ; SmfComment::~SmfComment(void)
-	?description@SmfPicture@@QBE?AVQString@@XZ @ 260 NONAME ; class QString SmfPicture::description(void) const
-	?visibility@SmfPicture@@QBE?AW4SmfPictureVisibility@@XZ @ 261 NONAME ; enum SmfPictureVisibility SmfPicture::visibility(void) const
-	?setName@SmfLocation@@QAEXABVQString@@@Z @ 262 NONAME ; void SmfLocation::setName(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactOrganization@QtMobility@@@Z @ 263 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactOrganization &)
-	?eventDateTime@SmfEvent@@QBE?AVQDateTime@@XZ @ 264 NONAME ; class QDateTime SmfEvent::eventDateTime(void) const
-	?setEventDateTime@SmfEvent@@QAEXABVQDateTime@@@Z @ 265 NONAME ; void SmfEvent::setEventDateTime(class QDateTime const &)
-	?setAuthor@SmfPlaylist@@QAEXABVQString@@@Z @ 266 NONAME ; void SmfPlaylist::setAuthor(class QString const &)
-	?location@SmfPlaylist@@QBE?AVQUrl@@XZ @ 267 NONAME ; class QUrl SmfPlaylist::location(void) const
-	?lyrics@SmfLyrics@@QBE?AVQByteArray@@XZ @ 268 NONAME ; class QByteArray SmfLyrics::lyrics(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfAlbum@@@Z @ 269 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfAlbum &)
-	?thumbnail@SmfActivityObject@@QBE?AVQImage@@XZ @ 270 NONAME ; class QImage SmfActivityObject::thumbnail(void) const
-	??0SmfUrl@@QAE@ABV0@@Z @ 271 NONAME ; SmfUrl::SmfUrl(class SmfUrl const &)
-	?comments@SmfPictureAlbum@@QBE?AV?$QList@VSmfComment@@@@XZ @ 272 NONAME ; class QList<class SmfComment> SmfPictureAlbum::comments(void) const
-	??1SmfMusicProfile@@QAE@XZ @ 273 NONAME ; SmfMusicProfile::~SmfMusicProfile(void)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicFingerPrint@@@Z @ 274 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicFingerPrint const &)
-	?title@SmfPost@@QBE?AVQString@@XZ @ 275 NONAME ; class QString SmfPost::title(void) const
-	??1SmfSubtitle@@QAE@XZ @ 276 NONAME ; SmfSubtitle::~SmfSubtitle(void)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactType@QtMobility@@@Z @ 277 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactType &)
-	?setLength@SmfUrl@@QAEXABVQString@@@Z @ 278 NONAME ; void SmfUrl::setLength(class QString const &)
-	?setZipCode@SmfLocation@@QAEXABVQString@@@Z @ 279 NONAME ; void SmfLocation::setZipCode(class QString const &)
-	?details@SmfActivityEntry@@QBE?AVSmfPost@@XZ @ 280 NONAME ; class SmfPost SmfActivityEntry::details(void) const
-	?names@SmfArtists@@QBE?AVQStringList@@XZ @ 281 NONAME ; class QStringList SmfArtists::names(void) const
-	?setFrameRate@SmfSubtitle@@QAEXABN@Z @ 282 NONAME ; void SmfSubtitle::setFrameRate(double const &)
-	?setType@SmfUrl@@QAEXABVQString@@@Z @ 283 NONAME ; void SmfUrl::setType(class QString const &)
-	?setServiceName@SmfProvider@@QAEXAAVQString@@@Z @ 284 NONAME ; void SmfProvider::setServiceName(class QString &)
-	?errorLine@SmfPluginUtil@@QBEHXZ @ 285 NONAME ; int SmfPluginUtil::errorLine(void) const
-	?id@SmfEvent@@QBE?AVQString@@XZ @ 286 NONAME ; class QString SmfEvent::id(void) const
-	?description@SmfPictureAlbum@@QBE?AVQString@@XZ @ 287 NONAME ; class QString SmfPictureAlbum::description(void) const
-	?setSubtitle@SmfSubtitle@@QAEXABVQByteArray@@@Z @ 288 NONAME ; void SmfSubtitle::setSubtitle(class QByteArray const &)
-	?setVisibility@SmfPictureAlbum@@QAEXABW4SmfPictureVisibility@@@Z @ 289 NONAME ; void SmfPictureAlbum::setVisibility(enum SmfPictureVisibility const &)
-	?id@SmfActivityEntry@@QBE?AVQString@@XZ @ 290 NONAME ; class QString SmfActivityEntry::id(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVQContactPresence@QtMobility@@@Z @ 291 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactPresence const &)
-	?setReleaseYear@SmfSubtitle@@QAEXABVQDateTime@@@Z @ 292 NONAME ; void SmfSubtitle::setReleaseYear(class QDateTime const &)
-	??4SmfGroup@@QAEAAV0@ABV0@@Z @ 293 NONAME ; class SmfGroup & SmfGroup::operator=(class SmfGroup const &)
-	??4SmfArtists@@QAEAAV0@ABV0@@Z @ 294 NONAME ; class SmfArtists & SmfArtists::operator=(class SmfArtists const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfEvent@@@Z @ 295 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfEvent const &)
-	?city@SmfLocation@@QBE?AVQString@@XZ @ 296 NONAME ; class QString SmfLocation::city(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfUrl@@@Z @ 297 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfUrl &)
-	??1SmfProvider@@QAE@XZ @ 298 NONAME ; SmfProvider::~SmfProvider(void)
-	??_ESmfContact@@QAE@I@Z @ 299 NONAME ; SmfContact::~SmfContact(unsigned int)
-	?downloadFlag@SmfPicture@@QAE_NXZ @ 300 NONAME ; bool SmfPicture::downloadFlag(void)
-	?venue@SmfEvent@@QBE?AVSmfLocation@@XZ @ 301 NONAME ; class SmfLocation SmfEvent::venue(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVQContactAnniversary@QtMobility@@@Z @ 302 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAnniversary const &)
-	?actionName@SmfActivityEntry@@QBE?AW4SmfActivityVerb@@XZ @ 303 NONAME ; enum SmfActivityVerb SmfActivityEntry::actionName(void) const
-	?setLanguage@SmfSubtitle@@QAEXABVQString@@@Z @ 304 NONAME ; void SmfSubtitle::setLanguage(class QString const &)
-	?releaseYear@SmfSubtitle@@QBE?AVQDateTime@@XZ @ 305 NONAME ; class QDateTime SmfSubtitle::releaseYear(void) const
-	?name@SmfGroup@@QBE?AVQString@@XZ @ 306 NONAME ; class QString SmfGroup::name(void) const
-	??4SmfMusicFingerPrint@@QAEAAV0@ABV0@@Z @ 307 NONAME ; class SmfMusicFingerPrint & SmfMusicFingerPrint::operator=(class SmfMusicFingerPrint const &)
-	??0SmfLyrics@@QAE@ABV0@@Z @ 308 NONAME ; SmfLyrics::SmfLyrics(class SmfLyrics const &)
-	?setMusicUsageInfo@SmfMusicProfile@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 309 NONAME ; void SmfMusicProfile::setMusicUsageInfo(class QList<class SmfTrackInfo> const &)
-	?setInfo@SmfPlaylist@@QAEXABVQUrl@@@Z @ 310 NONAME ; void SmfPlaylist::setInfo(class QUrl const &)
-	?setId@SmfLyrics@@QAEXABVQString@@@Z @ 311 NONAME ; void SmfLyrics::setId(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfComment@@@Z @ 312 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfComment &)
-	?setPostedDate@SmfPictureAlbum@@QAEXABVQDateTime@@@Z @ 313 NONAME ; void SmfPictureAlbum::setPostedDate(class QDateTime const &)
-	??1SmfPicture@@QAE@XZ @ 314 NONAME ; SmfPicture::~SmfPicture(void)
-	??0SmfArtists@@QAE@XZ @ 315 NONAME ; SmfArtists::SmfArtists(void)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactName@QtMobility@@@Z @ 316 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactName const &)
-	?setAlbum@SmfTrackInfo@@QAEXABVSmfAlbum@@@Z @ 317 NONAME ; void SmfTrackInfo::setAlbum(class SmfAlbum const &)
-	?setId@SmfPicture@@QAEXABVQString@@@Z @ 318 NONAME ; void SmfPicture::setId(class QString const &)
-	?pictureCount@SmfPictureAlbum@@QBEHXZ @ 319 NONAME ; int SmfPictureAlbum::pictureCount(void) const
-	?artists@SmfEvent@@QBE?AVSmfArtists@@XZ @ 320 NONAME ; class SmfArtists SmfEvent::artists(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfArtists@@@Z @ 321 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfArtists &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactUrl@QtMobility@@@Z @ 322 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactUrl const &)
-	?addComment@SmfPicture@@QAEXABVSmfComment@@@Z @ 323 NONAME ; void SmfPicture::addComment(class SmfComment const &)
-	?objData@SmfActivityObject@@QBE?AVQVariant@@XZ @ 324 NONAME ; class QVariant SmfActivityObject::objData(void) const
-	?setSupportedInterfaces@SmfProvider@@QAEXAAVQStringList@@@Z @ 325 NONAME ; void SmfProvider::setSupportedInterfaces(class QStringList &)
-	?setHhreflang@SmfUrl@@QAEXABVQString@@@Z @ 326 NONAME ; void SmfUrl::setHhreflang(class QString const &)
-	??0SmfUrl@@QAE@XZ @ 327 NONAME ; SmfUrl::SmfUrl(void)
-	??0SmfPicture@@QAE@ABVQImage@@@Z @ 328 NONAME ; SmfPicture::SmfPicture(class QImage const &)
-	??0SmfMusicFingerPrint@@QAE@XZ @ 329 NONAME ; SmfMusicFingerPrint::SmfMusicFingerPrint(void)
-	?setId@SmfPlaylist@@QAEXABVQString@@@Z @ 330 NONAME ; void SmfPlaylist::setId(class QString const &)
-	?setSupportedLanguages@SmfProvider@@QAEXAAVQStringList@@@Z @ 331 NONAME ; void SmfProvider::setSupportedLanguages(class QStringList &)
-	?setId@SmfSubtitle@@QAEXABVQString@@@Z @ 332 NONAME ; void SmfSubtitle::setId(class QString const &)
-	??0SmfSubtitle@@QAE@XZ @ 333 NONAME ; SmfSubtitle::SmfSubtitle(void)
-	?addTags@SmfPicture@@QAEXABVQStringList@@@Z @ 334 NONAME ; void SmfPicture::addTags(class QStringList const &)
-	??0SmfTrackInfo@@QAE@XZ @ 335 NONAME ; SmfTrackInfo::SmfTrackInfo(void)
-	??0SmfPost@@QAE@VSmfContact@@VQString@@1VQImage@@VQUrl@@@Z @ 336 NONAME ; SmfPost::SmfPost(class SmfContact, class QString, class QString, class QImage, class QUrl)
-	?setHref@SmfUrl@@QAEXABVQUrl@@@Z @ 337 NONAME ; void SmfUrl::setHref(class QUrl const &)
-	?url@SmfArtists@@QBE?AVQUrl@@XZ @ 338 NONAME ; class QUrl SmfArtists::url(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVQContactAddress@QtMobility@@@Z @ 339 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAddress &)
-	?setPictureCount@SmfPictureAlbum@@QAEXH@Z @ 340 NONAME ; void SmfPictureAlbum::setPictureCount(int)
-	?setPicture@SmfPicture@@QAEXABVQImage@@@Z @ 341 NONAME ; void SmfPicture::setPicture(class QImage const &)
-	?setNames@SmfArtists@@QAEXABVQStringList@@@Z @ 342 NONAME ; void SmfArtists::setNames(class QStringList const &)
-	?setId@SmfActivityObject@@QAEXABVQString@@@Z @ 343 NONAME ; void SmfActivityObject::setId(class QString const &)
-	??1SmfPlaylist@@QAE@XZ @ 344 NONAME ; SmfPlaylist::~SmfPlaylist(void)
-	?setApplicationUrl@SmfProvider@@QAEXAAVQUrl@@@Z @ 345 NONAME ; void SmfProvider::setApplicationUrl(class QUrl &)
-	?id@SmfTrackInfo@@QBE?AVQString@@XZ @ 346 NONAME ; class QString SmfTrackInfo::id(void) const
-	?minRating@SmfMusicRating@@QBEHXZ @ 347 NONAME ; int SmfMusicRating::minRating(void) const
-	??0SmfPluginUtil@@QAE@XZ @ 348 NONAME ; SmfPluginUtil::SmfPluginUtil(void)
-	?name@SmfLocation@@QBE?AVQString@@XZ @ 349 NONAME ; class QString SmfLocation::name(void) const
-	?title@SmfPictureAlbum@@QBE?AVQString@@XZ @ 350 NONAME ; class QString SmfPictureAlbum::title(void) const
-	?setAuthor@SmfActivityEntry@@QAE_NABVSmfContact@@@Z @ 351 NONAME ; bool SmfActivityEntry::setAuthor(class SmfContact const &)
-	?addComment@SmfPictureAlbum@@QAEXABVSmfComment@@@Z @ 352 NONAME ; void SmfPictureAlbum::addComment(class SmfComment const &)
-	??0SmfProvider@@QAE@XZ @ 353 NONAME ; SmfProvider::SmfProvider(void)
-	?timeStamp@SmfComment@@QBE?AVQDateTime@@XZ @ 354 NONAME ; class QDateTime SmfComment::timeStamp(void) const
-	??0SmfArtists@@QAE@ABV0@@Z @ 355 NONAME ; SmfArtists::SmfArtists(class SmfArtists const &)
-	?name@SmfAlbum@@QBE?AVQString@@XZ @ 356 NONAME ; class QString SmfAlbum::name(void) const
-	?setId@SmfComment@@QAEXABVQString@@@Z @ 357 NONAME ; void SmfComment::setId(class QString const &)
-	?image@SmfPlaylist@@QBE?AVQUrl@@XZ @ 358 NONAME ; class QUrl SmfPlaylist::image(void) const
-	?getAuthKeys@SmfPluginUtil@@QAEXAAV?$QMap@VQByteArray@@V1@@@VQString@@ABVQDateTime@@1@Z @ 359 NONAME ; void SmfPluginUtil::getAuthKeys(class QMap<class QByteArray, class QByteArray> &, class QString, class QDateTime const &, class QString)
-	?setCountry@SmfLocation@@QAEXABVQString@@@Z @ 360 NONAME ; void SmfLocation::setCountry(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfLocation@@@Z @ 361 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfLocation &)
-	??0SmfContact@@QAE@ABV0@@Z @ 362 NONAME ; SmfContact::SmfContact(class SmfContact const &)
-	?artists@SmfAlbum@@QBE?AVSmfArtists@@XZ @ 363 NONAME ; class SmfArtists SmfAlbum::artists(void) const
-	??4SmfMusicProfile@@QAEAAV0@ABV0@@Z @ 364 NONAME ; class SmfMusicProfile & SmfMusicProfile::operator=(class SmfMusicProfile const &)
-	?setId@SmfMusicProfile@@QAEXABVQString@@@Z @ 365 NONAME ; void SmfMusicProfile::setId(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactId@QtMobility@@@Z @ 366 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactId const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactNote@QtMobility@@@Z @ 367 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactNote const &)
-	?setUrl@SmfPictureAlbum@@QAEXABVQUrl@@@Z @ 368 NONAME ; void SmfPictureAlbum::setUrl(class QUrl const &)
-	??1SmfActivityObject@@QAE@XZ @ 369 NONAME ; SmfActivityObject::~SmfActivityObject(void)
-	?rel@SmfUrl@@QBE?AVQString@@XZ @ 370 NONAME ; class QString SmfUrl::rel(void) const
-	?errorString@SmfPluginUtil@@QBE?AVQString@@XZ @ 371 NONAME ; class QString SmfPluginUtil::errorString(void) const
-	?setTitle@SmfUrl@@QAEXABVQString@@@Z @ 372 NONAME ; void SmfUrl::setTitle(class QString const &)
-	?setInterestInfo@SmfMusicProfile@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 373 NONAME ; void SmfMusicProfile::setInterestInfo(class QList<class SmfTrackInfo> const &)
-	?keywords@SmfPictureAlbum@@QBE?AVQStringList@@XZ @ 374 NONAME ; class QStringList SmfPictureAlbum::keywords(void) const
-	?supportedLanguages@SmfProvider@@QBE?AVQStringList@@XZ @ 375 NONAME ; class QStringList SmfProvider::supportedLanguages(void) const
-	?description@SmfProvider@@QBE?AVQString@@XZ @ 376 NONAME ; class QString SmfProvider::description(void) const
-	?setRating@SmfTrackInfo@@QAEXABVSmfMusicRating@@@Z @ 377 NONAME ; void SmfTrackInfo::setRating(class SmfMusicRating const &)
-	??0SmfPlaylist@@QAE@XZ @ 378 NONAME ; SmfPlaylist::SmfPlaylist(void)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfActivityObject@@@Z @ 379 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfActivityObject const &)
-	?owner@SmfPicture@@QBE?AVQString@@XZ @ 380 NONAME ; class QString SmfPicture::owner(void) const
-	?type@SmfActivityObject@@QBE?AW4SmfActivityObjectType@@XZ @ 381 NONAME ; enum SmfActivityObjectType SmfActivityObject::type(void) const
-	??6@YAAAVQDataStream@@AAV0@ABVSmfUrl@@@Z @ 382 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfUrl const &)
-	?id@SmfLocation@@QBE?AVQString@@XZ @ 383 NONAME ; class QString SmfLocation::id(void) const
-	?setThumbnail@SmfPictureAlbum@@QAEXABVQImage@@@Z @ 384 NONAME ; void SmfPictureAlbum::setThumbnail(class QImage const &)
-	?setActionName@SmfActivityEntry@@QAEXW4SmfActivityVerb@@@Z @ 385 NONAME ; void SmfActivityEntry::setActionName(enum SmfActivityVerb)
-	?setReleaseYear@SmfLyrics@@QAEXABVQDateTime@@@Z @ 386 NONAME ; void SmfLyrics::setReleaseYear(class QDateTime const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfLocation@@@Z @ 387 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfLocation const &)
-	??5@YAAAVQDataStream@@AAV0@AAVSmfPicture@@@Z @ 388 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPicture &)
-	?setTrackList@SmfPlaylist@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 389 NONAME ; void SmfPlaylist::setTrackList(class QList<class SmfTrackInfo> const &)
-	??0SmfEvent@@QAE@XZ @ 390 NONAME ; SmfEvent::SmfEvent(void)
-	?setTitle@SmfEvent@@QAEXABVQString@@@Z @ 391 NONAME ; void SmfEvent::setTitle(class QString const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactGender@QtMobility@@@Z @ 392 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGender const &)
-	??4SmfActivityObject@@QAEAAV0@ABV0@@Z @ 393 NONAME ; class SmfActivityObject & SmfActivityObject::operator=(class SmfActivityObject const &)
-	?setMembers@SmfGroup@@QAEXPAV?$QList@VSmfContact@@@@@Z @ 394 NONAME ; void SmfGroup::setMembers(class QList<class SmfContact> *)
-	??0SmfMusicRating@@QAE@PAVSmfTrackInfo@@@Z @ 395 NONAME ; SmfMusicRating::SmfMusicRating(class SmfTrackInfo *)
-	??0SmfLyrics@@QAE@XZ @ 396 NONAME ; SmfLyrics::SmfLyrics(void)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactGender@QtMobility@@@Z @ 397 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGender &)
-	??0SmfComment@@QAE@XZ @ 398 NONAME ; SmfComment::SmfComment(void)
-	??1SmfAlbum@@QAE@XZ @ 399 NONAME ; SmfAlbum::~SmfAlbum(void)
-	?year@SmfTrackInfo@@QBE?AVQDateTime@@XZ @ 400 NONAME ; class QDateTime SmfTrackInfo::year(void) const
-	?country@SmfLocation@@QBE?AVQString@@XZ @ 401 NONAME ; class QString SmfLocation::country(void) const
-	?postedDate@SmfPictureAlbum@@QBE?AVQDateTime@@XZ @ 402 NONAME ; class QDateTime SmfPictureAlbum::postedDate(void) const
-	?musicUsageInfo@SmfMusicProfile@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 403 NONAME ; class QList<class SmfTrackInfo> SmfMusicProfile::musicUsageInfo(void) const
-	??0SmfContact@@QAE@PAVQObject@@@Z @ 404 NONAME ; SmfContact::SmfContact(class QObject *)
-	??1SmfTrackInfo@@QAE@XZ @ 405 NONAME ; SmfTrackInfo::~SmfTrackInfo(void)
-	?language@SmfLyrics@@QBE?AVQString@@XZ @ 406 NONAME ; class QString SmfLyrics::language(void) const
-	?setArtists@SmfTrackInfo@@QAEXABVSmfArtists@@@Z @ 407 NONAME ; void SmfTrackInfo::setArtists(class SmfArtists const &)
-	?id@SmfComment@@QBE?AVQString@@XZ @ 408 NONAME ; class QString SmfComment::id(void) const
-	?id@SmfPictureAlbum@@QBE?AVQString@@XZ @ 409 NONAME ; class QString SmfPictureAlbum::id(void) const
-	?setDuration@SmfEvent@@QAEXABVQTime@@@Z @ 410 NONAME ; void SmfEvent::setDuration(class QTime const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactGuid@QtMobility@@@Z @ 411 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGuid const &)
-	?setUrl@SmfLocation@@QAEXABVQUrl@@@Z @ 412 NONAME ; void SmfLocation::setUrl(class QUrl const &)
-	?setComments@SmfPlaylist@@QAEXABV?$QList@VSmfComment@@@@@Z @ 413 NONAME ; void SmfPlaylist::setComments(class QList<class SmfComment> const &)
-	?id@SmfSubtitle@@QBE?AVQString@@XZ @ 414 NONAME ; class QString SmfSubtitle::id(void) const
-	?setImage@SmfPlaylist@@QAEXABVQUrl@@@Z @ 415 NONAME ; void SmfPlaylist::setImage(class QUrl const &)
-	?setDescription@SmfPicture@@QAEXABVQString@@@Z @ 416 NONAME ; void SmfPicture::setDescription(class QString const &)
-	??4SmfLocation@@QAEAAV0@ABV0@@Z @ 417 NONAME ; class SmfLocation & SmfLocation::operator=(class SmfLocation const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactAnniversary@QtMobility@@@Z @ 418 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAnniversary &)
-	??4SmfLyrics@@QAEAAV0@ABV0@@Z @ 419 NONAME ; class SmfLyrics & SmfLyrics::operator=(class SmfLyrics const &)
-	??6@YAAAVQDataStream@@AAV0@ABVQContactGeoLocation@QtMobility@@@Z @ 420 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGeoLocation const &)
-	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicProfile@@@Z @ 421 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicProfile const &)
-	?setMetadata@SmfPlaylist@@QAEXABV?$QMap@VQString@@VQVariant@@@@@Z @ 422 NONAME ; void SmfPlaylist::setMetadata(class QMap<class QString, class QVariant> const &)
-	?album@SmfTrackInfo@@QBE?AVSmfAlbum@@XZ @ 423 NONAME ; class SmfAlbum SmfTrackInfo::album(void) const
-	?url@SmfPost@@QBE?AVQUrl@@XZ @ 424 NONAME ; class QUrl SmfPost::url(void) const
-	?content@SmfActivityObject@@QBE?AVQString@@XZ @ 425 NONAME ; class QString SmfActivityObject::content(void) const
-	?setThumbnail@SmfActivityObject@@QAEXABVQImage@@@Z @ 426 NONAME ; void SmfActivityObject::setThumbnail(class QImage const &)
-	??1SmfGroup@@QAE@XZ @ 427 NONAME ; SmfGroup::~SmfGroup(void)
-	?zipCode@SmfLocation@@QBE?AVQString@@XZ @ 428 NONAME ; class QString SmfLocation::zipCode(void) const
-	??5@YAAAVQDataStream@@AAV0@AAVSmfPost@@@Z @ 429 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPost &)
-	?setPostedDateTime@SmfPost@@QAEXAAVQDateTime@@@Z @ 430 NONAME ; void SmfPost::setPostedDateTime(class QDateTime &)
-	?setAttribution@SmfPlaylist@@QAEXABV?$QList@VQUrl@@@@@Z @ 431 NONAME ; void SmfPlaylist::setAttribution(class QList<class QUrl> const &)
-	?setCity@SmfLocation@@QAEXABVQString@@@Z @ 432 NONAME ; void SmfLocation::setCity(class QString const &)
-	??5@YAAAVQDataStream@@AAV0@AAVQContactNickname@QtMobility@@@Z @ 433 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactNickname &)
-	?setDuration@SmfSubtitle@@QAEXABN@Z @ 434 NONAME ; void SmfSubtitle::setDuration(double const &)
-	??_ESmfTrackInfo@@QAE@I@Z @ 435 NONAME ; SmfTrackInfo::~SmfTrackInfo(unsigned int)
-	?setTitle@SmfPost@@QAEXABVQString@@@Z @ 436 NONAME ; void SmfPost::setTitle(class QString const &)
+	?recentTracks@SmfMusicProfile@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 7 NONAME ; class QList<class SmfTrackInfo> SmfMusicProfile::recentTracks(void) const
+	?applicationUrl@SmfProvider@@QBE?AVQUrl@@XZ @ 8 NONAME ; class QUrl SmfProvider::applicationUrl(void) const
+	?setDetails@SmfActivityEntry@@QAE_NABVSmfPost@@@Z @ 9 NONAME ; bool SmfActivityEntry::setDetails(class SmfPost const &)
+	?setDuration@SmfTrackInfo@@QAEXABVQTime@@@Z @ 10 NONAME ; void SmfTrackInfo::setDuration(class QTime const &)
+	?setId@SmfLocation@@QAEXABVQString@@@Z @ 11 NONAME ; void SmfLocation::setId(class QString const &)
+	?owner@SmfPost@@QBE?AVSmfContact@@XZ @ 12 NONAME ; class SmfContact SmfPost::owner(void) const
+	?setGeoPositionInfo@SmfLocation@@QAEXABVQGeoPositionInfo@QtMobility@@@Z @ 13 NONAME ; void SmfLocation::setGeoPositionInfo(class QtMobility::QGeoPositionInfo const &)
+	?subtitleUrl@SmfSubtitle@@QBE?AVQUrl@@XZ @ 14 NONAME ; class QUrl SmfSubtitle::subtitleUrl(void) const
+	?setLanguage@SmfLyrics@@QAEXABVQString@@@Z @ 15 NONAME ; void SmfLyrics::setLanguage(class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactType@QtMobility@@@Z @ 16 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactType const &)
+	?itemsCount@SmfAlbum@@QBEHXZ @ 17 NONAME ; int SmfAlbum::itemsCount(void) const
+	?metadata@SmfPlaylist@@QBE?AV?$QMap@VQString@@VQVariant@@@@XZ @ 18 NONAME ; class QMap<class QString, class QVariant> SmfPlaylist::metadata(void) const
+	?extension@SmfPlaylist@@QBE?AV?$QMap@VQString@@VQVariant@@@@XZ @ 19 NONAME ; class QMap<class QString, class QVariant> SmfPlaylist::extension(void) const
+	?duration@SmfSubtitle@@QBENXZ @ 20 NONAME ; double SmfSubtitle::duration(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfContact@@@Z @ 21 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfContact const &)
+	?setLocation@SmfPlaylist@@QAEXABVQUrl@@@Z @ 22 NONAME ; void SmfPlaylist::setLocation(class QUrl const &)
+	?setId@SmfArtists@@QAEXABVQString@@@Z @ 23 NONAME ; void SmfArtists::setId(class QString const &)
+	?postedDateTime@SmfPost@@QBE?AVQDateTime@@XZ @ 24 NONAME ; class QDateTime SmfPost::postedDateTime(void) const
+	?setDescription@SmfPictureAlbum@@QAEXABVQString@@@Z @ 25 NONAME ; void SmfPictureAlbum::setDescription(class QString const &)
+	?link@SmfActivityObject@@QBE?AVQString@@XZ @ 26 NONAME ; class QString SmfActivityObject::link(void) const
+	?image@SmfArtists@@QBE?AVQImage@@XZ @ 27 NONAME ; class QImage SmfArtists::image(void) const
+	?setVersion@SmfPlaylist@@QAEXABVQString@@@Z @ 28 NONAME ; void SmfPlaylist::setVersion(class QString const &)
+	??0SmfLocation@@QAE@ABV0@@Z @ 29 NONAME ; SmfLocation::SmfLocation(class SmfLocation const &)
+	?setTicketUrl@SmfEvent@@QAEXABVQUrl@@@Z @ 30 NONAME ; void SmfEvent::setTicketUrl(class QUrl const &)
+	?setId@SmfAlbum@@QAEXABVQString@@@Z @ 31 NONAME ; void SmfAlbum::setId(class QString const &)
+	??0SmfTrackInfo@@QAE@ABV0@@Z @ 32 NONAME ; SmfTrackInfo::SmfTrackInfo(class SmfTrackInfo const &)
+	??1SmfMusicRating@@QAE@XZ @ 33 NONAME ; SmfMusicRating::~SmfMusicRating(void)
+	?setObjData@SmfActivityObject@@QAEXABVQVariant@@@Z @ 34 NONAME ; void SmfActivityObject::setObjData(class QVariant const &)
+	?setName@SmfAlbum@@QAEXABVQString@@@Z @ 35 NONAME ; void SmfAlbum::setName(class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactTimestamp@QtMobility@@@Z @ 36 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactTimestamp const &)
+	?parse@SmfPluginUtil@@QAE?AVQVariant@@PAVQIODevice@@PA_N@Z @ 37 NONAME ; class QVariant SmfPluginUtil::parse(class QIODevice *, bool *)
+	?id@SmfArtists@@QBE?AVQString@@XZ @ 38 NONAME ; class QString SmfArtists::id(void) const
+	??0SmfMusicProfile@@QAE@ABV0@@Z @ 39 NONAME ; SmfMusicProfile::SmfMusicProfile(class SmfMusicProfile const &)
+	??0SmfPost@@QAE@XZ @ 40 NONAME ; SmfPost::SmfPost(void)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicFingerPrint@@@Z @ 41 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicFingerPrint &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactBirthday@QtMobility@@@Z @ 42 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactBirthday &)
+	?setRecentTracks@SmfMusicProfile@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 43 NONAME ; void SmfMusicProfile::setRecentTracks(class QList<class SmfTrackInfo> const &)
+	?caption@SmfActivityObject@@QBE?AVQString@@XZ @ 44 NONAME ; class QString SmfActivityObject::caption(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfTrackInfo@@@Z @ 45 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfTrackInfo const &)
+	?title@SmfUrl@@QBE?AVQString@@XZ @ 46 NONAME ; class QString SmfUrl::title(void) const
+	?tags@SmfPicture@@QBE?AVQStringList@@XZ @ 47 NONAME ; class QStringList SmfPicture::tags(void) const
+	?language@SmfSubtitle@@QBE?AVQString@@XZ @ 48 NONAME ; class QString SmfSubtitle::language(void) const
+	?id@SmfMusicFingerPrint@@QBE?AVQString@@XZ @ 49 NONAME ; class QString SmfMusicFingerPrint::id(void) const
+	??0SmfSubtitle@@QAE@ABV0@@Z @ 50 NONAME ; SmfSubtitle::SmfSubtitle(class SmfSubtitle const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactNickname@QtMobility@@@Z @ 51 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactNickname const &)
+	?userEvents@SmfMusicProfile@@QBE?AV?$QList@VSmfEvent@@@@XZ @ 52 NONAME ; class QList<class SmfEvent> SmfMusicProfile::userEvents(void) const
+	??4SmfPicture@@QAEAAV0@ABV0@@Z @ 53 NONAME ; class SmfPicture & SmfPicture::operator=(class SmfPicture const &)
+	?id@SmfUrl@@QBE?AVQString@@XZ @ 54 NONAME ; class QString SmfUrl::id(void) const
+	?setImage@SmfPost@@QAEXABVQImage@@@Z @ 55 NONAME ; void SmfPost::setImage(class QImage const &)
+	?supportedInterfaces@SmfProvider@@QBE?AV?$QList@VQString@@@@XZ @ 56 NONAME ; class QList<class QString> SmfProvider::supportedInterfaces(void) const
+	??0SmfComment@@QAE@ABV0@@Z @ 57 NONAME ; SmfComment::SmfComment(class SmfComment const &)
+	?setCaption@SmfActivityObject@@QAEXABVQString@@@Z @ 58 NONAME ; void SmfActivityObject::setCaption(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicProfile@@@Z @ 59 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicProfile &)
+	?setLyrics@SmfLyrics@@QAEXABVQByteArray@@@Z @ 60 NONAME ; void SmfLyrics::setLyrics(class QByteArray const &)
+	?setServiceUrl@SmfProvider@@QAEXAAVQUrl@@@Z @ 61 NONAME ; void SmfProvider::setServiceUrl(class QUrl &)
+	??4SmfAlbum@@QAEAAV0@ABV0@@Z @ 62 NONAME ; class SmfAlbum & SmfAlbum::operator=(class SmfAlbum const &)
+	?setTitle@SmfActivityEntry@@QAE_NABVSmfPost@@@Z @ 63 NONAME ; bool SmfActivityEntry::setTitle(class SmfPost const &)
+	?setUrl@SmfPost@@QAEXAAVQUrl@@@Z @ 64 NONAME ; void SmfPost::setUrl(class QUrl &)
+	?length@SmfUrl@@QBE?AVQString@@XZ @ 65 NONAME ; class QString SmfUrl::length(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfComment@@@Z @ 66 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfComment const &)
+	??0SmfPictureAlbum@@QAE@ABV0@@Z @ 67 NONAME ; SmfPictureAlbum::SmfPictureAlbum(class SmfPictureAlbum const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfLyrics@@@Z @ 68 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfLyrics const &)
+	?setLicense@SmfPlaylist@@QAEXABVQUrl@@@Z @ 69 NONAME ; void SmfPlaylist::setLicense(class QUrl const &)
+	?creationDate@SmfPlaylist@@QBE?AVQDateTime@@XZ @ 70 NONAME ; class QDateTime SmfPlaylist::creationDate(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfEvent@@@Z @ 71 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfEvent &)
+	??0SmfGroup@@QAE@ABV0@@Z @ 72 NONAME ; SmfGroup::SmfGroup(class SmfGroup const &)
+	?parse@SmfPluginUtil@@QAE?AVQVariant@@ABVQByteArray@@PA_N@Z @ 73 NONAME ; class QVariant SmfPluginUtil::parse(class QByteArray const &, bool *)
+	?id@SmfGroup@@QBE?AVQString@@XZ @ 74 NONAME ; class QString SmfGroup::id(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfArtists@@@Z @ 75 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfArtists const &)
+	?setUserEvents@SmfMusicProfile@@QAEXABV?$QList@VSmfEvent@@@@@Z @ 76 NONAME ; void SmfMusicProfile::setUserEvents(class QList<class SmfEvent> const &)
+	?setRel@SmfUrl@@QAEXABVQString@@@Z @ 77 NONAME ; void SmfUrl::setRel(class QString const &)
+	?setUrl@SmfArtists@@QAEXABVQUrl@@@Z @ 78 NONAME ; void SmfArtists::setUrl(class QUrl const &)
+	?setMaxRating@SmfMusicRating@@QAEXABH@Z @ 79 NONAME ; void SmfMusicRating::setMaxRating(int const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfPictureAlbum@@@Z @ 80 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPictureAlbum &)
+	?serviceName@SmfProvider@@QBE?AVQString@@XZ @ 81 NONAME ; class QString SmfProvider::serviceName(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfActivityEntry@@@Z @ 82 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfActivityEntry &)
+	?title@SmfTrackInfo@@QBE?AVQString@@XZ @ 83 NONAME ; class QString SmfTrackInfo::title(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfAlbum@@@Z @ 84 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfAlbum const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactTimestamp@QtMobility@@@Z @ 85 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactTimestamp &)
+	?visibility@SmfPictureAlbum@@QBE?AW4SmfPictureVisibility@@XZ @ 86 NONAME ; enum SmfPictureVisibility SmfPictureAlbum::visibility(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVQContactBirthday@QtMobility@@@Z @ 87 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactBirthday const &)
+	?setTime@SmfActivityObject@@QAEXABVQDateTime@@@Z @ 88 NONAME ; void SmfActivityObject::setTime(class QDateTime const &)
+	?rating@SmfTrackInfo@@QBE?AVSmfMusicRating@@XZ @ 89 NONAME ; class SmfMusicRating SmfTrackInfo::rating(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVQContactOnlineAccount@QtMobility@@@Z @ 90 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactOnlineAccount &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactGeoLocation@QtMobility@@@Z @ 91 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGeoLocation &)
+	?type@SmfUrl@@QBE?AVQString@@XZ @ 92 NONAME ; class QString SmfUrl::type(void) const
+	?setId@SmfMusicFingerPrint@@QAEXABVQString@@@Z @ 93 NONAME ; void SmfMusicFingerPrint::setId(class QString const &)
+	?setVenue@SmfEvent@@QAEXABVSmfLocation@@@Z @ 94 NONAME ; void SmfEvent::setVenue(class SmfLocation const &)
+	?rating@SmfMusicRating@@QBEHXZ @ 95 NONAME ; int SmfMusicRating::rating(void) const
+	?id@SmfActivityObject@@QBE?AVQString@@XZ @ 96 NONAME ; class QString SmfActivityObject::id(void) const
+	?setId@SmfPictureAlbum@@QAEXABVQString@@@Z @ 97 NONAME ; void SmfPictureAlbum::setId(class QString const &)
+	??4SmfUrl@@QAEAAV0@ABV0@@Z @ 98 NONAME ; class SmfUrl & SmfUrl::operator=(class SmfUrl const &)
+	??0SmfPost@@QAE@ABV0@@Z @ 99 NONAME ; SmfPost::SmfPost(class SmfPost const &)
+	?setVisibility@SmfPicture@@QAEXABW4SmfPictureVisibility@@@Z @ 100 NONAME ; void SmfPicture::setVisibility(enum SmfPictureVisibility const &)
+	?setTimeStamp@SmfComment@@QAEXABVQDateTime@@@Z @ 101 NONAME ; void SmfComment::setTimeStamp(class QDateTime const &)
+	?setImageUrl@SmfAlbum@@QAEXABVQUrl@@@Z @ 102 NONAME ; void SmfAlbum::setImageUrl(class QUrl const &)
+	?setContent@SmfActivityObject@@QAEXABVQString@@@Z @ 103 NONAME ; void SmfActivityObject::setContent(class QString const &)
+	?id@SmfMusicProfile@@QBE?AVQString@@XZ @ 104 NONAME ; class QString SmfMusicProfile::id(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfLyrics@@@Z @ 105 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfLyrics &)
+	??4SmfPlaylist@@QAEAAV0@ABV0@@Z @ 106 NONAME ; class SmfPlaylist & SmfPlaylist::operator=(class SmfPlaylist const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactThumbnail@QtMobility@@@Z @ 107 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactThumbnail const &)
+	?setOwner@SmfPicture@@QAEXABVQString@@@Z @ 108 NONAME ; void SmfPicture::setOwner(class QString const &)
+	??4SmfPictureAlbum@@QAEAAV0@ABV0@@Z @ 109 NONAME ; class SmfPictureAlbum & SmfPictureAlbum::operator=(class SmfPictureAlbum const &)
+	?tags@SmfTrackInfo@@QBE?AVQStringList@@XZ @ 110 NONAME ; class QStringList SmfTrackInfo::tags(void) const
+	?setType@SmfActivityObject@@QAEXABW4SmfActivityObjectType@@@Z @ 111 NONAME ; void SmfActivityObject::setType(enum SmfActivityObjectType const &)
+	?id@SmfAlbum@@QBE?AVQString@@XZ @ 112 NONAME ; class QString SmfAlbum::id(void) const
+	?maxRating@SmfMusicRating@@QBEHXZ @ 113 NONAME ; int SmfMusicRating::maxRating(void) const
+	??0SmfPlaylist@@QAE@ABV0@@Z @ 114 NONAME ; SmfPlaylist::SmfPlaylist(class SmfPlaylist const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactAddress@QtMobility@@@Z @ 115 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAddress const &)
+	?picture@SmfPicture@@QBE?AVQImage@@XZ @ 116 NONAME ; class QImage SmfPicture::picture(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfActivityEntry@@@Z @ 117 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfActivityEntry const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfPost@@@Z @ 118 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPost const &)
+	??1SmfPluginUtil@@QAE@XZ @ 119 NONAME ; SmfPluginUtil::~SmfPluginUtil(void)
+	?setActivities@SmfActivityEntry@@QAE_NAAV?$QList@VSmfActivityObject@@@@@Z @ 120 NONAME ; bool SmfActivityEntry::setActivities(class QList<class SmfActivityObject> &)
+	?thumbnail@SmfPictureAlbum@@QBE?AVQImage@@XZ @ 121 NONAME ; class QImage SmfPictureAlbum::thumbnail(void) const
+	??4SmfSubtitle@@QAEAAV0@ABV0@@Z @ 122 NONAME ; class SmfSubtitle & SmfSubtitle::operator=(class SmfSubtitle const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfPlaylist@@@Z @ 123 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPlaylist &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfTrackInfo@@@Z @ 124 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfTrackInfo &)
+	?setRating@SmfMusicRating@@QAEXABH@Z @ 125 NONAME ; void SmfMusicRating::setRating(int const &)
+	?comments@SmfPlaylist@@QBE?AV?$QList@VSmfComment@@@@XZ @ 126 NONAME ; class QList<class SmfComment> SmfPlaylist::comments(void) const
+	??0SmfGroup@@QAE@PAV?$QList@VSmfContact@@@@@Z @ 127 NONAME ; SmfGroup::SmfGroup(class QList<class SmfContact> *)
+	?playListTitle@SmfPlaylist@@QBE?AVQString@@XZ @ 128 NONAME ; class QString SmfPlaylist::playListTitle(void) const
+	?convert@SmfContact@@QBEXAAVQContact@QtMobility@@@Z @ 129 NONAME ; void SmfContact::convert(class QtMobility::QContact &) const
+	??4SmfTrackInfo@@QAEAAV0@ABV0@@Z @ 130 NONAME ; class SmfTrackInfo & SmfTrackInfo::operator=(class SmfTrackInfo const &)
+	?street@SmfLocation@@QBE?AVQString@@XZ @ 131 NONAME ; class QString SmfLocation::street(void) const
+	?author@SmfPlaylist@@QBE?AVQString@@XZ @ 132 NONAME ; class QString SmfPlaylist::author(void) const
+	?duration@SmfTrackInfo@@QBE?AVQTime@@XZ @ 133 NONAME ; class QTime SmfTrackInfo::duration(void) const
+	??1SmfPictureAlbum@@QAE@XZ @ 134 NONAME ; SmfPictureAlbum::~SmfPictureAlbum(void)
+	?setServiceIcon@SmfProvider@@QAEXAAVQImage@@@Z @ 135 NONAME ; void SmfProvider::setServiceIcon(class QImage &)
+	??0SmfMusicRating@@QAE@ABV0@@Z @ 136 NONAME ; SmfMusicRating::SmfMusicRating(class SmfMusicRating const &)
+	?setTitle@SmfPicture@@QAEXABVQString@@@Z @ 137 NONAME ; void SmfPicture::setTitle(class QString const &)
+	?imageUrl@SmfAlbum@@QBE?AVQUrl@@XZ @ 138 NONAME ; class QUrl SmfAlbum::imageUrl(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfPicture@@@Z @ 139 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPicture const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicRating@@@Z @ 140 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicRating const &)
+	?url@SmfLocation@@QBE?AVQUrl@@XZ @ 141 NONAME ; class QUrl SmfLocation::url(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVQContactPhoneNumber@QtMobility@@@Z @ 142 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactPhoneNumber const &)
+	?url@SmfPictureAlbum@@QBE?AVQUrl@@XZ @ 143 NONAME ; class QUrl SmfPictureAlbum::url(void) const
+	?duration@SmfEvent@@QBE?AVQTime@@XZ @ 144 NONAME ; class QTime SmfEvent::duration(void) const
+	?setOwner@SmfPost@@QAEXABVSmfContact@@@Z @ 145 NONAME ; void SmfPost::setOwner(class SmfContact const &)
+	?setId@SmfPost@@QAEXVQString@@@Z @ 146 NONAME ; void SmfPost::setId(class QString)
+	??0SmfAlbum@@QAE@ABV0@@Z @ 147 NONAME ; SmfAlbum::SmfAlbum(class SmfAlbum const &)
+	?url@SmfPicture@@QBE?AVQUrl@@XZ @ 148 NONAME ; class QUrl SmfPicture::url(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfPlaylist@@@Z @ 149 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfPlaylist const &)
+	??_ESmfComment@@QAE@I@Z @ 150 NONAME ; SmfComment::~SmfComment(unsigned int)
+	?setText@SmfComment@@QAEXABVQString@@@Z @ 151 NONAME ; void SmfComment::setText(class QString const &)
+	?postedDate@SmfPicture@@QBE?AVQDateTime@@XZ @ 152 NONAME ; class QDateTime SmfPicture::postedDate(void) const
+	?setArtists@SmfAlbum@@QAEXABVSmfArtists@@@Z @ 153 NONAME ; void SmfAlbum::setArtists(class SmfArtists const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactOnlineAccount@QtMobility@@@Z @ 154 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactOnlineAccount const &)
+	??1SmfUrl@@QAE@XZ @ 155 NONAME ; SmfUrl::~SmfUrl(void)
+	??1SmfActivityEntry@@QAE@XZ @ 156 NONAME ; SmfActivityEntry::~SmfActivityEntry(void)
+	?setSubtitleUrl@SmfSubtitle@@QAEXABVQUrl@@@Z @ 157 NONAME ; void SmfSubtitle::setSubtitleUrl(class QUrl const &)
+	?artists@SmfTrackInfo@@QBE?AVSmfArtists@@XZ @ 158 NONAME ; class SmfArtists SmfTrackInfo::artists(void) const
+	??0SmfMusicProfile@@QAE@XZ @ 159 NONAME ; SmfMusicProfile::SmfMusicProfile(void)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactThumbnail@QtMobility@@@Z @ 160 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactThumbnail &)
+	?title@SmfActivityEntry@@QBE?AVSmfPost@@XZ @ 161 NONAME ; class SmfPost SmfActivityEntry::title(void) const
+	??0SmfAlbum@@QAE@XZ @ 162 NONAME ; SmfAlbum::SmfAlbum(void)
+	?ticketUrl@SmfEvent@@QBE?AVQUrl@@XZ @ 163 NONAME ; class QUrl SmfEvent::ticketUrl(void) const
+	?setId@SmfGroup@@QAEXAAVQString@@@Z @ 164 NONAME ; void SmfGroup::setId(class QString &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactName@QtMobility@@@Z @ 165 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactName &)
+	?text@SmfComment@@QBE?AVQString@@XZ @ 166 NONAME ; class QString SmfComment::text(void) const
+	?setTargetObj@SmfActivityEntry@@QAE_NABVSmfActivityObject@@@Z @ 167 NONAME ; bool SmfActivityEntry::setTargetObj(class SmfActivityObject const &)
+	?setName@SmfGroup@@QAEXAAVQString@@@Z @ 168 NONAME ; void SmfGroup::setName(class QString &)
+	?favorites@SmfMusicProfile@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 169 NONAME ; class QList<class SmfTrackInfo> SmfMusicProfile::favorites(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfProvider@@@Z @ 170 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfProvider &)
+	??_ESmfEvent@@QAE@I@Z @ 171 NONAME ; SmfEvent::~SmfEvent(unsigned int)
+	?type@SmfAlbum@@QBE?AW4SmfAlbumMediaType@@XZ @ 172 NONAME ; enum SmfAlbumMediaType SmfAlbum::type(void) const
+	?setValue@SmfContact@@QAEXABVQString@@AAVQVariant@@@Z @ 173 NONAME ; void SmfContact::setValue(class QString const &, class QVariant &)
+	?info@SmfPlaylist@@QBE?AVQUrl@@XZ @ 174 NONAME ; class QUrl SmfPlaylist::info(void) const
+	?author@SmfActivityEntry@@QBE?AVSmfContact@@XZ @ 175 NONAME ; class SmfContact SmfActivityEntry::author(void) const
+	?setLink@SmfActivityObject@@QAEXABVQString@@@Z @ 176 NONAME ; void SmfActivityObject::setLink(class QString const &)
+	?subtitle@SmfSubtitle@@QBE?AVQByteArray@@XZ @ 177 NONAME ; class QByteArray SmfSubtitle::subtitle(void) const
+	?setId@SmfTrackInfo@@QAEXABVQString@@@Z @ 178 NONAME ; void SmfTrackInfo::setId(class QString const &)
+	?id@SmfPost@@QBE?AVQString@@XZ @ 179 NONAME ; class QString SmfPost::id(void) const
+	?setGenre@SmfTrackInfo@@QAEXABVQString@@@Z @ 180 NONAME ; void SmfTrackInfo::setGenre(class QString const &)
+	?serviceUrl@SmfProvider@@QBE?AVQUrl@@XZ @ 181 NONAME ; class QUrl SmfProvider::serviceUrl(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfActivityObject@@@Z @ 182 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfActivityObject &)
+	?releaseYear@SmfLyrics@@QBE?AVQDateTime@@XZ @ 183 NONAME ; class QDateTime SmfLyrics::releaseYear(void) const
+	?frameRate@SmfSubtitle@@QBENXZ @ 184 NONAME ; double SmfSubtitle::frameRate(void) const
+	??1SmfEvent@@QAE@XZ @ 185 NONAME ; SmfEvent::~SmfEvent(void)
+	?setPostedDate@SmfPicture@@QAEXABVQDateTime@@@Z @ 186 NONAME ; void SmfPicture::setPostedDate(class QDateTime const &)
+	?setTitle@SmfPictureAlbum@@QAEXABVQString@@@Z @ 187 NONAME ; void SmfPictureAlbum::setTitle(class QString const &)
+	?comments@SmfPicture@@QBE?AV?$QList@VSmfComment@@@@XZ @ 188 NONAME ; class QList<class SmfComment> SmfPicture::comments(void) const
+	??1SmfMusicFingerPrint@@QAE@XZ @ 189 NONAME ; SmfMusicFingerPrint::~SmfMusicFingerPrint(void)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfProvider@@@Z @ 190 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfProvider const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactAvatar@QtMobility@@@Z @ 191 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAvatar const &)
+	?trackList@SmfPlaylist@@QBE?AV?$QList@VSmfTrackInfo@@@@XZ @ 192 NONAME ; class QList<class SmfTrackInfo> SmfPlaylist::trackList(void) const
+	??1SmfArtists@@QAE@XZ @ 193 NONAME ; SmfArtists::~SmfArtists(void)
+	??_ESmfActivityObject@@QAE@I@Z @ 194 NONAME ; SmfActivityObject::~SmfActivityObject(unsigned int)
+	??4SmfMusicRating@@QAEAAV0@ABV0@@Z @ 195 NONAME ; class SmfMusicRating & SmfMusicRating::operator=(class SmfMusicRating const &)
+	?getNonce@SmfPluginUtil@@QAEXAAVQString@@_J@Z @ 196 NONAME ; void SmfPluginUtil::getNonce(class QString &, long long)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactAvatar@QtMobility@@@Z @ 197 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAvatar &)
+	??0SmfActivityObject@@QAE@XZ @ 198 NONAME ; SmfActivityObject::SmfActivityObject(void)
+	?musicFingerPrint@SmfMusicFingerPrint@@QBE?AVQByteArray@@XZ @ 199 NONAME ; class QByteArray SmfMusicFingerPrint::musicFingerPrint(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfSubtitle@@@Z @ 200 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfSubtitle &)
+	?setLocation@SmfAlbum@@QAEXABVSmfLocation@@@Z @ 201 NONAME ; void SmfAlbum::setLocation(class SmfLocation const &)
+	??4SmfComment@@QAEAAV0@ABV0@@Z @ 202 NONAME ; class SmfComment & SmfComment::operator=(class SmfComment const &)
+	?subTypes@SmfContact@@QBE?AVQStringList@@XZ @ 203 NONAME ; class QStringList SmfContact::subTypes(void) const
+	??0SmfActivityObject@@QAE@ABV0@@Z @ 204 NONAME ; SmfActivityObject::SmfActivityObject(class SmfActivityObject const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactNote@QtMobility@@@Z @ 205 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactNote &)
+	?setImage@SmfArtists@@QAEXABVQImage@@@Z @ 206 NONAME ; void SmfArtists::setImage(class QImage const &)
+	?setTitle@SmfTrackInfo@@QAEXABVQString@@@Z @ 207 NONAME ; void SmfTrackInfo::setTitle(class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactEmailAddress@QtMobility@@@Z @ 208 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactEmailAddress const &)
+	?secondaryId@SmfAlbum@@QBE?AVQString@@XZ @ 209 NONAME ; class QString SmfAlbum::secondaryId(void) const
+	??4SmfContact@@QAEAAV0@ABV0@@Z @ 210 NONAME ; class SmfContact & SmfContact::operator=(class SmfContact const &)
+	??1SmfLocation@@QAE@XZ @ 211 NONAME ; SmfLocation::~SmfLocation(void)
+	?version@SmfPlaylist@@QBE?AVQString@@XZ @ 212 NONAME ; class QString SmfPlaylist::version(void) const
+	??1SmfLyrics@@QAE@XZ @ 213 NONAME ; SmfLyrics::~SmfLyrics(void)
+	??0SmfEvent@@QAE@ABV0@@Z @ 214 NONAME ; SmfEvent::SmfEvent(class SmfEvent const &)
+	?setMusicFingerPrint@SmfMusicFingerPrint@@QAEXABVQByteArray@@@Z @ 215 NONAME ; void SmfMusicFingerPrint::setMusicFingerPrint(class QByteArray const &)
+	?hreflang@SmfUrl@@QBE?AVQString@@XZ @ 216 NONAME ; class QString SmfUrl::hreflang(void) const
+	?setDescription@SmfProvider@@QAEXAAVQString@@@Z @ 217 NONAME ; void SmfProvider::setDescription(class QString &)
+	??0SmfActivityEntry@@QAE@ABV0@@Z @ 218 NONAME ; SmfActivityEntry::SmfActivityEntry(class SmfActivityEntry const &)
+	?activities@SmfActivityEntry@@QBE?AV?$QList@VSmfActivityObject@@@@XZ @ 219 NONAME ; class QList<class SmfActivityObject> SmfActivityEntry::activities(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVQContactUrl@QtMobility@@@Z @ 220 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactUrl &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactOrganization@QtMobility@@@Z @ 221 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactOrganization const &)
+	?comments@SmfTrackInfo@@QBE?AV?$QList@VSmfComment@@@@XZ @ 222 NONAME ; class QList<class SmfComment> SmfTrackInfo::comments(void) const
+	?setComment@SmfTrackInfo@@QAEXABV?$QList@VSmfComment@@@@@Z @ 223 NONAME ; void SmfTrackInfo::setComment(class QList<class SmfComment> const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfSubtitle@@@Z @ 224 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfSubtitle const &)
+	?attribution@SmfPlaylist@@QBE?AV?$QList@VQUrl@@@@XZ @ 225 NONAME ; class QList<class QUrl> SmfPlaylist::attribution(void) const
+	?addKeywords@SmfPictureAlbum@@QAEXABVQStringList@@@Z @ 226 NONAME ; void SmfPictureAlbum::addKeywords(class QStringList const &)
+	?setTags@SmfTrackInfo@@QAEXABVQStringList@@@Z @ 227 NONAME ; void SmfTrackInfo::setTags(class QStringList const &)
+	?setExtension@SmfPlaylist@@QAEXABV?$QMap@VQString@@VQVariant@@@@@Z @ 228 NONAME ; void SmfPlaylist::setExtension(class QMap<class QString, class QVariant> const &)
+	?setArtists@SmfEvent@@QAEXABVSmfArtists@@@Z @ 229 NONAME ; void SmfEvent::setArtists(class SmfArtists const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfGroup@@@Z @ 230 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfGroup const &)
+	?id@SmfPicture@@QBE?AVQString@@XZ @ 231 NONAME ; class QString SmfPicture::id(void) const
+	?description@SmfPost@@QBE?AVQString@@XZ @ 232 NONAME ; class QString SmfPost::description(void) const
+	?value@SmfContact@@QBE?AVQVariant@@ABVQString@@@Z @ 233 NONAME ; class QVariant SmfContact::value(class QString const &) const
+	??0SmfActivityEntry@@QAE@XZ @ 234 NONAME ; SmfActivityEntry::SmfActivityEntry(void)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactPhoneNumber@QtMobility@@@Z @ 235 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactPhoneNumber &)
+	?targetObj@SmfActivityEntry@@QBE?AVSmfActivityObject@@XZ @ 236 NONAME ; class SmfActivityObject SmfActivityEntry::targetObj(void) const
+	?id@SmfPlaylist@@QBE?AVQString@@XZ @ 237 NONAME ; class QString SmfPlaylist::id(void) const
+	?title@SmfPicture@@QBE?AVQString@@XZ @ 238 NONAME ; class QString SmfPicture::title(void) const
+	?title@SmfEvent@@QBE?AVQString@@XZ @ 239 NONAME ; class QString SmfEvent::title(void) const
+	?setMinRating@SmfMusicRating@@QAEXABH@Z @ 240 NONAME ; void SmfMusicRating::setMinRating(int const &)
+	??0SmfPicture@@QAE@ABV0@@Z @ 241 NONAME ; SmfPicture::SmfPicture(class SmfPicture const &)
+	?setId@SmfUrl@@QAEXABVQString@@@Z @ 242 NONAME ; void SmfUrl::setId(class QString const &)
+	?setId@SmfActivityEntry@@QAE_NABVQString@@@Z @ 243 NONAME ; bool SmfActivityEntry::setId(class QString const &)
+	?setDescription@SmfPost@@QAEXABVQString@@@Z @ 244 NONAME ; void SmfPost::setDescription(class QString const &)
+	?href@SmfUrl@@QBE?AVQUrl@@XZ @ 245 NONAME ; class QUrl SmfUrl::href(void) const
+	?image@SmfPost@@QBE?AVQImage@@XZ @ 246 NONAME ; class QImage SmfPost::image(void) const
+	?setType@SmfAlbum@@QAEXW4SmfAlbumMediaType@@@Z @ 247 NONAME ; void SmfAlbum::setType(enum SmfAlbumMediaType)
+	?id@SmfLyrics@@QBE?AVQString@@XZ @ 248 NONAME ; class QString SmfLyrics::id(void) const
+	?setUrl@SmfPicture@@QAEXABVQUrl@@@Z @ 249 NONAME ; void SmfPicture::setUrl(class QUrl const &)
+	??4SmfEvent@@QAEAAV0@ABV0@@Z @ 250 NONAME ; class SmfEvent & SmfEvent::operator=(class SmfEvent const &)
+	??1SmfContact@@QAE@XZ @ 251 NONAME ; SmfContact::~SmfContact(void)
+	??4SmfPost@@QAEAAV0@ABV0@@Z @ 252 NONAME ; class SmfPost & SmfPost::operator=(class SmfPost const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactPresence@QtMobility@@@Z @ 253 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactPresence &)
+	?genre@SmfTrackInfo@@QBE?AVQString@@XZ @ 254 NONAME ; class QString SmfTrackInfo::genre(void) const
+	??0SmfLocation@@QAE@XZ @ 255 NONAME ; SmfLocation::SmfLocation(void)
+	?license@SmfPlaylist@@QBE?AVQUrl@@XZ @ 256 NONAME ; class QUrl SmfPlaylist::license(void) const
+	?setId@SmfEvent@@QAEXABVQString@@@Z @ 257 NONAME ; void SmfEvent::setId(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactGuid@QtMobility@@@Z @ 258 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGuid &)
+	?serviceIcon@SmfProvider@@QBE?AVQImage@@XZ @ 259 NONAME ; class QImage SmfProvider::serviceIcon(void) const
+	?setTags@SmfArtists@@QAEXABVQStringList@@@Z @ 260 NONAME ; void SmfArtists::setTags(class QStringList const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactEmailAddress@QtMobility@@@Z @ 261 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactEmailAddress &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfContact@@@Z @ 262 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfContact &)
+	?setStreet@SmfLocation@@QAEXABVQString@@@Z @ 263 NONAME ; void SmfLocation::setStreet(class QString const &)
+	??1SmfPost@@QAE@XZ @ 264 NONAME ; SmfPost::~SmfPost(void)
+	?members@SmfGroup@@QBE?AV?$QList@VSmfContact@@@@XZ @ 265 NONAME ; class QList<class SmfContact> SmfGroup::members(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfMusicRating@@@Z @ 266 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfMusicRating &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactId@QtMobility@@@Z @ 267 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactId &)
+	?setYear@SmfTrackInfo@@QAEXABVQDateTime@@@Z @ 268 NONAME ; void SmfTrackInfo::setYear(class QDateTime const &)
+	?geoPositionInfo@SmfLocation@@QBE?AVQGeoPositionInfo@QtMobility@@XZ @ 269 NONAME ; class QtMobility::QGeoPositionInfo SmfLocation::geoPositionInfo(void) const
+	??0SmfMusicFingerPrint@@QAE@ABV0@@Z @ 270 NONAME ; SmfMusicFingerPrint::SmfMusicFingerPrint(class SmfMusicFingerPrint const &)
+	?setPlayListTitle@SmfPlaylist@@QAEXABVQString@@@Z @ 271 NONAME ; void SmfPlaylist::setPlayListTitle(class QString const &)
+	?time@SmfActivityObject@@QBE?AVQDateTime@@XZ @ 272 NONAME ; class QDateTime SmfActivityObject::time(void) const
+	??1SmfComment@@QAE@XZ @ 273 NONAME ; SmfComment::~SmfComment(void)
+	?description@SmfPicture@@QBE?AVQString@@XZ @ 274 NONAME ; class QString SmfPicture::description(void) const
+	?visibility@SmfPicture@@QBE?AW4SmfPictureVisibility@@XZ @ 275 NONAME ; enum SmfPictureVisibility SmfPicture::visibility(void) const
+	?setName@SmfLocation@@QAEXABVQString@@@Z @ 276 NONAME ; void SmfLocation::setName(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactOrganization@QtMobility@@@Z @ 277 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactOrganization &)
+	?eventDateTime@SmfEvent@@QBE?AVQDateTime@@XZ @ 278 NONAME ; class QDateTime SmfEvent::eventDateTime(void) const
+	?setEventDateTime@SmfEvent@@QAEXABVQDateTime@@@Z @ 279 NONAME ; void SmfEvent::setEventDateTime(class QDateTime const &)
+	?setAuthor@SmfPlaylist@@QAEXABVQString@@@Z @ 280 NONAME ; void SmfPlaylist::setAuthor(class QString const &)
+	?location@SmfPlaylist@@QBE?AVQUrl@@XZ @ 281 NONAME ; class QUrl SmfPlaylist::location(void) const
+	?lyrics@SmfLyrics@@QBE?AVQByteArray@@XZ @ 282 NONAME ; class QByteArray SmfLyrics::lyrics(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfAlbum@@@Z @ 283 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfAlbum &)
+	?thumbnail@SmfActivityObject@@QBE?AVQImage@@XZ @ 284 NONAME ; class QImage SmfActivityObject::thumbnail(void) const
+	??0SmfUrl@@QAE@ABV0@@Z @ 285 NONAME ; SmfUrl::SmfUrl(class SmfUrl const &)
+	?comments@SmfPictureAlbum@@QBE?AV?$QList@VSmfComment@@@@XZ @ 286 NONAME ; class QList<class SmfComment> SmfPictureAlbum::comments(void) const
+	??1SmfMusicProfile@@QAE@XZ @ 287 NONAME ; SmfMusicProfile::~SmfMusicProfile(void)
+	?setFavorites@SmfMusicProfile@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 288 NONAME ; void SmfMusicProfile::setFavorites(class QList<class SmfTrackInfo> const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicFingerPrint@@@Z @ 289 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicFingerPrint const &)
+	?title@SmfPost@@QBE?AVQString@@XZ @ 290 NONAME ; class QString SmfPost::title(void) const
+	??1SmfSubtitle@@QAE@XZ @ 291 NONAME ; SmfSubtitle::~SmfSubtitle(void)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactType@QtMobility@@@Z @ 292 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactType &)
+	?setLength@SmfUrl@@QAEXABVQString@@@Z @ 293 NONAME ; void SmfUrl::setLength(class QString const &)
+	?setZipCode@SmfLocation@@QAEXABVQString@@@Z @ 294 NONAME ; void SmfLocation::setZipCode(class QString const &)
+	?names@SmfArtists@@QBE?AVQStringList@@XZ @ 295 NONAME ; class QStringList SmfArtists::names(void) const
+	?details@SmfActivityEntry@@QBE?AVSmfPost@@XZ @ 296 NONAME ; class SmfPost SmfActivityEntry::details(void) const
+	?setFrameRate@SmfSubtitle@@QAEXABN@Z @ 297 NONAME ; void SmfSubtitle::setFrameRate(double const &)
+	?setType@SmfUrl@@QAEXABVQString@@@Z @ 298 NONAME ; void SmfUrl::setType(class QString const &)
+	?setServiceName@SmfProvider@@QAEXAAVQString@@@Z @ 299 NONAME ; void SmfProvider::setServiceName(class QString &)
+	?errorLine@SmfPluginUtil@@QBEHXZ @ 300 NONAME ; int SmfPluginUtil::errorLine(void) const
+	?id@SmfEvent@@QBE?AVQString@@XZ @ 301 NONAME ; class QString SmfEvent::id(void) const
+	?description@SmfPictureAlbum@@QBE?AVQString@@XZ @ 302 NONAME ; class QString SmfPictureAlbum::description(void) const
+	?setSubtitle@SmfSubtitle@@QAEXABVQByteArray@@@Z @ 303 NONAME ; void SmfSubtitle::setSubtitle(class QByteArray const &)
+	?setVisibility@SmfPictureAlbum@@QAEXABW4SmfPictureVisibility@@@Z @ 304 NONAME ; void SmfPictureAlbum::setVisibility(enum SmfPictureVisibility const &)
+	?id@SmfActivityEntry@@QBE?AVQString@@XZ @ 305 NONAME ; class QString SmfActivityEntry::id(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVQContactPresence@QtMobility@@@Z @ 306 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactPresence const &)
+	?setReleaseYear@SmfSubtitle@@QAEXABVQDateTime@@@Z @ 307 NONAME ; void SmfSubtitle::setReleaseYear(class QDateTime const &)
+	??4SmfGroup@@QAEAAV0@ABV0@@Z @ 308 NONAME ; class SmfGroup & SmfGroup::operator=(class SmfGroup const &)
+	??4SmfArtists@@QAEAAV0@ABV0@@Z @ 309 NONAME ; class SmfArtists & SmfArtists::operator=(class SmfArtists const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfEvent@@@Z @ 310 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfEvent const &)
+	?city@SmfLocation@@QBE?AVQString@@XZ @ 311 NONAME ; class QString SmfLocation::city(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfUrl@@@Z @ 312 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfUrl &)
+	??1SmfProvider@@QAE@XZ @ 313 NONAME ; SmfProvider::~SmfProvider(void)
+	??_ESmfContact@@QAE@I@Z @ 314 NONAME ; SmfContact::~SmfContact(unsigned int)
+	?downloadFlag@SmfPicture@@QAE_NXZ @ 315 NONAME ; bool SmfPicture::downloadFlag(void)
+	?venue@SmfEvent@@QBE?AVSmfLocation@@XZ @ 316 NONAME ; class SmfLocation SmfEvent::venue(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVQContactAnniversary@QtMobility@@@Z @ 317 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactAnniversary const &)
+	?actionName@SmfActivityEntry@@QBE?AW4SmfActivityVerb@@XZ @ 318 NONAME ; enum SmfActivityVerb SmfActivityEntry::actionName(void) const
+	?setLanguage@SmfSubtitle@@QAEXABVQString@@@Z @ 319 NONAME ; void SmfSubtitle::setLanguage(class QString const &)
+	?releaseYear@SmfSubtitle@@QBE?AVQDateTime@@XZ @ 320 NONAME ; class QDateTime SmfSubtitle::releaseYear(void) const
+	?name@SmfGroup@@QBE?AVQString@@XZ @ 321 NONAME ; class QString SmfGroup::name(void) const
+	??4SmfMusicFingerPrint@@QAEAAV0@ABV0@@Z @ 322 NONAME ; class SmfMusicFingerPrint & SmfMusicFingerPrint::operator=(class SmfMusicFingerPrint const &)
+	??0SmfLyrics@@QAE@ABV0@@Z @ 323 NONAME ; SmfLyrics::SmfLyrics(class SmfLyrics const &)
+	?setInfo@SmfPlaylist@@QAEXABVQUrl@@@Z @ 324 NONAME ; void SmfPlaylist::setInfo(class QUrl const &)
+	?setId@SmfLyrics@@QAEXABVQString@@@Z @ 325 NONAME ; void SmfLyrics::setId(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfComment@@@Z @ 326 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfComment &)
+	?setPostedDate@SmfPictureAlbum@@QAEXABVQDateTime@@@Z @ 327 NONAME ; void SmfPictureAlbum::setPostedDate(class QDateTime const &)
+	??1SmfPicture@@QAE@XZ @ 328 NONAME ; SmfPicture::~SmfPicture(void)
+	??0SmfArtists@@QAE@XZ @ 329 NONAME ; SmfArtists::SmfArtists(void)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactName@QtMobility@@@Z @ 330 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactName const &)
+	?setAlbum@SmfTrackInfo@@QAEXABVSmfAlbum@@@Z @ 331 NONAME ; void SmfTrackInfo::setAlbum(class SmfAlbum const &)
+	?setId@SmfPicture@@QAEXABVQString@@@Z @ 332 NONAME ; void SmfPicture::setId(class QString const &)
+	?pictureCount@SmfPictureAlbum@@QBEHXZ @ 333 NONAME ; int SmfPictureAlbum::pictureCount(void) const
+	?artists@SmfEvent@@QBE?AVSmfArtists@@XZ @ 334 NONAME ; class SmfArtists SmfEvent::artists(void) const
+	?objData@SmfActivityObject@@QBE?AVQVariant@@XZ @ 335 NONAME ; class QVariant SmfActivityObject::objData(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfArtists@@@Z @ 336 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfArtists &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactUrl@QtMobility@@@Z @ 337 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactUrl const &)
+	?addComment@SmfPicture@@QAEXABVSmfComment@@@Z @ 338 NONAME ; void SmfPicture::addComment(class SmfComment const &)
+	?setSupportedInterfaces@SmfProvider@@QAEXAAVQStringList@@@Z @ 339 NONAME ; void SmfProvider::setSupportedInterfaces(class QStringList &)
+	?setHhreflang@SmfUrl@@QAEXABVQString@@@Z @ 340 NONAME ; void SmfUrl::setHhreflang(class QString const &)
+	??0SmfUrl@@QAE@XZ @ 341 NONAME ; SmfUrl::SmfUrl(void)
+	??0SmfPicture@@QAE@ABVQImage@@@Z @ 342 NONAME ; SmfPicture::SmfPicture(class QImage const &)
+	??0SmfMusicFingerPrint@@QAE@XZ @ 343 NONAME ; SmfMusicFingerPrint::SmfMusicFingerPrint(void)
+	?setId@SmfPlaylist@@QAEXABVQString@@@Z @ 344 NONAME ; void SmfPlaylist::setId(class QString const &)
+	?setSupportedLanguages@SmfProvider@@QAEXAAVQStringList@@@Z @ 345 NONAME ; void SmfProvider::setSupportedLanguages(class QStringList &)
+	?setId@SmfSubtitle@@QAEXABVQString@@@Z @ 346 NONAME ; void SmfSubtitle::setId(class QString const &)
+	??0SmfSubtitle@@QAE@XZ @ 347 NONAME ; SmfSubtitle::SmfSubtitle(void)
+	?addTags@SmfPicture@@QAEXABVQStringList@@@Z @ 348 NONAME ; void SmfPicture::addTags(class QStringList const &)
+	??0SmfTrackInfo@@QAE@XZ @ 349 NONAME ; SmfTrackInfo::SmfTrackInfo(void)
+	??0SmfPost@@QAE@VSmfContact@@VQString@@1VQImage@@VQUrl@@@Z @ 350 NONAME ; SmfPost::SmfPost(class SmfContact, class QString, class QString, class QImage, class QUrl)
+	?setHref@SmfUrl@@QAEXABVQUrl@@@Z @ 351 NONAME ; void SmfUrl::setHref(class QUrl const &)
+	?url@SmfArtists@@QBE?AVQUrl@@XZ @ 352 NONAME ; class QUrl SmfArtists::url(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVQContactAddress@QtMobility@@@Z @ 353 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAddress &)
+	?setPictureCount@SmfPictureAlbum@@QAEXH@Z @ 354 NONAME ; void SmfPictureAlbum::setPictureCount(int)
+	?setPicture@SmfPicture@@QAEXABVQImage@@@Z @ 355 NONAME ; void SmfPicture::setPicture(class QImage const &)
+	?setNames@SmfArtists@@QAEXABVQStringList@@@Z @ 356 NONAME ; void SmfArtists::setNames(class QStringList const &)
+	?setId@SmfActivityObject@@QAEXABVQString@@@Z @ 357 NONAME ; void SmfActivityObject::setId(class QString const &)
+	??1SmfPlaylist@@QAE@XZ @ 358 NONAME ; SmfPlaylist::~SmfPlaylist(void)
+	?setApplicationUrl@SmfProvider@@QAEXAAVQUrl@@@Z @ 359 NONAME ; void SmfProvider::setApplicationUrl(class QUrl &)
+	?id@SmfTrackInfo@@QBE?AVQString@@XZ @ 360 NONAME ; class QString SmfTrackInfo::id(void) const
+	?minRating@SmfMusicRating@@QBEHXZ @ 361 NONAME ; int SmfMusicRating::minRating(void) const
+	?name@SmfLocation@@QBE?AVQString@@XZ @ 362 NONAME ; class QString SmfLocation::name(void) const
+	??0SmfPluginUtil@@QAE@XZ @ 363 NONAME ; SmfPluginUtil::SmfPluginUtil(void)
+	?title@SmfPictureAlbum@@QBE?AVQString@@XZ @ 364 NONAME ; class QString SmfPictureAlbum::title(void) const
+	?setAuthor@SmfActivityEntry@@QAE_NABVSmfContact@@@Z @ 365 NONAME ; bool SmfActivityEntry::setAuthor(class SmfContact const &)
+	?addComment@SmfPictureAlbum@@QAEXABVSmfComment@@@Z @ 366 NONAME ; void SmfPictureAlbum::addComment(class SmfComment const &)
+	??0SmfProvider@@QAE@XZ @ 367 NONAME ; SmfProvider::SmfProvider(void)
+	?timeStamp@SmfComment@@QBE?AVQDateTime@@XZ @ 368 NONAME ; class QDateTime SmfComment::timeStamp(void) const
+	??0SmfArtists@@QAE@ABV0@@Z @ 369 NONAME ; SmfArtists::SmfArtists(class SmfArtists const &)
+	?name@SmfAlbum@@QBE?AVQString@@XZ @ 370 NONAME ; class QString SmfAlbum::name(void) const
+	?setId@SmfComment@@QAEXABVQString@@@Z @ 371 NONAME ; void SmfComment::setId(class QString const &)
+	?image@SmfPlaylist@@QBE?AVQUrl@@XZ @ 372 NONAME ; class QUrl SmfPlaylist::image(void) const
+	?getAuthKeys@SmfPluginUtil@@QAEXAAV?$QMap@VQByteArray@@V1@@@VQString@@ABVQDateTime@@1@Z @ 373 NONAME ; void SmfPluginUtil::getAuthKeys(class QMap<class QByteArray, class QByteArray> &, class QString, class QDateTime const &, class QString)
+	?setCountry@SmfLocation@@QAEXABVQString@@@Z @ 374 NONAME ; void SmfLocation::setCountry(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfLocation@@@Z @ 375 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfLocation &)
+	??0SmfContact@@QAE@ABV0@@Z @ 376 NONAME ; SmfContact::SmfContact(class SmfContact const &)
+	?artists@SmfAlbum@@QBE?AVSmfArtists@@XZ @ 377 NONAME ; class SmfArtists SmfAlbum::artists(void) const
+	??4SmfMusicProfile@@QAEAAV0@ABV0@@Z @ 378 NONAME ; class SmfMusicProfile & SmfMusicProfile::operator=(class SmfMusicProfile const &)
+	?setId@SmfMusicProfile@@QAEXABVQString@@@Z @ 379 NONAME ; void SmfMusicProfile::setId(class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactId@QtMobility@@@Z @ 380 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactId const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactNote@QtMobility@@@Z @ 381 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactNote const &)
+	?setUrl@SmfPictureAlbum@@QAEXABVQUrl@@@Z @ 382 NONAME ; void SmfPictureAlbum::setUrl(class QUrl const &)
+	??1SmfActivityObject@@QAE@XZ @ 383 NONAME ; SmfActivityObject::~SmfActivityObject(void)
+	?rel@SmfUrl@@QBE?AVQString@@XZ @ 384 NONAME ; class QString SmfUrl::rel(void) const
+	?errorString@SmfPluginUtil@@QBE?AVQString@@XZ @ 385 NONAME ; class QString SmfPluginUtil::errorString(void) const
+	?setTitle@SmfUrl@@QAEXABVQString@@@Z @ 386 NONAME ; void SmfUrl::setTitle(class QString const &)
+	?setSecondaryId@SmfAlbum@@QAEXABVQString@@@Z @ 387 NONAME ; void SmfAlbum::setSecondaryId(class QString const &)
+	?keywords@SmfPictureAlbum@@QBE?AVQStringList@@XZ @ 388 NONAME ; class QStringList SmfPictureAlbum::keywords(void) const
+	?supportedLanguages@SmfProvider@@QBE?AVQStringList@@XZ @ 389 NONAME ; class QStringList SmfProvider::supportedLanguages(void) const
+	?description@SmfProvider@@QBE?AVQString@@XZ @ 390 NONAME ; class QString SmfProvider::description(void) const
+	?setRating@SmfTrackInfo@@QAEXABVSmfMusicRating@@@Z @ 391 NONAME ; void SmfTrackInfo::setRating(class SmfMusicRating const &)
+	??0SmfPlaylist@@QAE@XZ @ 392 NONAME ; SmfPlaylist::SmfPlaylist(void)
+	?owner@SmfPicture@@QBE?AVQString@@XZ @ 393 NONAME ; class QString SmfPicture::owner(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfActivityObject@@@Z @ 394 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfActivityObject const &)
+	?type@SmfActivityObject@@QBE?AW4SmfActivityObjectType@@XZ @ 395 NONAME ; enum SmfActivityObjectType SmfActivityObject::type(void) const
+	??6@YAAAVQDataStream@@AAV0@ABVSmfUrl@@@Z @ 396 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfUrl const &)
+	?id@SmfLocation@@QBE?AVQString@@XZ @ 397 NONAME ; class QString SmfLocation::id(void) const
+	?setThumbnail@SmfPictureAlbum@@QAEXABVQImage@@@Z @ 398 NONAME ; void SmfPictureAlbum::setThumbnail(class QImage const &)
+	?setActionName@SmfActivityEntry@@QAEXW4SmfActivityVerb@@@Z @ 399 NONAME ; void SmfActivityEntry::setActionName(enum SmfActivityVerb)
+	?setReleaseYear@SmfLyrics@@QAEXABVQDateTime@@@Z @ 400 NONAME ; void SmfLyrics::setReleaseYear(class QDateTime const &)
+	?setItemsCount@SmfAlbum@@QAEXH@Z @ 401 NONAME ; void SmfAlbum::setItemsCount(int)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfLocation@@@Z @ 402 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfLocation const &)
+	??5@YAAAVQDataStream@@AAV0@AAVSmfPicture@@@Z @ 403 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPicture &)
+	?setTrackList@SmfPlaylist@@QAEXABV?$QList@VSmfTrackInfo@@@@@Z @ 404 NONAME ; void SmfPlaylist::setTrackList(class QList<class SmfTrackInfo> const &)
+	??0SmfEvent@@QAE@XZ @ 405 NONAME ; SmfEvent::SmfEvent(void)
+	?setTitle@SmfEvent@@QAEXABVQString@@@Z @ 406 NONAME ; void SmfEvent::setTitle(class QString const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactGender@QtMobility@@@Z @ 407 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGender const &)
+	??4SmfActivityObject@@QAEAAV0@ABV0@@Z @ 408 NONAME ; class SmfActivityObject & SmfActivityObject::operator=(class SmfActivityObject const &)
+	?location@SmfAlbum@@QBE?AVSmfLocation@@XZ @ 409 NONAME ; class SmfLocation SmfAlbum::location(void) const
+	?setMembers@SmfGroup@@QAEXPAV?$QList@VSmfContact@@@@@Z @ 410 NONAME ; void SmfGroup::setMembers(class QList<class SmfContact> *)
+	??0SmfMusicRating@@QAE@PAVSmfTrackInfo@@@Z @ 411 NONAME ; SmfMusicRating::SmfMusicRating(class SmfTrackInfo *)
+	??0SmfLyrics@@QAE@XZ @ 412 NONAME ; SmfLyrics::SmfLyrics(void)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactGender@QtMobility@@@Z @ 413 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactGender &)
+	??0SmfComment@@QAE@XZ @ 414 NONAME ; SmfComment::SmfComment(void)
+	??1SmfAlbum@@QAE@XZ @ 415 NONAME ; SmfAlbum::~SmfAlbum(void)
+	?year@SmfTrackInfo@@QBE?AVQDateTime@@XZ @ 416 NONAME ; class QDateTime SmfTrackInfo::year(void) const
+	?country@SmfLocation@@QBE?AVQString@@XZ @ 417 NONAME ; class QString SmfLocation::country(void) const
+	?postedDate@SmfPictureAlbum@@QBE?AVQDateTime@@XZ @ 418 NONAME ; class QDateTime SmfPictureAlbum::postedDate(void) const
+	??0SmfContact@@QAE@PAVQObject@@@Z @ 419 NONAME ; SmfContact::SmfContact(class QObject *)
+	??1SmfTrackInfo@@QAE@XZ @ 420 NONAME ; SmfTrackInfo::~SmfTrackInfo(void)
+	?language@SmfLyrics@@QBE?AVQString@@XZ @ 421 NONAME ; class QString SmfLyrics::language(void) const
+	?setArtists@SmfTrackInfo@@QAEXABVSmfArtists@@@Z @ 422 NONAME ; void SmfTrackInfo::setArtists(class SmfArtists const &)
+	?id@SmfComment@@QBE?AVQString@@XZ @ 423 NONAME ; class QString SmfComment::id(void) const
+	?id@SmfPictureAlbum@@QBE?AVQString@@XZ @ 424 NONAME ; class QString SmfPictureAlbum::id(void) const
+	?setDuration@SmfEvent@@QAEXABVQTime@@@Z @ 425 NONAME ; void SmfEvent::setDuration(class QTime const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactGuid@QtMobility@@@Z @ 426 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGuid const &)
+	?setUrl@SmfLocation@@QAEXABVQUrl@@@Z @ 427 NONAME ; void SmfLocation::setUrl(class QUrl const &)
+	?setComments@SmfPlaylist@@QAEXABV?$QList@VSmfComment@@@@@Z @ 428 NONAME ; void SmfPlaylist::setComments(class QList<class SmfComment> const &)
+	?id@SmfSubtitle@@QBE?AVQString@@XZ @ 429 NONAME ; class QString SmfSubtitle::id(void) const
+	?setImage@SmfPlaylist@@QAEXABVQUrl@@@Z @ 430 NONAME ; void SmfPlaylist::setImage(class QUrl const &)
+	?setDescription@SmfPicture@@QAEXABVQString@@@Z @ 431 NONAME ; void SmfPicture::setDescription(class QString const &)
+	??4SmfLocation@@QAEAAV0@ABV0@@Z @ 432 NONAME ; class SmfLocation & SmfLocation::operator=(class SmfLocation const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactAnniversary@QtMobility@@@Z @ 433 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactAnniversary &)
+	??4SmfLyrics@@QAEAAV0@ABV0@@Z @ 434 NONAME ; class SmfLyrics & SmfLyrics::operator=(class SmfLyrics const &)
+	??6@YAAAVQDataStream@@AAV0@ABVQContactGeoLocation@QtMobility@@@Z @ 435 NONAME ; class QDataStream & operator<<(class QDataStream &, class QtMobility::QContactGeoLocation const &)
+	??6@YAAAVQDataStream@@AAV0@ABVSmfMusicProfile@@@Z @ 436 NONAME ; class QDataStream & operator<<(class QDataStream &, class SmfMusicProfile const &)
+	?setMetadata@SmfPlaylist@@QAEXABV?$QMap@VQString@@VQVariant@@@@@Z @ 437 NONAME ; void SmfPlaylist::setMetadata(class QMap<class QString, class QVariant> const &)
+	?album@SmfTrackInfo@@QBE?AVSmfAlbum@@XZ @ 438 NONAME ; class SmfAlbum SmfTrackInfo::album(void) const
+	?url@SmfPost@@QBE?AVQUrl@@XZ @ 439 NONAME ; class QUrl SmfPost::url(void) const
+	?content@SmfActivityObject@@QBE?AVQString@@XZ @ 440 NONAME ; class QString SmfActivityObject::content(void) const
+	?setThumbnail@SmfActivityObject@@QAEXABVQImage@@@Z @ 441 NONAME ; void SmfActivityObject::setThumbnail(class QImage const &)
+	??1SmfGroup@@QAE@XZ @ 442 NONAME ; SmfGroup::~SmfGroup(void)
+	?zipCode@SmfLocation@@QBE?AVQString@@XZ @ 443 NONAME ; class QString SmfLocation::zipCode(void) const
+	??5@YAAAVQDataStream@@AAV0@AAVSmfPost@@@Z @ 444 NONAME ; class QDataStream & operator>>(class QDataStream &, class SmfPost &)
+	?tags@SmfArtists@@QBE?AVQStringList@@XZ @ 445 NONAME ; class QStringList SmfArtists::tags(void) const
+	?setPostedDateTime@SmfPost@@QAEXAAVQDateTime@@@Z @ 446 NONAME ; void SmfPost::setPostedDateTime(class QDateTime &)
+	?setAttribution@SmfPlaylist@@QAEXABV?$QList@VQUrl@@@@@Z @ 447 NONAME ; void SmfPlaylist::setAttribution(class QList<class QUrl> const &)
+	?setCity@SmfLocation@@QAEXABVQString@@@Z @ 448 NONAME ; void SmfLocation::setCity(class QString const &)
+	??5@YAAAVQDataStream@@AAV0@AAVQContactNickname@QtMobility@@@Z @ 449 NONAME ; class QDataStream & operator>>(class QDataStream &, class QtMobility::QContactNickname &)
+	?setDuration@SmfSubtitle@@QAEXABN@Z @ 450 NONAME ; void SmfSubtitle::setDuration(double const &)
+	??_ESmfTrackInfo@@QAE@I@Z @ 451 NONAME ; SmfTrackInfo::~SmfTrackInfo(unsigned int)
+	?setTitle@SmfPost@@QAEXABVQString@@@Z @ 452 NONAME ; void SmfPost::setTitle(class QString const &)
 
--- a/smf/smfservermodule/smfcommon/eabi/smfcommonu.def	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/eabi/smfcommonu.def	Thu Sep 23 17:43:31 2010 +0530
@@ -1,499 +1,515 @@
 EXPORTS
-	_ZN10SmfArtists6setUrlERK4QUrl @ 1 NONAME
-	_ZN10SmfArtists8setImageERK6QImage @ 2 NONAME
-	_ZN10SmfArtists8setNamesERK11QStringList @ 3 NONAME
-	_ZN10SmfArtistsC1ERKS_ @ 4 NONAME
-	_ZN10SmfArtistsC1Ev @ 5 NONAME
-	_ZN10SmfArtistsC2ERKS_ @ 6 NONAME
-	_ZN10SmfArtistsC2Ev @ 7 NONAME
-	_ZN10SmfArtistsD1Ev @ 8 NONAME
-	_ZN10SmfArtistsD2Ev @ 9 NONAME
-	_ZN10SmfArtistsaSERKS_ @ 10 NONAME
-	_ZN10SmfComment12setTimeStampERK9QDateTime @ 11 NONAME
-	_ZN10SmfComment5setIdERK7QString @ 12 NONAME
-	_ZN10SmfComment7setTextERK7QString @ 13 NONAME
-	_ZN10SmfCommentC1ERKS_ @ 14 NONAME
-	_ZN10SmfCommentC1Ev @ 15 NONAME
-	_ZN10SmfCommentC2ERKS_ @ 16 NONAME
-	_ZN10SmfCommentC2Ev @ 17 NONAME
-	_ZN10SmfCommentD1Ev @ 18 NONAME
-	_ZN10SmfCommentD2Ev @ 19 NONAME
-	_ZN10SmfCommentaSERKS_ @ 20 NONAME
-	_ZN10SmfContact8setValueERK7QStringR8QVariant @ 21 NONAME
-	_ZN10SmfContactC1EP7QObject @ 22 NONAME
-	_ZN10SmfContactC1ERKS_ @ 23 NONAME
-	_ZN10SmfContactC2EP7QObject @ 24 NONAME
-	_ZN10SmfContactC2ERKS_ @ 25 NONAME
-	_ZN10SmfContactD1Ev @ 26 NONAME
-	_ZN10SmfContactD2Ev @ 27 NONAME
-	_ZN10SmfContactaSERKS_ @ 28 NONAME
-	_ZN10SmfPicture10addCommentERK10SmfComment @ 29 NONAME
-	_ZN10SmfPicture10setPictureERK6QImage @ 30 NONAME
-	_ZN10SmfPicture12downloadFlagEv @ 31 NONAME
-	_ZN10SmfPicture13setPostedDateERK9QDateTime @ 32 NONAME
-	_ZN10SmfPicture13setVisibilityERK20SmfPictureVisibility @ 33 NONAME
-	_ZN10SmfPicture14setDescriptionERK7QString @ 34 NONAME
-	_ZN10SmfPicture5setIdERK7QString @ 35 NONAME
-	_ZN10SmfPicture6setUrlERK4QUrl @ 36 NONAME
-	_ZN10SmfPicture7addTagsERK11QStringList @ 37 NONAME
-	_ZN10SmfPicture8setOwnerERK7QString @ 38 NONAME
-	_ZN10SmfPicture8setTitleERK7QString @ 39 NONAME
-	_ZN10SmfPictureC1ERK6QImage @ 40 NONAME
-	_ZN10SmfPictureC1ERKS_ @ 41 NONAME
-	_ZN10SmfPictureC1Ev @ 42 NONAME
-	_ZN10SmfPictureC2ERK6QImage @ 43 NONAME
-	_ZN10SmfPictureC2ERKS_ @ 44 NONAME
-	_ZN10SmfPictureC2Ev @ 45 NONAME
-	_ZN10SmfPictureD1Ev @ 46 NONAME
-	_ZN10SmfPictureD2Ev @ 47 NONAME
-	_ZN10SmfPictureaSERKS_ @ 48 NONAME
-	_ZN11SmfLocation10setCountryERK7QString @ 49 NONAME
-	_ZN11SmfLocation10setZipCodeERK7QString @ 50 NONAME
-	_ZN11SmfLocation18setGeoPositionInfoERKN10QtMobility16QGeoPositionInfoE @ 51 NONAME
-	_ZN11SmfLocation5setIdERK7QString @ 52 NONAME
-	_ZN11SmfLocation6setUrlERK4QUrl @ 53 NONAME
-	_ZN11SmfLocation7setCityERK7QString @ 54 NONAME
-	_ZN11SmfLocation7setNameERK7QString @ 55 NONAME
-	_ZN11SmfLocation9setStreetERK7QString @ 56 NONAME
-	_ZN11SmfLocationC1ERKS_ @ 57 NONAME
-	_ZN11SmfLocationC1Ev @ 58 NONAME
-	_ZN11SmfLocationC2ERKS_ @ 59 NONAME
-	_ZN11SmfLocationC2Ev @ 60 NONAME
-	_ZN11SmfLocationD1Ev @ 61 NONAME
-	_ZN11SmfLocationD2Ev @ 62 NONAME
-	_ZN11SmfLocationaSERKS_ @ 63 NONAME
-	_ZN11SmfPlaylist10setLicenseERK4QUrl @ 64 NONAME
-	_ZN11SmfPlaylist10setVersionERK7QString @ 65 NONAME
-	_ZN11SmfPlaylist11setCommentsERK5QListI10SmfCommentE @ 66 NONAME
-	_ZN11SmfPlaylist11setLocationERK4QUrl @ 67 NONAME
-	_ZN11SmfPlaylist11setMetadataERK4QMapI7QString8QVariantE @ 68 NONAME
-	_ZN11SmfPlaylist12setExtensionERK4QMapI7QString8QVariantE @ 69 NONAME
-	_ZN11SmfPlaylist12setTrackListERK5QListI12SmfTrackInfoE @ 70 NONAME
-	_ZN11SmfPlaylist14setAttributionERK5QListI4QUrlE @ 71 NONAME
-	_ZN11SmfPlaylist15setCreationDateERK9QDateTime @ 72 NONAME
-	_ZN11SmfPlaylist16setPlayListTitleERK7QString @ 73 NONAME
-	_ZN11SmfPlaylist5setIdERK7QString @ 74 NONAME
-	_ZN11SmfPlaylist7setInfoERK4QUrl @ 75 NONAME
-	_ZN11SmfPlaylist8setImageERK4QUrl @ 76 NONAME
-	_ZN11SmfPlaylist9setAuthorERK7QString @ 77 NONAME
-	_ZN11SmfPlaylistC1ERKS_ @ 78 NONAME
-	_ZN11SmfPlaylistC1Ev @ 79 NONAME
-	_ZN11SmfPlaylistC2ERKS_ @ 80 NONAME
-	_ZN11SmfPlaylistC2Ev @ 81 NONAME
-	_ZN11SmfPlaylistD1Ev @ 82 NONAME
-	_ZN11SmfPlaylistD2Ev @ 83 NONAME
-	_ZN11SmfPlaylistaSERKS_ @ 84 NONAME
-	_ZN11SmfProvider13setServiceUrlER4QUrl @ 85 NONAME
-	_ZN11SmfProvider14setDescriptionER7QString @ 86 NONAME
-	_ZN11SmfProvider14setServiceIconER6QImage @ 87 NONAME
-	_ZN11SmfProvider14setServiceNameER7QString @ 88 NONAME
-	_ZN11SmfProvider17setApplicationUrlER4QUrl @ 89 NONAME
-	_ZN11SmfProvider21setSupportedLanguagesER11QStringList @ 90 NONAME
-	_ZN11SmfProvider22setSupportedInterfacesER11QStringList @ 91 NONAME
-	_ZN11SmfProviderC1Ev @ 92 NONAME
-	_ZN11SmfProviderC2Ev @ 93 NONAME
-	_ZN11SmfProviderD1Ev @ 94 NONAME
-	_ZN11SmfProviderD2Ev @ 95 NONAME
-	_ZN11SmfSubtitle11setDurationERKd @ 96 NONAME
-	_ZN11SmfSubtitle11setLanguageERK7QString @ 97 NONAME
-	_ZN11SmfSubtitle11setSubtitleERK10QByteArray @ 98 NONAME
-	_ZN11SmfSubtitle12setFrameRateERKd @ 99 NONAME
-	_ZN11SmfSubtitle14setReleaseYearERK9QDateTime @ 100 NONAME
-	_ZN11SmfSubtitle5setIdERK7QString @ 101 NONAME
-	_ZN11SmfSubtitleC1ERKS_ @ 102 NONAME
-	_ZN11SmfSubtitleC1Ev @ 103 NONAME
-	_ZN11SmfSubtitleC2ERKS_ @ 104 NONAME
-	_ZN11SmfSubtitleC2Ev @ 105 NONAME
-	_ZN11SmfSubtitleD1Ev @ 106 NONAME
-	_ZN11SmfSubtitleD2Ev @ 107 NONAME
-	_ZN11SmfSubtitleaSERKS_ @ 108 NONAME
-	_ZN12SmfTrackInfo10setArtistsERK10SmfArtists @ 109 NONAME
-	_ZN12SmfTrackInfo10setCommentERK5QListI10SmfCommentE @ 110 NONAME
-	_ZN12SmfTrackInfo11setDurationERK5QTime @ 111 NONAME
-	_ZN12SmfTrackInfo5setIdERK7QString @ 112 NONAME
-	_ZN12SmfTrackInfo7setTagsERK11QStringList @ 113 NONAME
-	_ZN12SmfTrackInfo7setYearERK9QDateTime @ 114 NONAME
-	_ZN12SmfTrackInfo8setAlbumERK8SmfAlbum @ 115 NONAME
-	_ZN12SmfTrackInfo8setGenreERK7QString @ 116 NONAME
-	_ZN12SmfTrackInfo8setTitleERK7QString @ 117 NONAME
-	_ZN12SmfTrackInfo9setRatingERK14SmfMusicRating @ 118 NONAME
-	_ZN12SmfTrackInfoC1ERKS_ @ 119 NONAME
-	_ZN12SmfTrackInfoC1Ev @ 120 NONAME
-	_ZN12SmfTrackInfoC2ERKS_ @ 121 NONAME
-	_ZN12SmfTrackInfoC2Ev @ 122 NONAME
-	_ZN12SmfTrackInfoD1Ev @ 123 NONAME
-	_ZN12SmfTrackInfoD2Ev @ 124 NONAME
-	_ZN12SmfTrackInfoaSERKS_ @ 125 NONAME
-	_ZN13SmfPluginUtil11getAuthKeysER4QMapI10QByteArrayS1_E7QStringRK9QDateTimeS4_ @ 126 NONAME
-	_ZN13SmfPluginUtil21createParameterStringERK7QStringN21QNetworkAccessManager9OperationERK10QByteArrayS7_18SmfSignatureMethodRK9QMultiMapIS5_S5_E14SmfParsingMode @ 127 NONAME
-	_ZN13SmfPluginUtil5parseEP9QIODevicePb @ 128 NONAME
-	_ZN13SmfPluginUtil5parseERK10QByteArrayPb @ 129 NONAME
-	_ZN13SmfPluginUtil8getNonceER7QStringx @ 130 NONAME
-	_ZN13SmfPluginUtilC1Ev @ 131 NONAME
-	_ZN13SmfPluginUtilC2Ev @ 132 NONAME
-	_ZN13SmfPluginUtilD1Ev @ 133 NONAME
-	_ZN13SmfPluginUtilD2Ev @ 134 NONAME
-	_ZN14SmfMusicRating12setMaxRatingERKi @ 135 NONAME
-	_ZN14SmfMusicRating12setMinRatingERKi @ 136 NONAME
-	_ZN14SmfMusicRating9setRatingERKi @ 137 NONAME
-	_ZN14SmfMusicRatingC1EP12SmfTrackInfo @ 138 NONAME
-	_ZN14SmfMusicRatingC1ERKS_ @ 139 NONAME
-	_ZN14SmfMusicRatingC2EP12SmfTrackInfo @ 140 NONAME
-	_ZN14SmfMusicRatingC2ERKS_ @ 141 NONAME
-	_ZN14SmfMusicRatingD1Ev @ 142 NONAME
-	_ZN14SmfMusicRatingD2Ev @ 143 NONAME
-	_ZN14SmfMusicRatingaSERKS_ @ 144 NONAME
-	_ZN15SmfMusicProfile13setUserEventsERK5QListI8SmfEventE @ 145 NONAME
-	_ZN15SmfMusicProfile15setInterestInfoERK5QListI12SmfTrackInfoE @ 146 NONAME
-	_ZN15SmfMusicProfile17setMusicUsageInfoERK5QListI12SmfTrackInfoE @ 147 NONAME
-	_ZN15SmfMusicProfile5setIdERK7QString @ 148 NONAME
-	_ZN15SmfMusicProfileC1ERKS_ @ 149 NONAME
-	_ZN15SmfMusicProfileC1Ev @ 150 NONAME
-	_ZN15SmfMusicProfileC2ERKS_ @ 151 NONAME
-	_ZN15SmfMusicProfileC2Ev @ 152 NONAME
-	_ZN15SmfMusicProfileD1Ev @ 153 NONAME
-	_ZN15SmfMusicProfileD2Ev @ 154 NONAME
-	_ZN15SmfMusicProfileaSERKS_ @ 155 NONAME
-	_ZN15SmfPictureAlbum10addCommentERK10SmfComment @ 156 NONAME
-	_ZN15SmfPictureAlbum11addKeywordsERK11QStringList @ 157 NONAME
-	_ZN15SmfPictureAlbum12setThumbnailERK6QImage @ 158 NONAME
-	_ZN15SmfPictureAlbum13setPostedDateERK9QDateTime @ 159 NONAME
-	_ZN15SmfPictureAlbum13setVisibilityERK20SmfPictureVisibility @ 160 NONAME
-	_ZN15SmfPictureAlbum14setDescriptionERK7QString @ 161 NONAME
-	_ZN15SmfPictureAlbum15setPictureCountEi @ 162 NONAME
-	_ZN15SmfPictureAlbum5setIdERK7QString @ 163 NONAME
-	_ZN15SmfPictureAlbum6setUrlERK4QUrl @ 164 NONAME
-	_ZN15SmfPictureAlbum8setTitleERK7QString @ 165 NONAME
-	_ZN15SmfPictureAlbumC1ERKS_ @ 166 NONAME
-	_ZN15SmfPictureAlbumC1Ev @ 167 NONAME
-	_ZN15SmfPictureAlbumC2ERKS_ @ 168 NONAME
-	_ZN15SmfPictureAlbumC2Ev @ 169 NONAME
-	_ZN15SmfPictureAlbumD1Ev @ 170 NONAME
-	_ZN15SmfPictureAlbumD2Ev @ 171 NONAME
-	_ZN15SmfPictureAlbumaSERKS_ @ 172 NONAME
-	_ZN16SmfActivityEntry10setDetailsERK7SmfPost @ 173 NONAME
-	_ZN16SmfActivityEntry12setTargetObjERK17SmfActivityObject @ 174 NONAME
-	_ZN16SmfActivityEntry13setActionNameE15SmfActivityVerb @ 175 NONAME
-	_ZN16SmfActivityEntry13setActivitiesER5QListI17SmfActivityObjectE @ 176 NONAME
-	_ZN16SmfActivityEntry5setIdERK7QString @ 177 NONAME
-	_ZN16SmfActivityEntry8setTitleERK7SmfPost @ 178 NONAME
-	_ZN16SmfActivityEntry9setAuthorERK10SmfContact @ 179 NONAME
-	_ZN16SmfActivityEntryC1ERKS_ @ 180 NONAME
-	_ZN16SmfActivityEntryC1Ev @ 181 NONAME
-	_ZN16SmfActivityEntryC2ERKS_ @ 182 NONAME
-	_ZN16SmfActivityEntryC2Ev @ 183 NONAME
-	_ZN16SmfActivityEntryD1Ev @ 184 NONAME
-	_ZN16SmfActivityEntryD2Ev @ 185 NONAME
-	_ZN17SmfActivityObject10setCaptionERK7QString @ 186 NONAME
-	_ZN17SmfActivityObject10setContentERK7QString @ 187 NONAME
-	_ZN17SmfActivityObject10setObjDataERK8QVariant @ 188 NONAME
-	_ZN17SmfActivityObject12setThumbnailERK6QImage @ 189 NONAME
-	_ZN17SmfActivityObject5setIdERK7QString @ 190 NONAME
-	_ZN17SmfActivityObject7setLinkERK7QString @ 191 NONAME
-	_ZN17SmfActivityObject7setTimeERK9QDateTime @ 192 NONAME
-	_ZN17SmfActivityObject7setTypeERK21SmfActivityObjectType @ 193 NONAME
-	_ZN17SmfActivityObjectC1ERKS_ @ 194 NONAME
-	_ZN17SmfActivityObjectC1Ev @ 195 NONAME
-	_ZN17SmfActivityObjectC2ERKS_ @ 196 NONAME
-	_ZN17SmfActivityObjectC2Ev @ 197 NONAME
-	_ZN17SmfActivityObjectD1Ev @ 198 NONAME
-	_ZN17SmfActivityObjectD2Ev @ 199 NONAME
-	_ZN17SmfActivityObjectaSERKS_ @ 200 NONAME
-	_ZN19SmfMusicFingerPrint19setMusicFingerPrintERK10QByteArray @ 201 NONAME
-	_ZN19SmfMusicFingerPrintC1ERKS_ @ 202 NONAME
-	_ZN19SmfMusicFingerPrintC1Ev @ 203 NONAME
-	_ZN19SmfMusicFingerPrintC2ERKS_ @ 204 NONAME
-	_ZN19SmfMusicFingerPrintC2Ev @ 205 NONAME
-	_ZN19SmfMusicFingerPrintD1Ev @ 206 NONAME
-	_ZN19SmfMusicFingerPrintD2Ev @ 207 NONAME
-	_ZN19SmfMusicFingerPrintaSERKS_ @ 208 NONAME
-	_ZN6SmfUrl12setHhreflangERK7QString @ 209 NONAME
-	_ZN6SmfUrl5setIdERK7QString @ 210 NONAME
-	_ZN6SmfUrl6setRelERK7QString @ 211 NONAME
-	_ZN6SmfUrl7setHrefERK4QUrl @ 212 NONAME
-	_ZN6SmfUrl7setTypeERK7QString @ 213 NONAME
-	_ZN6SmfUrl8setTitleERK7QString @ 214 NONAME
-	_ZN6SmfUrl9setLengthERK7QString @ 215 NONAME
-	_ZN6SmfUrlC1ERKS_ @ 216 NONAME
-	_ZN6SmfUrlC1Ev @ 217 NONAME
-	_ZN6SmfUrlC2ERKS_ @ 218 NONAME
-	_ZN6SmfUrlC2Ev @ 219 NONAME
-	_ZN6SmfUrlD1Ev @ 220 NONAME
-	_ZN6SmfUrlD2Ev @ 221 NONAME
-	_ZN6SmfUrlaSERKS_ @ 222 NONAME
-	_ZN7SmfPost14setDescriptionERK7QString @ 223 NONAME
-	_ZN7SmfPost17setPostedDateTimeER9QDateTime @ 224 NONAME
-	_ZN7SmfPost5setIdE7QString @ 225 NONAME
-	_ZN7SmfPost6setUrlER4QUrl @ 226 NONAME
-	_ZN7SmfPost8setImageERK6QImage @ 227 NONAME
-	_ZN7SmfPost8setOwnerERK10SmfContact @ 228 NONAME
-	_ZN7SmfPost8setTitleERK7QString @ 229 NONAME
-	_ZN7SmfPostC1E10SmfContact7QStringS1_6QImage4QUrl @ 230 NONAME
-	_ZN7SmfPostC1ERKS_ @ 231 NONAME
-	_ZN7SmfPostC1Ev @ 232 NONAME
-	_ZN7SmfPostC2E10SmfContact7QStringS1_6QImage4QUrl @ 233 NONAME
-	_ZN7SmfPostC2ERKS_ @ 234 NONAME
-	_ZN7SmfPostC2Ev @ 235 NONAME
-	_ZN7SmfPostD1Ev @ 236 NONAME
-	_ZN7SmfPostD2Ev @ 237 NONAME
-	_ZN7SmfPostaSERKS_ @ 238 NONAME
-	_ZN8SmfAlbum10setArtistsERK10SmfArtists @ 239 NONAME
-	_ZN8SmfAlbum5setIdERK7QString @ 240 NONAME
-	_ZN8SmfAlbum7setNameERK7QString @ 241 NONAME
-	_ZN8SmfAlbum8setImageERK6QImage @ 242 NONAME
-	_ZN8SmfAlbumC1ERKS_ @ 243 NONAME
-	_ZN8SmfAlbumC1Ev @ 244 NONAME
-	_ZN8SmfAlbumC2ERKS_ @ 245 NONAME
-	_ZN8SmfAlbumC2Ev @ 246 NONAME
-	_ZN8SmfAlbumD1Ev @ 247 NONAME
-	_ZN8SmfAlbumD2Ev @ 248 NONAME
-	_ZN8SmfAlbumaSERKS_ @ 249 NONAME
-	_ZN8SmfEvent10setArtistsERK10SmfArtists @ 250 NONAME
-	_ZN8SmfEvent11setDurationERK5QTime @ 251 NONAME
-	_ZN8SmfEvent12setTicketUrlERK4QUrl @ 252 NONAME
-	_ZN8SmfEvent16setEventDateTimeERK9QDateTime @ 253 NONAME
-	_ZN8SmfEvent5setIdERK7QString @ 254 NONAME
-	_ZN8SmfEvent8setTitleERK7QString @ 255 NONAME
-	_ZN8SmfEvent8setVenueERK11SmfLocation @ 256 NONAME
-	_ZN8SmfEventC1ERKS_ @ 257 NONAME
-	_ZN8SmfEventC1Ev @ 258 NONAME
-	_ZN8SmfEventC2ERKS_ @ 259 NONAME
-	_ZN8SmfEventC2Ev @ 260 NONAME
-	_ZN8SmfEventD1Ev @ 261 NONAME
-	_ZN8SmfEventD2Ev @ 262 NONAME
-	_ZN8SmfEventaSERKS_ @ 263 NONAME
-	_ZN8SmfGroup10setMembersEP5QListI10SmfContactE @ 264 NONAME
-	_ZN8SmfGroup5setIdER7QString @ 265 NONAME
-	_ZN8SmfGroup7setNameER7QString @ 266 NONAME
-	_ZN8SmfGroupC1EP5QListI10SmfContactE @ 267 NONAME
-	_ZN8SmfGroupC1ERKS_ @ 268 NONAME
-	_ZN8SmfGroupC2EP5QListI10SmfContactE @ 269 NONAME
-	_ZN8SmfGroupC2ERKS_ @ 270 NONAME
-	_ZN8SmfGroupD1Ev @ 271 NONAME
-	_ZN8SmfGroupD2Ev @ 272 NONAME
-	_ZN8SmfGroupaSERKS_ @ 273 NONAME
-	_ZN9SmfLyrics11setLanguageERK7QString @ 274 NONAME
-	_ZN9SmfLyrics14setReleaseYearERK9QDateTime @ 275 NONAME
-	_ZN9SmfLyrics5setIdERK7QString @ 276 NONAME
-	_ZN9SmfLyrics9setLyricsERK10QByteArray @ 277 NONAME
-	_ZN9SmfLyricsC1ERKS_ @ 278 NONAME
-	_ZN9SmfLyricsC1Ev @ 279 NONAME
-	_ZN9SmfLyricsC2ERKS_ @ 280 NONAME
-	_ZN9SmfLyricsC2Ev @ 281 NONAME
-	_ZN9SmfLyricsD1Ev @ 282 NONAME
-	_ZN9SmfLyricsD2Ev @ 283 NONAME
-	_ZN9SmfLyricsaSERKS_ @ 284 NONAME
-	_ZNK10SmfArtists3urlEv @ 285 NONAME
-	_ZNK10SmfArtists5imageEv @ 286 NONAME
-	_ZNK10SmfArtists5namesEv @ 287 NONAME
-	_ZNK10SmfComment2idEv @ 288 NONAME
-	_ZNK10SmfComment4textEv @ 289 NONAME
-	_ZNK10SmfComment9timeStampEv @ 290 NONAME
-	_ZNK10SmfContact5valueERK7QString @ 291 NONAME
-	_ZNK10SmfContact7convertERN10QtMobility8QContactE @ 292 NONAME
-	_ZNK10SmfContact8subTypesEv @ 293 NONAME
-	_ZNK10SmfPicture10postedDateEv @ 294 NONAME
-	_ZNK10SmfPicture10visibilityEv @ 295 NONAME
-	_ZNK10SmfPicture11descriptionEv @ 296 NONAME
-	_ZNK10SmfPicture2idEv @ 297 NONAME
-	_ZNK10SmfPicture3urlEv @ 298 NONAME
-	_ZNK10SmfPicture4tagsEv @ 299 NONAME
-	_ZNK10SmfPicture5ownerEv @ 300 NONAME
-	_ZNK10SmfPicture5titleEv @ 301 NONAME
-	_ZNK10SmfPicture7pictureEv @ 302 NONAME
-	_ZNK10SmfPicture8commentsEv @ 303 NONAME
-	_ZNK11SmfLocation15geoPositionInfoEv @ 304 NONAME
-	_ZNK11SmfLocation2idEv @ 305 NONAME
-	_ZNK11SmfLocation3urlEv @ 306 NONAME
-	_ZNK11SmfLocation4cityEv @ 307 NONAME
-	_ZNK11SmfLocation4nameEv @ 308 NONAME
-	_ZNK11SmfLocation6streetEv @ 309 NONAME
-	_ZNK11SmfLocation7countryEv @ 310 NONAME
-	_ZNK11SmfLocation7zipCodeEv @ 311 NONAME
-	_ZNK11SmfPlaylist11attributionEv @ 312 NONAME
-	_ZNK11SmfPlaylist12creationDateEv @ 313 NONAME
-	_ZNK11SmfPlaylist13playListTitleEv @ 314 NONAME
-	_ZNK11SmfPlaylist2idEv @ 315 NONAME
-	_ZNK11SmfPlaylist4infoEv @ 316 NONAME
-	_ZNK11SmfPlaylist5imageEv @ 317 NONAME
-	_ZNK11SmfPlaylist6authorEv @ 318 NONAME
-	_ZNK11SmfPlaylist7licenseEv @ 319 NONAME
-	_ZNK11SmfPlaylist7versionEv @ 320 NONAME
-	_ZNK11SmfPlaylist8commentsEv @ 321 NONAME
-	_ZNK11SmfPlaylist8locationEv @ 322 NONAME
-	_ZNK11SmfPlaylist8metadataEv @ 323 NONAME
-	_ZNK11SmfPlaylist9extensionEv @ 324 NONAME
-	_ZNK11SmfPlaylist9trackListEv @ 325 NONAME
-	_ZNK11SmfProvider10serviceUrlEv @ 326 NONAME
-	_ZNK11SmfProvider11descriptionEv @ 327 NONAME
-	_ZNK11SmfProvider11serviceIconEv @ 328 NONAME
-	_ZNK11SmfProvider11serviceNameEv @ 329 NONAME
-	_ZNK11SmfProvider14applicationUrlEv @ 330 NONAME
-	_ZNK11SmfProvider18supportedLanguagesEv @ 331 NONAME
-	_ZNK11SmfProvider19supportedInterfacesEv @ 332 NONAME
-	_ZNK11SmfSubtitle11releaseYearEv @ 333 NONAME
-	_ZNK11SmfSubtitle2idEv @ 334 NONAME
-	_ZNK11SmfSubtitle8durationEv @ 335 NONAME
-	_ZNK11SmfSubtitle8languageEv @ 336 NONAME
-	_ZNK11SmfSubtitle8subtitleEv @ 337 NONAME
-	_ZNK11SmfSubtitle9frameRateEv @ 338 NONAME
-	_ZNK12SmfTrackInfo2idEv @ 339 NONAME
-	_ZNK12SmfTrackInfo4tagsEv @ 340 NONAME
-	_ZNK12SmfTrackInfo4yearEv @ 341 NONAME
-	_ZNK12SmfTrackInfo5albumEv @ 342 NONAME
-	_ZNK12SmfTrackInfo5genreEv @ 343 NONAME
-	_ZNK12SmfTrackInfo5titleEv @ 344 NONAME
-	_ZNK12SmfTrackInfo6ratingEv @ 345 NONAME
-	_ZNK12SmfTrackInfo7artistsEv @ 346 NONAME
-	_ZNK12SmfTrackInfo8commentsEv @ 347 NONAME
-	_ZNK12SmfTrackInfo8durationEv @ 348 NONAME
-	_ZNK13SmfPluginUtil11errorStringEv @ 349 NONAME
-	_ZNK13SmfPluginUtil9errorLineEv @ 350 NONAME
-	_ZNK14SmfMusicRating6ratingEv @ 351 NONAME
-	_ZNK14SmfMusicRating9maxRatingEv @ 352 NONAME
-	_ZNK14SmfMusicRating9minRatingEv @ 353 NONAME
-	_ZNK15SmfMusicProfile10userEventsEv @ 354 NONAME
-	_ZNK15SmfMusicProfile12interestInfoEv @ 355 NONAME
-	_ZNK15SmfMusicProfile14musicUsageInfoEv @ 356 NONAME
-	_ZNK15SmfMusicProfile2idEv @ 357 NONAME
-	_ZNK15SmfPictureAlbum10postedDateEv @ 358 NONAME
-	_ZNK15SmfPictureAlbum10visibilityEv @ 359 NONAME
-	_ZNK15SmfPictureAlbum11descriptionEv @ 360 NONAME
-	_ZNK15SmfPictureAlbum12pictureCountEv @ 361 NONAME
-	_ZNK15SmfPictureAlbum2idEv @ 362 NONAME
-	_ZNK15SmfPictureAlbum3urlEv @ 363 NONAME
-	_ZNK15SmfPictureAlbum5titleEv @ 364 NONAME
-	_ZNK15SmfPictureAlbum8commentsEv @ 365 NONAME
-	_ZNK15SmfPictureAlbum8keywordsEv @ 366 NONAME
-	_ZNK15SmfPictureAlbum9thumbnailEv @ 367 NONAME
-	_ZNK16SmfActivityEntry10actionNameEv @ 368 NONAME
-	_ZNK16SmfActivityEntry10activitiesEv @ 369 NONAME
-	_ZNK16SmfActivityEntry2idEv @ 370 NONAME
-	_ZNK16SmfActivityEntry5titleEv @ 371 NONAME
-	_ZNK16SmfActivityEntry6authorEv @ 372 NONAME
-	_ZNK16SmfActivityEntry7detailsEv @ 373 NONAME
-	_ZNK16SmfActivityEntry9targetObjEv @ 374 NONAME
-	_ZNK17SmfActivityObject2idEv @ 375 NONAME
-	_ZNK17SmfActivityObject4linkEv @ 376 NONAME
-	_ZNK17SmfActivityObject4timeEv @ 377 NONAME
-	_ZNK17SmfActivityObject4typeEv @ 378 NONAME
-	_ZNK17SmfActivityObject7captionEv @ 379 NONAME
-	_ZNK17SmfActivityObject7contentEv @ 380 NONAME
-	_ZNK17SmfActivityObject7objDataEv @ 381 NONAME
-	_ZNK17SmfActivityObject9thumbnailEv @ 382 NONAME
-	_ZNK19SmfMusicFingerPrint16musicFingerPrintEv @ 383 NONAME
-	_ZNK6SmfUrl2idEv @ 384 NONAME
-	_ZNK6SmfUrl3relEv @ 385 NONAME
-	_ZNK6SmfUrl4hrefEv @ 386 NONAME
-	_ZNK6SmfUrl4typeEv @ 387 NONAME
-	_ZNK6SmfUrl5titleEv @ 388 NONAME
-	_ZNK6SmfUrl6lengthEv @ 389 NONAME
-	_ZNK6SmfUrl8hreflangEv @ 390 NONAME
-	_ZNK7SmfPost11descriptionEv @ 391 NONAME
-	_ZNK7SmfPost14postedDateTimeEv @ 392 NONAME
-	_ZNK7SmfPost2idEv @ 393 NONAME
-	_ZNK7SmfPost3urlEv @ 394 NONAME
-	_ZNK7SmfPost5imageEv @ 395 NONAME
-	_ZNK7SmfPost5ownerEv @ 396 NONAME
-	_ZNK7SmfPost5titleEv @ 397 NONAME
-	_ZNK8SmfAlbum2idEv @ 398 NONAME
-	_ZNK8SmfAlbum4nameEv @ 399 NONAME
-	_ZNK8SmfAlbum5imageEv @ 400 NONAME
-	_ZNK8SmfAlbum7artistsEv @ 401 NONAME
-	_ZNK8SmfEvent13eventDateTimeEv @ 402 NONAME
-	_ZNK8SmfEvent2idEv @ 403 NONAME
-	_ZNK8SmfEvent5titleEv @ 404 NONAME
-	_ZNK8SmfEvent5venueEv @ 405 NONAME
-	_ZNK8SmfEvent7artistsEv @ 406 NONAME
-	_ZNK8SmfEvent8durationEv @ 407 NONAME
-	_ZNK8SmfEvent9ticketUrlEv @ 408 NONAME
-	_ZNK8SmfGroup2idEv @ 409 NONAME
-	_ZNK8SmfGroup4nameEv @ 410 NONAME
-	_ZNK8SmfGroup7membersEv @ 411 NONAME
-	_ZNK9SmfLyrics11releaseYearEv @ 412 NONAME
-	_ZNK9SmfLyrics2idEv @ 413 NONAME
-	_ZNK9SmfLyrics6lyricsEv @ 414 NONAME
-	_ZNK9SmfLyrics8languageEv @ 415 NONAME
-	_ZlsR11QDataStreamRK10SmfArtists @ 416 NONAME
-	_ZlsR11QDataStreamRK10SmfComment @ 417 NONAME
-	_ZlsR11QDataStreamRK10SmfContact @ 418 NONAME
-	_ZlsR11QDataStreamRK10SmfPicture @ 419 NONAME
-	_ZlsR11QDataStreamRK11SmfLocation @ 420 NONAME
-	_ZlsR11QDataStreamRK11SmfPlaylist @ 421 NONAME
-	_ZlsR11QDataStreamRK11SmfProvider @ 422 NONAME
-	_ZlsR11QDataStreamRK11SmfSubtitle @ 423 NONAME
-	_ZlsR11QDataStreamRK12SmfTrackInfo @ 424 NONAME
-	_ZlsR11QDataStreamRK14SmfMusicRating @ 425 NONAME
-	_ZlsR11QDataStreamRK15SmfMusicProfile @ 426 NONAME
-	_ZlsR11QDataStreamRK15SmfPictureAlbum @ 427 NONAME
-	_ZlsR11QDataStreamRK16SmfActivityEntry @ 428 NONAME
-	_ZlsR11QDataStreamRK17SmfActivityObject @ 429 NONAME
-	_ZlsR11QDataStreamRK19SmfMusicFingerPrint @ 430 NONAME
-	_ZlsR11QDataStreamRK6SmfUrl @ 431 NONAME
-	_ZlsR11QDataStreamRK7SmfPost @ 432 NONAME
-	_ZlsR11QDataStreamRK8SmfAlbum @ 433 NONAME
-	_ZlsR11QDataStreamRK8SmfEvent @ 434 NONAME
-	_ZlsR11QDataStreamRK8SmfGroup @ 435 NONAME
-	_ZlsR11QDataStreamRK9SmfLyrics @ 436 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility10QContactIdE @ 437 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility11QContactUrlE @ 438 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility12QContactGuidE @ 439 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility12QContactNameE @ 440 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility12QContactNoteE @ 441 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility12QContactTypeE @ 442 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility14QContactAvatarE @ 443 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility14QContactGenderE @ 444 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility15QContactAddressE @ 445 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility16QContactBirthdayE @ 446 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility16QContactNicknameE @ 447 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility16QContactPresenceE @ 448 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility17QContactThumbnailE @ 449 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility17QContactTimestampE @ 450 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility19QContactAnniversaryE @ 451 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility19QContactGeoLocationE @ 452 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility19QContactPhoneNumberE @ 453 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility20QContactEmailAddressE @ 454 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility20QContactOrganizationE @ 455 NONAME
-	_ZlsR11QDataStreamRKN10QtMobility21QContactOnlineAccountE @ 456 NONAME
-	_ZrsR11QDataStreamR10SmfArtists @ 457 NONAME
-	_ZrsR11QDataStreamR10SmfComment @ 458 NONAME
-	_ZrsR11QDataStreamR10SmfContact @ 459 NONAME
-	_ZrsR11QDataStreamR10SmfPicture @ 460 NONAME
-	_ZrsR11QDataStreamR11SmfLocation @ 461 NONAME
-	_ZrsR11QDataStreamR11SmfPlaylist @ 462 NONAME
-	_ZrsR11QDataStreamR11SmfProvider @ 463 NONAME
-	_ZrsR11QDataStreamR11SmfSubtitle @ 464 NONAME
-	_ZrsR11QDataStreamR12SmfTrackInfo @ 465 NONAME
-	_ZrsR11QDataStreamR14SmfMusicRating @ 466 NONAME
-	_ZrsR11QDataStreamR15SmfMusicProfile @ 467 NONAME
-	_ZrsR11QDataStreamR15SmfPictureAlbum @ 468 NONAME
-	_ZrsR11QDataStreamR16SmfActivityEntry @ 469 NONAME
-	_ZrsR11QDataStreamR17SmfActivityObject @ 470 NONAME
-	_ZrsR11QDataStreamR19SmfMusicFingerPrint @ 471 NONAME
-	_ZrsR11QDataStreamR6SmfUrl @ 472 NONAME
-	_ZrsR11QDataStreamR7SmfPost @ 473 NONAME
-	_ZrsR11QDataStreamR8SmfAlbum @ 474 NONAME
-	_ZrsR11QDataStreamR8SmfEvent @ 475 NONAME
-	_ZrsR11QDataStreamR8SmfGroup @ 476 NONAME
-	_ZrsR11QDataStreamR9SmfLyrics @ 477 NONAME
-	_ZrsR11QDataStreamRN10QtMobility10QContactIdE @ 478 NONAME
-	_ZrsR11QDataStreamRN10QtMobility11QContactUrlE @ 479 NONAME
-	_ZrsR11QDataStreamRN10QtMobility12QContactGuidE @ 480 NONAME
-	_ZrsR11QDataStreamRN10QtMobility12QContactNameE @ 481 NONAME
-	_ZrsR11QDataStreamRN10QtMobility12QContactNoteE @ 482 NONAME
-	_ZrsR11QDataStreamRN10QtMobility12QContactTypeE @ 483 NONAME
-	_ZrsR11QDataStreamRN10QtMobility14QContactAvatarE @ 484 NONAME
-	_ZrsR11QDataStreamRN10QtMobility14QContactGenderE @ 485 NONAME
-	_ZrsR11QDataStreamRN10QtMobility15QContactAddressE @ 486 NONAME
-	_ZrsR11QDataStreamRN10QtMobility16QContactBirthdayE @ 487 NONAME
-	_ZrsR11QDataStreamRN10QtMobility16QContactNicknameE @ 488 NONAME
-	_ZrsR11QDataStreamRN10QtMobility16QContactPresenceE @ 489 NONAME
-	_ZrsR11QDataStreamRN10QtMobility17QContactThumbnailE @ 490 NONAME
-	_ZrsR11QDataStreamRN10QtMobility17QContactTimestampE @ 491 NONAME
-	_ZrsR11QDataStreamRN10QtMobility19QContactAnniversaryE @ 492 NONAME
-	_ZrsR11QDataStreamRN10QtMobility19QContactGeoLocationE @ 493 NONAME
-	_ZrsR11QDataStreamRN10QtMobility19QContactPhoneNumberE @ 494 NONAME
-	_ZrsR11QDataStreamRN10QtMobility20QContactEmailAddressE @ 495 NONAME
-	_ZrsR11QDataStreamRN10QtMobility20QContactOrganizationE @ 496 NONAME
-	_ZrsR11QDataStreamRN10QtMobility21QContactOnlineAccountE @ 497 NONAME
+	_ZN10SmfArtists5setIdERK7QString @ 1 NONAME
+	_ZN10SmfArtists6setUrlERK4QUrl @ 2 NONAME
+	_ZN10SmfArtists7setTagsERK11QStringList @ 3 NONAME
+	_ZN10SmfArtists8setImageERK6QImage @ 4 NONAME
+	_ZN10SmfArtists8setNamesERK11QStringList @ 5 NONAME
+	_ZN10SmfArtistsC1ERKS_ @ 6 NONAME
+	_ZN10SmfArtistsC1Ev @ 7 NONAME
+	_ZN10SmfArtistsC2ERKS_ @ 8 NONAME
+	_ZN10SmfArtistsC2Ev @ 9 NONAME
+	_ZN10SmfArtistsD1Ev @ 10 NONAME
+	_ZN10SmfArtistsD2Ev @ 11 NONAME
+	_ZN10SmfArtistsaSERKS_ @ 12 NONAME
+	_ZN10SmfComment12setTimeStampERK9QDateTime @ 13 NONAME
+	_ZN10SmfComment5setIdERK7QString @ 14 NONAME
+	_ZN10SmfComment7setTextERK7QString @ 15 NONAME
+	_ZN10SmfCommentC1ERKS_ @ 16 NONAME
+	_ZN10SmfCommentC1Ev @ 17 NONAME
+	_ZN10SmfCommentC2ERKS_ @ 18 NONAME
+	_ZN10SmfCommentC2Ev @ 19 NONAME
+	_ZN10SmfCommentD1Ev @ 20 NONAME
+	_ZN10SmfCommentD2Ev @ 21 NONAME
+	_ZN10SmfCommentaSERKS_ @ 22 NONAME
+	_ZN10SmfContact8setValueERK7QStringR8QVariant @ 23 NONAME
+	_ZN10SmfContactC1EP7QObject @ 24 NONAME
+	_ZN10SmfContactC1ERKS_ @ 25 NONAME
+	_ZN10SmfContactC2EP7QObject @ 26 NONAME
+	_ZN10SmfContactC2ERKS_ @ 27 NONAME
+	_ZN10SmfContactD1Ev @ 28 NONAME
+	_ZN10SmfContactD2Ev @ 29 NONAME
+	_ZN10SmfContactaSERKS_ @ 30 NONAME
+	_ZN10SmfPicture10addCommentERK10SmfComment @ 31 NONAME
+	_ZN10SmfPicture10setPictureERK6QImage @ 32 NONAME
+	_ZN10SmfPicture12downloadFlagEv @ 33 NONAME
+	_ZN10SmfPicture13setPostedDateERK9QDateTime @ 34 NONAME
+	_ZN10SmfPicture13setVisibilityERK20SmfPictureVisibility @ 35 NONAME
+	_ZN10SmfPicture14setDescriptionERK7QString @ 36 NONAME
+	_ZN10SmfPicture5setIdERK7QString @ 37 NONAME
+	_ZN10SmfPicture6setUrlERK4QUrl @ 38 NONAME
+	_ZN10SmfPicture7addTagsERK11QStringList @ 39 NONAME
+	_ZN10SmfPicture8setOwnerERK7QString @ 40 NONAME
+	_ZN10SmfPicture8setTitleERK7QString @ 41 NONAME
+	_ZN10SmfPictureC1ERK6QImage @ 42 NONAME
+	_ZN10SmfPictureC1ERKS_ @ 43 NONAME
+	_ZN10SmfPictureC1Ev @ 44 NONAME
+	_ZN10SmfPictureC2ERK6QImage @ 45 NONAME
+	_ZN10SmfPictureC2ERKS_ @ 46 NONAME
+	_ZN10SmfPictureC2Ev @ 47 NONAME
+	_ZN10SmfPictureD1Ev @ 48 NONAME
+	_ZN10SmfPictureD2Ev @ 49 NONAME
+	_ZN10SmfPictureaSERKS_ @ 50 NONAME
+	_ZN11SmfLocation10setCountryERK7QString @ 51 NONAME
+	_ZN11SmfLocation10setZipCodeERK7QString @ 52 NONAME
+	_ZN11SmfLocation18setGeoPositionInfoERKN10QtMobility16QGeoPositionInfoE @ 53 NONAME
+	_ZN11SmfLocation5setIdERK7QString @ 54 NONAME
+	_ZN11SmfLocation6setUrlERK4QUrl @ 55 NONAME
+	_ZN11SmfLocation7setCityERK7QString @ 56 NONAME
+	_ZN11SmfLocation7setNameERK7QString @ 57 NONAME
+	_ZN11SmfLocation9setStreetERK7QString @ 58 NONAME
+	_ZN11SmfLocationC1ERKS_ @ 59 NONAME
+	_ZN11SmfLocationC1Ev @ 60 NONAME
+	_ZN11SmfLocationC2ERKS_ @ 61 NONAME
+	_ZN11SmfLocationC2Ev @ 62 NONAME
+	_ZN11SmfLocationD1Ev @ 63 NONAME
+	_ZN11SmfLocationD2Ev @ 64 NONAME
+	_ZN11SmfLocationaSERKS_ @ 65 NONAME
+	_ZN11SmfPlaylist10setLicenseERK4QUrl @ 66 NONAME
+	_ZN11SmfPlaylist10setVersionERK7QString @ 67 NONAME
+	_ZN11SmfPlaylist11setCommentsERK5QListI10SmfCommentE @ 68 NONAME
+	_ZN11SmfPlaylist11setLocationERK4QUrl @ 69 NONAME
+	_ZN11SmfPlaylist11setMetadataERK4QMapI7QString8QVariantE @ 70 NONAME
+	_ZN11SmfPlaylist12setExtensionERK4QMapI7QString8QVariantE @ 71 NONAME
+	_ZN11SmfPlaylist12setTrackListERK5QListI12SmfTrackInfoE @ 72 NONAME
+	_ZN11SmfPlaylist14setAttributionERK5QListI4QUrlE @ 73 NONAME
+	_ZN11SmfPlaylist15setCreationDateERK9QDateTime @ 74 NONAME
+	_ZN11SmfPlaylist16setPlayListTitleERK7QString @ 75 NONAME
+	_ZN11SmfPlaylist5setIdERK7QString @ 76 NONAME
+	_ZN11SmfPlaylist7setInfoERK4QUrl @ 77 NONAME
+	_ZN11SmfPlaylist8setImageERK4QUrl @ 78 NONAME
+	_ZN11SmfPlaylist9setAuthorERK7QString @ 79 NONAME
+	_ZN11SmfPlaylistC1ERKS_ @ 80 NONAME
+	_ZN11SmfPlaylistC1Ev @ 81 NONAME
+	_ZN11SmfPlaylistC2ERKS_ @ 82 NONAME
+	_ZN11SmfPlaylistC2Ev @ 83 NONAME
+	_ZN11SmfPlaylistD1Ev @ 84 NONAME
+	_ZN11SmfPlaylistD2Ev @ 85 NONAME
+	_ZN11SmfPlaylistaSERKS_ @ 86 NONAME
+	_ZN11SmfProvider13setServiceUrlER4QUrl @ 87 NONAME
+	_ZN11SmfProvider14setDescriptionER7QString @ 88 NONAME
+	_ZN11SmfProvider14setServiceIconER6QImage @ 89 NONAME
+	_ZN11SmfProvider14setServiceNameER7QString @ 90 NONAME
+	_ZN11SmfProvider17setApplicationUrlER4QUrl @ 91 NONAME
+	_ZN11SmfProvider21setSupportedLanguagesER11QStringList @ 92 NONAME
+	_ZN11SmfProvider22setSupportedInterfacesER11QStringList @ 93 NONAME
+	_ZN11SmfProviderC1Ev @ 94 NONAME
+	_ZN11SmfProviderC2Ev @ 95 NONAME
+	_ZN11SmfProviderD1Ev @ 96 NONAME
+	_ZN11SmfProviderD2Ev @ 97 NONAME
+	_ZN11SmfSubtitle11setDurationERKd @ 98 NONAME
+	_ZN11SmfSubtitle11setLanguageERK7QString @ 99 NONAME
+	_ZN11SmfSubtitle11setSubtitleERK10QByteArray @ 100 NONAME
+	_ZN11SmfSubtitle12setFrameRateERKd @ 101 NONAME
+	_ZN11SmfSubtitle14setReleaseYearERK9QDateTime @ 102 NONAME
+	_ZN11SmfSubtitle14setSubtitleUrlERK4QUrl @ 103 NONAME
+	_ZN11SmfSubtitle5setIdERK7QString @ 104 NONAME
+	_ZN11SmfSubtitleC1ERKS_ @ 105 NONAME
+	_ZN11SmfSubtitleC1Ev @ 106 NONAME
+	_ZN11SmfSubtitleC2ERKS_ @ 107 NONAME
+	_ZN11SmfSubtitleC2Ev @ 108 NONAME
+	_ZN11SmfSubtitleD1Ev @ 109 NONAME
+	_ZN11SmfSubtitleD2Ev @ 110 NONAME
+	_ZN11SmfSubtitleaSERKS_ @ 111 NONAME
+	_ZN12SmfTrackInfo10setArtistsERK10SmfArtists @ 112 NONAME
+	_ZN12SmfTrackInfo10setCommentERK5QListI10SmfCommentE @ 113 NONAME
+	_ZN12SmfTrackInfo11setDurationERK5QTime @ 114 NONAME
+	_ZN12SmfTrackInfo5setIdERK7QString @ 115 NONAME
+	_ZN12SmfTrackInfo7setTagsERK11QStringList @ 116 NONAME
+	_ZN12SmfTrackInfo7setYearERK9QDateTime @ 117 NONAME
+	_ZN12SmfTrackInfo8setAlbumERK8SmfAlbum @ 118 NONAME
+	_ZN12SmfTrackInfo8setGenreERK7QString @ 119 NONAME
+	_ZN12SmfTrackInfo8setTitleERK7QString @ 120 NONAME
+	_ZN12SmfTrackInfo9setRatingERK14SmfMusicRating @ 121 NONAME
+	_ZN12SmfTrackInfoC1ERKS_ @ 122 NONAME
+	_ZN12SmfTrackInfoC1Ev @ 123 NONAME
+	_ZN12SmfTrackInfoC2ERKS_ @ 124 NONAME
+	_ZN12SmfTrackInfoC2Ev @ 125 NONAME
+	_ZN12SmfTrackInfoD1Ev @ 126 NONAME
+	_ZN12SmfTrackInfoD2Ev @ 127 NONAME
+	_ZN12SmfTrackInfoaSERKS_ @ 128 NONAME
+	_ZN13SmfPluginUtil11getAuthKeysER4QMapI10QByteArrayS1_E7QStringRK9QDateTimeS4_ @ 129 NONAME
+	_ZN13SmfPluginUtil21createParameterStringERK7QStringN21QNetworkAccessManager9OperationERK10QByteArrayS7_18SmfSignatureMethodRK9QMultiMapIS5_S5_E14SmfParsingMode @ 130 NONAME
+	_ZN13SmfPluginUtil5parseEP9QIODevicePb @ 131 NONAME
+	_ZN13SmfPluginUtil5parseERK10QByteArrayPb @ 132 NONAME
+	_ZN13SmfPluginUtil8getNonceER7QStringx @ 133 NONAME
+	_ZN13SmfPluginUtilC1Ev @ 134 NONAME
+	_ZN13SmfPluginUtilC2Ev @ 135 NONAME
+	_ZN13SmfPluginUtilD1Ev @ 136 NONAME
+	_ZN13SmfPluginUtilD2Ev @ 137 NONAME
+	_ZN14SmfMusicRating12setMaxRatingERKi @ 138 NONAME
+	_ZN14SmfMusicRating12setMinRatingERKi @ 139 NONAME
+	_ZN14SmfMusicRating9setRatingERKi @ 140 NONAME
+	_ZN14SmfMusicRatingC1EP12SmfTrackInfo @ 141 NONAME
+	_ZN14SmfMusicRatingC1ERKS_ @ 142 NONAME
+	_ZN14SmfMusicRatingC2EP12SmfTrackInfo @ 143 NONAME
+	_ZN14SmfMusicRatingC2ERKS_ @ 144 NONAME
+	_ZN14SmfMusicRatingD1Ev @ 145 NONAME
+	_ZN14SmfMusicRatingD2Ev @ 146 NONAME
+	_ZN14SmfMusicRatingaSERKS_ @ 147 NONAME
+	_ZN15SmfMusicProfile12setFavoritesERK5QListI12SmfTrackInfoE @ 148 NONAME
+	_ZN15SmfMusicProfile13setUserEventsERK5QListI8SmfEventE @ 149 NONAME
+	_ZN15SmfMusicProfile15setRecentTracksERK5QListI12SmfTrackInfoE @ 150 NONAME
+	_ZN15SmfMusicProfile5setIdERK7QString @ 151 NONAME
+	_ZN15SmfMusicProfileC1ERKS_ @ 152 NONAME
+	_ZN15SmfMusicProfileC1Ev @ 153 NONAME
+	_ZN15SmfMusicProfileC2ERKS_ @ 154 NONAME
+	_ZN15SmfMusicProfileC2Ev @ 155 NONAME
+	_ZN15SmfMusicProfileD1Ev @ 156 NONAME
+	_ZN15SmfMusicProfileD2Ev @ 157 NONAME
+	_ZN15SmfMusicProfileaSERKS_ @ 158 NONAME
+	_ZN15SmfPictureAlbum10addCommentERK10SmfComment @ 159 NONAME
+	_ZN15SmfPictureAlbum11addKeywordsERK11QStringList @ 160 NONAME
+	_ZN15SmfPictureAlbum12setThumbnailERK6QImage @ 161 NONAME
+	_ZN15SmfPictureAlbum13setPostedDateERK9QDateTime @ 162 NONAME
+	_ZN15SmfPictureAlbum13setVisibilityERK20SmfPictureVisibility @ 163 NONAME
+	_ZN15SmfPictureAlbum14setDescriptionERK7QString @ 164 NONAME
+	_ZN15SmfPictureAlbum15setPictureCountEi @ 165 NONAME
+	_ZN15SmfPictureAlbum5setIdERK7QString @ 166 NONAME
+	_ZN15SmfPictureAlbum6setUrlERK4QUrl @ 167 NONAME
+	_ZN15SmfPictureAlbum8setTitleERK7QString @ 168 NONAME
+	_ZN15SmfPictureAlbumC1ERKS_ @ 169 NONAME
+	_ZN15SmfPictureAlbumC1Ev @ 170 NONAME
+	_ZN15SmfPictureAlbumC2ERKS_ @ 171 NONAME
+	_ZN15SmfPictureAlbumC2Ev @ 172 NONAME
+	_ZN15SmfPictureAlbumD1Ev @ 173 NONAME
+	_ZN15SmfPictureAlbumD2Ev @ 174 NONAME
+	_ZN15SmfPictureAlbumaSERKS_ @ 175 NONAME
+	_ZN16SmfActivityEntry10setDetailsERK7SmfPost @ 176 NONAME
+	_ZN16SmfActivityEntry12setTargetObjERK17SmfActivityObject @ 177 NONAME
+	_ZN16SmfActivityEntry13setActionNameE15SmfActivityVerb @ 178 NONAME
+	_ZN16SmfActivityEntry13setActivitiesER5QListI17SmfActivityObjectE @ 179 NONAME
+	_ZN16SmfActivityEntry5setIdERK7QString @ 180 NONAME
+	_ZN16SmfActivityEntry8setTitleERK7SmfPost @ 181 NONAME
+	_ZN16SmfActivityEntry9setAuthorERK10SmfContact @ 182 NONAME
+	_ZN16SmfActivityEntryC1ERKS_ @ 183 NONAME
+	_ZN16SmfActivityEntryC1Ev @ 184 NONAME
+	_ZN16SmfActivityEntryC2ERKS_ @ 185 NONAME
+	_ZN16SmfActivityEntryC2Ev @ 186 NONAME
+	_ZN16SmfActivityEntryD1Ev @ 187 NONAME
+	_ZN16SmfActivityEntryD2Ev @ 188 NONAME
+	_ZN17SmfActivityObject10setCaptionERK7QString @ 189 NONAME
+	_ZN17SmfActivityObject10setContentERK7QString @ 190 NONAME
+	_ZN17SmfActivityObject10setObjDataERK8QVariant @ 191 NONAME
+	_ZN17SmfActivityObject12setThumbnailERK6QImage @ 192 NONAME
+	_ZN17SmfActivityObject5setIdERK7QString @ 193 NONAME
+	_ZN17SmfActivityObject7setLinkERK7QString @ 194 NONAME
+	_ZN17SmfActivityObject7setTimeERK9QDateTime @ 195 NONAME
+	_ZN17SmfActivityObject7setTypeERK21SmfActivityObjectType @ 196 NONAME
+	_ZN17SmfActivityObjectC1ERKS_ @ 197 NONAME
+	_ZN17SmfActivityObjectC1Ev @ 198 NONAME
+	_ZN17SmfActivityObjectC2ERKS_ @ 199 NONAME
+	_ZN17SmfActivityObjectC2Ev @ 200 NONAME
+	_ZN17SmfActivityObjectD1Ev @ 201 NONAME
+	_ZN17SmfActivityObjectD2Ev @ 202 NONAME
+	_ZN17SmfActivityObjectaSERKS_ @ 203 NONAME
+	_ZN19SmfMusicFingerPrint19setMusicFingerPrintERK10QByteArray @ 204 NONAME
+	_ZN19SmfMusicFingerPrint5setIdERK7QString @ 205 NONAME
+	_ZN19SmfMusicFingerPrintC1ERKS_ @ 206 NONAME
+	_ZN19SmfMusicFingerPrintC1Ev @ 207 NONAME
+	_ZN19SmfMusicFingerPrintC2ERKS_ @ 208 NONAME
+	_ZN19SmfMusicFingerPrintC2Ev @ 209 NONAME
+	_ZN19SmfMusicFingerPrintD1Ev @ 210 NONAME
+	_ZN19SmfMusicFingerPrintD2Ev @ 211 NONAME
+	_ZN19SmfMusicFingerPrintaSERKS_ @ 212 NONAME
+	_ZN6SmfUrl12setHhreflangERK7QString @ 213 NONAME
+	_ZN6SmfUrl5setIdERK7QString @ 214 NONAME
+	_ZN6SmfUrl6setRelERK7QString @ 215 NONAME
+	_ZN6SmfUrl7setHrefERK4QUrl @ 216 NONAME
+	_ZN6SmfUrl7setTypeERK7QString @ 217 NONAME
+	_ZN6SmfUrl8setTitleERK7QString @ 218 NONAME
+	_ZN6SmfUrl9setLengthERK7QString @ 219 NONAME
+	_ZN6SmfUrlC1ERKS_ @ 220 NONAME
+	_ZN6SmfUrlC1Ev @ 221 NONAME
+	_ZN6SmfUrlC2ERKS_ @ 222 NONAME
+	_ZN6SmfUrlC2Ev @ 223 NONAME
+	_ZN6SmfUrlD1Ev @ 224 NONAME
+	_ZN6SmfUrlD2Ev @ 225 NONAME
+	_ZN6SmfUrlaSERKS_ @ 226 NONAME
+	_ZN7SmfPost14setDescriptionERK7QString @ 227 NONAME
+	_ZN7SmfPost17setPostedDateTimeER9QDateTime @ 228 NONAME
+	_ZN7SmfPost5setIdE7QString @ 229 NONAME
+	_ZN7SmfPost6setUrlER4QUrl @ 230 NONAME
+	_ZN7SmfPost8setImageERK6QImage @ 231 NONAME
+	_ZN7SmfPost8setOwnerERK10SmfContact @ 232 NONAME
+	_ZN7SmfPost8setTitleERK7QString @ 233 NONAME
+	_ZN7SmfPostC1E10SmfContact7QStringS1_6QImage4QUrl @ 234 NONAME
+	_ZN7SmfPostC1ERKS_ @ 235 NONAME
+	_ZN7SmfPostC1Ev @ 236 NONAME
+	_ZN7SmfPostC2E10SmfContact7QStringS1_6QImage4QUrl @ 237 NONAME
+	_ZN7SmfPostC2ERKS_ @ 238 NONAME
+	_ZN7SmfPostC2Ev @ 239 NONAME
+	_ZN7SmfPostD1Ev @ 240 NONAME
+	_ZN7SmfPostD2Ev @ 241 NONAME
+	_ZN7SmfPostaSERKS_ @ 242 NONAME
+	_ZN8SmfAlbum10setArtistsERK10SmfArtists @ 243 NONAME
+	_ZN8SmfAlbum11setImageUrlERK4QUrl @ 244 NONAME
+	_ZN8SmfAlbum11setLocationERK11SmfLocation @ 245 NONAME
+	_ZN8SmfAlbum13setItemsCountEi @ 246 NONAME
+	_ZN8SmfAlbum14setSecondaryIdERK7QString @ 247 NONAME
+	_ZN8SmfAlbum5setIdERK7QString @ 248 NONAME
+	_ZN8SmfAlbum7setNameERK7QString @ 249 NONAME
+	_ZN8SmfAlbum7setTypeE17SmfAlbumMediaType @ 250 NONAME
+	_ZN8SmfAlbumC1ERKS_ @ 251 NONAME
+	_ZN8SmfAlbumC1Ev @ 252 NONAME
+	_ZN8SmfAlbumC2ERKS_ @ 253 NONAME
+	_ZN8SmfAlbumC2Ev @ 254 NONAME
+	_ZN8SmfAlbumD1Ev @ 255 NONAME
+	_ZN8SmfAlbumD2Ev @ 256 NONAME
+	_ZN8SmfAlbumaSERKS_ @ 257 NONAME
+	_ZN8SmfEvent10setArtistsERK10SmfArtists @ 258 NONAME
+	_ZN8SmfEvent11setDurationERK5QTime @ 259 NONAME
+	_ZN8SmfEvent12setTicketUrlERK4QUrl @ 260 NONAME
+	_ZN8SmfEvent16setEventDateTimeERK9QDateTime @ 261 NONAME
+	_ZN8SmfEvent5setIdERK7QString @ 262 NONAME
+	_ZN8SmfEvent8setTitleERK7QString @ 263 NONAME
+	_ZN8SmfEvent8setVenueERK11SmfLocation @ 264 NONAME
+	_ZN8SmfEventC1ERKS_ @ 265 NONAME
+	_ZN8SmfEventC1Ev @ 266 NONAME
+	_ZN8SmfEventC2ERKS_ @ 267 NONAME
+	_ZN8SmfEventC2Ev @ 268 NONAME
+	_ZN8SmfEventD1Ev @ 269 NONAME
+	_ZN8SmfEventD2Ev @ 270 NONAME
+	_ZN8SmfEventaSERKS_ @ 271 NONAME
+	_ZN8SmfGroup10setMembersEP5QListI10SmfContactE @ 272 NONAME
+	_ZN8SmfGroup5setIdER7QString @ 273 NONAME
+	_ZN8SmfGroup7setNameER7QString @ 274 NONAME
+	_ZN8SmfGroupC1EP5QListI10SmfContactE @ 275 NONAME
+	_ZN8SmfGroupC1ERKS_ @ 276 NONAME
+	_ZN8SmfGroupC2EP5QListI10SmfContactE @ 277 NONAME
+	_ZN8SmfGroupC2ERKS_ @ 278 NONAME
+	_ZN8SmfGroupD1Ev @ 279 NONAME
+	_ZN8SmfGroupD2Ev @ 280 NONAME
+	_ZN8SmfGroupaSERKS_ @ 281 NONAME
+	_ZN9SmfLyrics11setLanguageERK7QString @ 282 NONAME
+	_ZN9SmfLyrics14setReleaseYearERK9QDateTime @ 283 NONAME
+	_ZN9SmfLyrics5setIdERK7QString @ 284 NONAME
+	_ZN9SmfLyrics9setLyricsERK10QByteArray @ 285 NONAME
+	_ZN9SmfLyricsC1ERKS_ @ 286 NONAME
+	_ZN9SmfLyricsC1Ev @ 287 NONAME
+	_ZN9SmfLyricsC2ERKS_ @ 288 NONAME
+	_ZN9SmfLyricsC2Ev @ 289 NONAME
+	_ZN9SmfLyricsD1Ev @ 290 NONAME
+	_ZN9SmfLyricsD2Ev @ 291 NONAME
+	_ZN9SmfLyricsaSERKS_ @ 292 NONAME
+	_ZNK10SmfArtists2idEv @ 293 NONAME
+	_ZNK10SmfArtists3urlEv @ 294 NONAME
+	_ZNK10SmfArtists4tagsEv @ 295 NONAME
+	_ZNK10SmfArtists5imageEv @ 296 NONAME
+	_ZNK10SmfArtists5namesEv @ 297 NONAME
+	_ZNK10SmfComment2idEv @ 298 NONAME
+	_ZNK10SmfComment4textEv @ 299 NONAME
+	_ZNK10SmfComment9timeStampEv @ 300 NONAME
+	_ZNK10SmfContact5valueERK7QString @ 301 NONAME
+	_ZNK10SmfContact7convertERN10QtMobility8QContactE @ 302 NONAME
+	_ZNK10SmfContact8subTypesEv @ 303 NONAME
+	_ZNK10SmfPicture10postedDateEv @ 304 NONAME
+	_ZNK10SmfPicture10visibilityEv @ 305 NONAME
+	_ZNK10SmfPicture11descriptionEv @ 306 NONAME
+	_ZNK10SmfPicture2idEv @ 307 NONAME
+	_ZNK10SmfPicture3urlEv @ 308 NONAME
+	_ZNK10SmfPicture4tagsEv @ 309 NONAME
+	_ZNK10SmfPicture5ownerEv @ 310 NONAME
+	_ZNK10SmfPicture5titleEv @ 311 NONAME
+	_ZNK10SmfPicture7pictureEv @ 312 NONAME
+	_ZNK10SmfPicture8commentsEv @ 313 NONAME
+	_ZNK11SmfLocation15geoPositionInfoEv @ 314 NONAME
+	_ZNK11SmfLocation2idEv @ 315 NONAME
+	_ZNK11SmfLocation3urlEv @ 316 NONAME
+	_ZNK11SmfLocation4cityEv @ 317 NONAME
+	_ZNK11SmfLocation4nameEv @ 318 NONAME
+	_ZNK11SmfLocation6streetEv @ 319 NONAME
+	_ZNK11SmfLocation7countryEv @ 320 NONAME
+	_ZNK11SmfLocation7zipCodeEv @ 321 NONAME
+	_ZNK11SmfPlaylist11attributionEv @ 322 NONAME
+	_ZNK11SmfPlaylist12creationDateEv @ 323 NONAME
+	_ZNK11SmfPlaylist13playListTitleEv @ 324 NONAME
+	_ZNK11SmfPlaylist2idEv @ 325 NONAME
+	_ZNK11SmfPlaylist4infoEv @ 326 NONAME
+	_ZNK11SmfPlaylist5imageEv @ 327 NONAME
+	_ZNK11SmfPlaylist6authorEv @ 328 NONAME
+	_ZNK11SmfPlaylist7licenseEv @ 329 NONAME
+	_ZNK11SmfPlaylist7versionEv @ 330 NONAME
+	_ZNK11SmfPlaylist8commentsEv @ 331 NONAME
+	_ZNK11SmfPlaylist8locationEv @ 332 NONAME
+	_ZNK11SmfPlaylist8metadataEv @ 333 NONAME
+	_ZNK11SmfPlaylist9extensionEv @ 334 NONAME
+	_ZNK11SmfPlaylist9trackListEv @ 335 NONAME
+	_ZNK11SmfProvider10serviceUrlEv @ 336 NONAME
+	_ZNK11SmfProvider11descriptionEv @ 337 NONAME
+	_ZNK11SmfProvider11serviceIconEv @ 338 NONAME
+	_ZNK11SmfProvider11serviceNameEv @ 339 NONAME
+	_ZNK11SmfProvider14applicationUrlEv @ 340 NONAME
+	_ZNK11SmfProvider18supportedLanguagesEv @ 341 NONAME
+	_ZNK11SmfProvider19supportedInterfacesEv @ 342 NONAME
+	_ZNK11SmfSubtitle11releaseYearEv @ 343 NONAME
+	_ZNK11SmfSubtitle11subtitleUrlEv @ 344 NONAME
+	_ZNK11SmfSubtitle2idEv @ 345 NONAME
+	_ZNK11SmfSubtitle8durationEv @ 346 NONAME
+	_ZNK11SmfSubtitle8languageEv @ 347 NONAME
+	_ZNK11SmfSubtitle8subtitleEv @ 348 NONAME
+	_ZNK11SmfSubtitle9frameRateEv @ 349 NONAME
+	_ZNK12SmfTrackInfo2idEv @ 350 NONAME
+	_ZNK12SmfTrackInfo4tagsEv @ 351 NONAME
+	_ZNK12SmfTrackInfo4yearEv @ 352 NONAME
+	_ZNK12SmfTrackInfo5albumEv @ 353 NONAME
+	_ZNK12SmfTrackInfo5genreEv @ 354 NONAME
+	_ZNK12SmfTrackInfo5titleEv @ 355 NONAME
+	_ZNK12SmfTrackInfo6ratingEv @ 356 NONAME
+	_ZNK12SmfTrackInfo7artistsEv @ 357 NONAME
+	_ZNK12SmfTrackInfo8commentsEv @ 358 NONAME
+	_ZNK12SmfTrackInfo8durationEv @ 359 NONAME
+	_ZNK13SmfPluginUtil11errorStringEv @ 360 NONAME
+	_ZNK13SmfPluginUtil9errorLineEv @ 361 NONAME
+	_ZNK14SmfMusicRating6ratingEv @ 362 NONAME
+	_ZNK14SmfMusicRating9maxRatingEv @ 363 NONAME
+	_ZNK14SmfMusicRating9minRatingEv @ 364 NONAME
+	_ZNK15SmfMusicProfile10userEventsEv @ 365 NONAME
+	_ZNK15SmfMusicProfile12recentTracksEv @ 366 NONAME
+	_ZNK15SmfMusicProfile2idEv @ 367 NONAME
+	_ZNK15SmfMusicProfile9favoritesEv @ 368 NONAME
+	_ZNK15SmfPictureAlbum10postedDateEv @ 369 NONAME
+	_ZNK15SmfPictureAlbum10visibilityEv @ 370 NONAME
+	_ZNK15SmfPictureAlbum11descriptionEv @ 371 NONAME
+	_ZNK15SmfPictureAlbum12pictureCountEv @ 372 NONAME
+	_ZNK15SmfPictureAlbum2idEv @ 373 NONAME
+	_ZNK15SmfPictureAlbum3urlEv @ 374 NONAME
+	_ZNK15SmfPictureAlbum5titleEv @ 375 NONAME
+	_ZNK15SmfPictureAlbum8commentsEv @ 376 NONAME
+	_ZNK15SmfPictureAlbum8keywordsEv @ 377 NONAME
+	_ZNK15SmfPictureAlbum9thumbnailEv @ 378 NONAME
+	_ZNK16SmfActivityEntry10actionNameEv @ 379 NONAME
+	_ZNK16SmfActivityEntry10activitiesEv @ 380 NONAME
+	_ZNK16SmfActivityEntry2idEv @ 381 NONAME
+	_ZNK16SmfActivityEntry5titleEv @ 382 NONAME
+	_ZNK16SmfActivityEntry6authorEv @ 383 NONAME
+	_ZNK16SmfActivityEntry7detailsEv @ 384 NONAME
+	_ZNK16SmfActivityEntry9targetObjEv @ 385 NONAME
+	_ZNK17SmfActivityObject2idEv @ 386 NONAME
+	_ZNK17SmfActivityObject4linkEv @ 387 NONAME
+	_ZNK17SmfActivityObject4timeEv @ 388 NONAME
+	_ZNK17SmfActivityObject4typeEv @ 389 NONAME
+	_ZNK17SmfActivityObject7captionEv @ 390 NONAME
+	_ZNK17SmfActivityObject7contentEv @ 391 NONAME
+	_ZNK17SmfActivityObject7objDataEv @ 392 NONAME
+	_ZNK17SmfActivityObject9thumbnailEv @ 393 NONAME
+	_ZNK19SmfMusicFingerPrint16musicFingerPrintEv @ 394 NONAME
+	_ZNK19SmfMusicFingerPrint2idEv @ 395 NONAME
+	_ZNK6SmfUrl2idEv @ 396 NONAME
+	_ZNK6SmfUrl3relEv @ 397 NONAME
+	_ZNK6SmfUrl4hrefEv @ 398 NONAME
+	_ZNK6SmfUrl4typeEv @ 399 NONAME
+	_ZNK6SmfUrl5titleEv @ 400 NONAME
+	_ZNK6SmfUrl6lengthEv @ 401 NONAME
+	_ZNK6SmfUrl8hreflangEv @ 402 NONAME
+	_ZNK7SmfPost11descriptionEv @ 403 NONAME
+	_ZNK7SmfPost14postedDateTimeEv @ 404 NONAME
+	_ZNK7SmfPost2idEv @ 405 NONAME
+	_ZNK7SmfPost3urlEv @ 406 NONAME
+	_ZNK7SmfPost5imageEv @ 407 NONAME
+	_ZNK7SmfPost5ownerEv @ 408 NONAME
+	_ZNK7SmfPost5titleEv @ 409 NONAME
+	_ZNK8SmfAlbum10itemsCountEv @ 410 NONAME
+	_ZNK8SmfAlbum11secondaryIdEv @ 411 NONAME
+	_ZNK8SmfAlbum2idEv @ 412 NONAME
+	_ZNK8SmfAlbum4nameEv @ 413 NONAME
+	_ZNK8SmfAlbum4typeEv @ 414 NONAME
+	_ZNK8SmfAlbum7artistsEv @ 415 NONAME
+	_ZNK8SmfAlbum8imageUrlEv @ 416 NONAME
+	_ZNK8SmfAlbum8locationEv @ 417 NONAME
+	_ZNK8SmfEvent13eventDateTimeEv @ 418 NONAME
+	_ZNK8SmfEvent2idEv @ 419 NONAME
+	_ZNK8SmfEvent5titleEv @ 420 NONAME
+	_ZNK8SmfEvent5venueEv @ 421 NONAME
+	_ZNK8SmfEvent7artistsEv @ 422 NONAME
+	_ZNK8SmfEvent8durationEv @ 423 NONAME
+	_ZNK8SmfEvent9ticketUrlEv @ 424 NONAME
+	_ZNK8SmfGroup2idEv @ 425 NONAME
+	_ZNK8SmfGroup4nameEv @ 426 NONAME
+	_ZNK8SmfGroup7membersEv @ 427 NONAME
+	_ZNK9SmfLyrics11releaseYearEv @ 428 NONAME
+	_ZNK9SmfLyrics2idEv @ 429 NONAME
+	_ZNK9SmfLyrics6lyricsEv @ 430 NONAME
+	_ZNK9SmfLyrics8languageEv @ 431 NONAME
+	_ZlsR11QDataStreamRK10SmfArtists @ 432 NONAME
+	_ZlsR11QDataStreamRK10SmfComment @ 433 NONAME
+	_ZlsR11QDataStreamRK10SmfContact @ 434 NONAME
+	_ZlsR11QDataStreamRK10SmfPicture @ 435 NONAME
+	_ZlsR11QDataStreamRK11SmfLocation @ 436 NONAME
+	_ZlsR11QDataStreamRK11SmfPlaylist @ 437 NONAME
+	_ZlsR11QDataStreamRK11SmfProvider @ 438 NONAME
+	_ZlsR11QDataStreamRK11SmfSubtitle @ 439 NONAME
+	_ZlsR11QDataStreamRK12SmfTrackInfo @ 440 NONAME
+	_ZlsR11QDataStreamRK14SmfMusicRating @ 441 NONAME
+	_ZlsR11QDataStreamRK15SmfMusicProfile @ 442 NONAME
+	_ZlsR11QDataStreamRK15SmfPictureAlbum @ 443 NONAME
+	_ZlsR11QDataStreamRK16SmfActivityEntry @ 444 NONAME
+	_ZlsR11QDataStreamRK17SmfActivityObject @ 445 NONAME
+	_ZlsR11QDataStreamRK19SmfMusicFingerPrint @ 446 NONAME
+	_ZlsR11QDataStreamRK6SmfUrl @ 447 NONAME
+	_ZlsR11QDataStreamRK7SmfPost @ 448 NONAME
+	_ZlsR11QDataStreamRK8SmfAlbum @ 449 NONAME
+	_ZlsR11QDataStreamRK8SmfEvent @ 450 NONAME
+	_ZlsR11QDataStreamRK8SmfGroup @ 451 NONAME
+	_ZlsR11QDataStreamRK9SmfLyrics @ 452 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility10QContactIdE @ 453 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility11QContactUrlE @ 454 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility12QContactGuidE @ 455 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility12QContactNameE @ 456 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility12QContactNoteE @ 457 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility12QContactTypeE @ 458 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility14QContactAvatarE @ 459 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility14QContactGenderE @ 460 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility15QContactAddressE @ 461 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility16QContactBirthdayE @ 462 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility16QContactNicknameE @ 463 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility16QContactPresenceE @ 464 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility17QContactThumbnailE @ 465 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility17QContactTimestampE @ 466 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility19QContactAnniversaryE @ 467 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility19QContactGeoLocationE @ 468 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility19QContactPhoneNumberE @ 469 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility20QContactEmailAddressE @ 470 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility20QContactOrganizationE @ 471 NONAME
+	_ZlsR11QDataStreamRKN10QtMobility21QContactOnlineAccountE @ 472 NONAME
+	_ZrsR11QDataStreamR10SmfArtists @ 473 NONAME
+	_ZrsR11QDataStreamR10SmfComment @ 474 NONAME
+	_ZrsR11QDataStreamR10SmfContact @ 475 NONAME
+	_ZrsR11QDataStreamR10SmfPicture @ 476 NONAME
+	_ZrsR11QDataStreamR11SmfLocation @ 477 NONAME
+	_ZrsR11QDataStreamR11SmfPlaylist @ 478 NONAME
+	_ZrsR11QDataStreamR11SmfProvider @ 479 NONAME
+	_ZrsR11QDataStreamR11SmfSubtitle @ 480 NONAME
+	_ZrsR11QDataStreamR12SmfTrackInfo @ 481 NONAME
+	_ZrsR11QDataStreamR14SmfMusicRating @ 482 NONAME
+	_ZrsR11QDataStreamR15SmfMusicProfile @ 483 NONAME
+	_ZrsR11QDataStreamR15SmfPictureAlbum @ 484 NONAME
+	_ZrsR11QDataStreamR16SmfActivityEntry @ 485 NONAME
+	_ZrsR11QDataStreamR17SmfActivityObject @ 486 NONAME
+	_ZrsR11QDataStreamR19SmfMusicFingerPrint @ 487 NONAME
+	_ZrsR11QDataStreamR6SmfUrl @ 488 NONAME
+	_ZrsR11QDataStreamR7SmfPost @ 489 NONAME
+	_ZrsR11QDataStreamR8SmfAlbum @ 490 NONAME
+	_ZrsR11QDataStreamR8SmfEvent @ 491 NONAME
+	_ZrsR11QDataStreamR8SmfGroup @ 492 NONAME
+	_ZrsR11QDataStreamR9SmfLyrics @ 493 NONAME
+	_ZrsR11QDataStreamRN10QtMobility10QContactIdE @ 494 NONAME
+	_ZrsR11QDataStreamRN10QtMobility11QContactUrlE @ 495 NONAME
+	_ZrsR11QDataStreamRN10QtMobility12QContactGuidE @ 496 NONAME
+	_ZrsR11QDataStreamRN10QtMobility12QContactNameE @ 497 NONAME
+	_ZrsR11QDataStreamRN10QtMobility12QContactNoteE @ 498 NONAME
+	_ZrsR11QDataStreamRN10QtMobility12QContactTypeE @ 499 NONAME
+	_ZrsR11QDataStreamRN10QtMobility14QContactAvatarE @ 500 NONAME
+	_ZrsR11QDataStreamRN10QtMobility14QContactGenderE @ 501 NONAME
+	_ZrsR11QDataStreamRN10QtMobility15QContactAddressE @ 502 NONAME
+	_ZrsR11QDataStreamRN10QtMobility16QContactBirthdayE @ 503 NONAME
+	_ZrsR11QDataStreamRN10QtMobility16QContactNicknameE @ 504 NONAME
+	_ZrsR11QDataStreamRN10QtMobility16QContactPresenceE @ 505 NONAME
+	_ZrsR11QDataStreamRN10QtMobility17QContactThumbnailE @ 506 NONAME
+	_ZrsR11QDataStreamRN10QtMobility17QContactTimestampE @ 507 NONAME
+	_ZrsR11QDataStreamRN10QtMobility19QContactAnniversaryE @ 508 NONAME
+	_ZrsR11QDataStreamRN10QtMobility19QContactGeoLocationE @ 509 NONAME
+	_ZrsR11QDataStreamRN10QtMobility19QContactPhoneNumberE @ 510 NONAME
+	_ZrsR11QDataStreamRN10QtMobility20QContactEmailAddressE @ 511 NONAME
+	_ZrsR11QDataStreamRN10QtMobility20QContactOrganizationE @ 512 NONAME
+	_ZrsR11QDataStreamRN10QtMobility21QContactOnlineAccountE @ 513 NONAME
 
--- a/smf/smfservermodule/smfcommon/smfalbum.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfalbum.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -13,7 +13,7 @@
  * Manasij Roy, Nalina Hariharan
  * 
  * Description:
- * The SmfAlbum class represents a music album
+ * The SmfAlbum class represents an album
  *
  */
 
@@ -46,9 +46,13 @@
 SmfAlbum& SmfAlbum::operator=( const SmfAlbum &aOther )
 	{
 	d->m_name = aOther.d->m_name;
-	d->m_image = aOther.d->m_image;
+	d->m_imageUrl = aOther.d->m_imageUrl;
 	d->m_artists = aOther.d->m_artists;
+	d->m_location = aOther.d->m_location;
+	d->m_itemCount = aOther.d->m_itemCount;
+	d->m_type = aOther.d->m_type;
 	d->m_albumId = aOther.d->m_albumId;
+	d->m_secondaryId = aOther.d->m_secondaryId;
 	return *this;
 	}
 
@@ -69,12 +73,12 @@
 	}
 
 /**
- * Method to get the album's image
- * @return The album's image
+ * Method to get the album's image url if any
+ * @return The album's image url if any
  */
-QImage SmfAlbum::image( ) const
+QUrl SmfAlbum::imageUrl( ) const
 	{
-	return d->m_image;
+	return d->m_imageUrl;
 	}
 
 /**
@@ -87,6 +91,33 @@
 	}
 
 /**
+ * Method to get the location of this album
+ * @return The location of this album
+ */
+SmfLocation SmfAlbum::location( ) const
+	{
+	return d->m_location;
+	}
+
+/**
+ * Method to get the number of items in this album
+ * @return The number of items in this album
+ */
+int SmfAlbum::itemsCount( ) const
+	{
+	return d->m_itemCount;
+	}
+
+/**
+ * Method to get the type of this album
+ * @return The type of this album
+ */
+SmfAlbumMediaType SmfAlbum::type( ) const
+	{
+	return d->m_type;
+	}
+
+/**
  * Method to get the id of the album
  * @return The ID value 
  */
@@ -96,6 +127,16 @@
 	}
 
 /**
+ * Method to get the secondary id of the album, e.g. musicbrainz id of the album for a music album
+ * @return The ID value 
+ */
+QString SmfAlbum::secondaryId( ) const
+	{
+	return d->m_secondaryId;
+	}	
+
+
+/**
  * Method to set the album name
  * @param aName The album name
  */
@@ -105,12 +146,12 @@
 	}
 
 /**
- * Method to set the album's image
- * @param aImage The album's image
+ * Method to set the album's image url
+ * @param aUrl The album's image url
  */
-void SmfAlbum::setImage( const QImage &aImage )
+void SmfAlbum::setImageUrl( const QUrl &aUrl )
 	{
-	d->m_image = aImage;
+	d->m_imageUrl = aUrl;
 	}
 
 /**
@@ -123,6 +164,33 @@
 	}
 
 /**
+ * Method to set the location of this album
+ * @param aLoc The location of the album
+ */
+void SmfAlbum::setLocation(const SmfLocation &aLoc )
+	{
+	d->m_location = aLoc;
+	}
+
+/**
+ * Method to set the number of items in this album
+ * @param aCount the number of items in this album
+ */
+void SmfAlbum::setItemsCount( const int aCount )
+	{
+	d->m_itemCount = aCount;
+	}
+
+/**
+ * Method to set the type of this album
+ * @param aType the type of this album
+ */
+void SmfAlbum::setType(SmfAlbumMediaType aType)
+	{
+	d->m_type = aType;
+	}
+
+/**
  * Method to set the id of the album
  * @param aId The ID value 
  */
@@ -132,6 +200,16 @@
 	}
 
 /**
+ * Method to set the secondary id of the album, e.g. musicbrainz id of the album for a music album
+ * @param aSecondaryID the secondaryID of this album 
+ */
+void SmfAlbum::setSecondaryId( const QString &aSecondaryID )
+	{
+	d->m_secondaryId = aSecondaryID;
+	}
+
+
+/**
  * Method for Externalization. Writes the SmfAlbum object to 
  * the stream and returns a reference to the stream.
  * @param aDataStream Stream to be written
@@ -144,15 +222,27 @@
 	// Serialize d->m_name
 	aDataStream<<aAlbum.d->m_name;
 	
-	// Serialize d->m_image
-	aDataStream<<aAlbum.d->m_image;
+	// Serialize d->m_imageUrl
+	aDataStream<<aAlbum.d->m_imageUrl;
 	
 	// Serialize d->m_artists
 	aDataStream<<aAlbum.d->m_artists;
 	
+	// Serialize d->m_location
+	aDataStream<<aAlbum.d->m_location;
+	
+	// Serialize d->m_itemCount
+	aDataStream<<aAlbum.d->m_itemCount;
+	
+	// Serialize d->m_type
+	aDataStream<<aAlbum.d->m_type;
+	
 	// Serialize d->m_albumId
 	aDataStream<<aAlbum.d->m_albumId;
 	
+	// Serialize d->m_secondaryId
+	aDataStream<<aAlbum.d->m_secondaryId;
+	
 	return aDataStream;
 	}
 
@@ -169,14 +259,28 @@
 	// Deserialize d->m_name
 	aDataStream>>aAlbum.d->m_name;
 	
-	// Deserialize d->m_image
-	aDataStream>>aAlbum.d->m_image;
+	// Deserialize d->m_imageUrl
+	aDataStream>>aAlbum.d->m_imageUrl;
 	
 	// Deserialize d->m_artists
 	aDataStream>>aAlbum.d->m_artists;
 	
+	// Deserialize d->m_location
+	aDataStream>>aAlbum.d->m_location;
+	
+	// Deserialize d->m_itemCount
+	aDataStream>>aAlbum.d->m_itemCount;
+	
+	// Deserialize d->m_type
+	int val;
+	aDataStream>>val;
+	aAlbum.d->m_type = (SmfAlbumMediaType)val;
+	
 	// Deserialize d->m_albumId
 	aDataStream>>aAlbum.d->m_albumId;
 	
+	// Deserialize d->m_secondaryId
+	aDataStream>>aAlbum.d->m_secondaryId;
+	
 	return aDataStream;
 	}
--- a/smf/smfservermodule/smfcommon/smfalbum.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfalbum.h	Thu Sep 23 17:43:31 2010 +0530
@@ -13,7 +13,7 @@
  * Manasij Roy, Nalina Hariharan
  * 
  * Description:
- * The SmfAlbum class represents a music album
+ * The SmfAlbum class represents an album
  *
  */
 #ifndef SMFALBUM_H_
@@ -22,11 +22,22 @@
 #include <QImage>
 #include <qdatastream.h>
 #include <QSharedData>
+#include <QMetaType>
 #include <smfclientglobal.h>
-#include <QMetaType>
 
 class SmfAlbumPrivate;
 class SmfArtists;
+class SmfLocation;
+
+
+// Enums
+enum SmfAlbumMediaType
+	{
+	SmfAlbumUnspecified,
+	SmfAlbumMusic,
+	SmfAlbumVideo,
+	SmfAlbumMixed
+	};
 
 /**
  * @ingroup smf_common_group
@@ -65,10 +76,10 @@
 	QString name( ) const;
 	
 	/**
-	 * Method to get the album's image
-	 * @return The album's image
+	 * Method to get the album's image url if any
+	 * @return The album's image url if any
 	 */
-	QImage image( ) const;
+	QUrl imageUrl( ) const;
 	
 	/**
 	 * Method to get the artist names
@@ -77,22 +88,47 @@
 	SmfArtists artists( ) const;
 	
 	/**
-	 * Method to get the id of the album
+	 * Method to get the location of this album
+	 * @return The location of this album
+	 */
+	SmfLocation location( ) const;
+	
+	/**
+	 * Method to get the number of items in this album
+	 * @return The number of items in this album
+	 */
+	int itemsCount( ) const;
+
+	/**
+	 * Method to get the type of this album
+	 * @return The type of this album
+	 */
+	SmfAlbumMediaType type( ) const;
+	
+	/**
+	 * Method to get the id of the album, id is unique to service provider
 	 * @return The ID value 
 	 */
 	QString id( ) const;
 	
 	/**
+	 * Method to get the secondary id of the album, e.g. musicbrainz id of the album for a music album
+	 * @return The ID value 
+	 */
+	QString secondaryId( ) const;
+	
+	
+	/**
 	 * Method to set the album name
 	 * @param aName The album name
 	 */
 	void setName( const QString &aName );
 	
 	/**
-	 * Method to set the album's image
-	 * @param aImage The album's image
+	 * Method to set the album's image url
+	 * @param aUrl The album's image url
 	 */
-	void setImage( const QImage &aImage );
+	void setImageUrl( const QUrl &aUrl );
 	
 	/**
 	 * Method to set the artist names
@@ -101,11 +137,36 @@
 	void setArtists( const SmfArtists &aArtists );
 	
 	/**
+	 * Method to set the location of this album
+	 * @param aLoc The location of the album
+	 */
+	void setLocation(const SmfLocation &aLoc );
+	
+	/**
+	 * Method to set the number of items in this album
+	 * @param aCount the number of items in this album
+	 */
+	void setItemsCount( const int aCount );
+
+	/**
+	 * Method to set the type of this album
+	 * @param aType the type of this album
+	 */
+	void setType(SmfAlbumMediaType aType);
+	
+	/**
 	 * Method to set the id of the album
 	 * @param aId The ID value 
 	 */
 	void setId( const QString &aId );
 	
+	/**
+	 * Method to set the secondary id of the album, e.g. musicbrainz id of the album for a music album
+	 * @param aSecondaryID the secondaryID of this album 
+	 */
+	void setSecondaryId( const QString &aSecondaryID );
+	
+	
 private:
 	QSharedDataPointer<SmfAlbumPrivate> d;
 	
@@ -138,6 +199,8 @@
 SMFCOMMON_EXPORT QDataStream &operator>>( QDataStream &aDataStream, 
 		SmfAlbum &aAlbum);
 
+typedef QList<SmfAlbum> SmfAlbumList;
+
 // Make the class SmfAlbum known to QMetaType, so that as to register it.
 Q_DECLARE_METATYPE(SmfAlbum)
 Q_DECLARE_METATYPE(QList<SmfAlbum>)
--- a/smf/smfservermodule/smfcommon/smfalbum_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfalbum_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -20,7 +20,9 @@
 #ifndef SMFALBUM_P_H_
 #define SMFALBUM_P_H_
 
+#include <smfalbum.h>
 #include <smfartists.h>
+#include <smflocation.h>
 #include <QStringList>
 #include <QSharedData>
 
@@ -31,9 +33,12 @@
 	 * Constructor
 	 */
 	SmfAlbumPrivate( ) { 
-		m_name.clear(); 
+		m_name.clear();
+		m_imageUrl.clear();
+		m_itemCount = 0;
+		m_type = SmfAlbumUnspecified;
 		m_albumId.clear();
-		
+		m_secondaryId.clear();
 	}
 	
 	/**
@@ -43,9 +48,13 @@
 	SmfAlbumPrivate( const SmfAlbumPrivate &aOther ) : 
 		QSharedData ( aOther ), 
 		m_name ( aOther.m_name ), 
-		m_image ( aOther.m_image ),
+		m_imageUrl ( aOther.m_imageUrl ),
 		m_artists ( aOther.m_artists ),
-		m_albumId ( aOther.m_albumId ) 	{ }
+		m_location ( aOther.m_location ),
+		m_itemCount ( aOther.m_itemCount ),
+		m_type ( aOther.m_type ),
+		m_albumId ( aOther.m_albumId ),
+		m_secondaryId ( aOther.m_secondaryId ) { }
 	
 	/**
 	 * Destructor
@@ -54,10 +63,15 @@
 		{
 		}
   
-	QString		m_name;		// album name
-	QImage 		m_image;	// album image
+	QString	m_name;			// album name
+	QUrl m_imageUrl;		// album's image url
 	SmfArtists m_artists;	// album's artists
-	QString 	m_albumId;	// album Id
+	SmfLocation m_location;	// album's location
+	int m_itemCount;		// count of items in the album
+	SmfAlbumMediaType m_type;// type of media in the album
+	QString m_albumId;		// album Id
+	QString m_secondaryId;	// the secondary id of the album, e.g.- 
+							//-musicbrainz id of the album for a music album
 	
 };
 
--- a/smf/smfservermodule/smfcommon/smfartists.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfartists.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -47,6 +47,8 @@
 	d->m_names = aOther.d->m_names;
 	d->m_image = aOther.d->m_image;
 	d->m_url = aOther.d->m_url;
+	d->m_tags = aOther.d->m_tags;
+	d->m_id = aOther.d->m_id;
 	return *this;
 	}
 
@@ -85,6 +87,24 @@
 	}
 
 /**
+ * Method to get the tags applied for artist(s) 
+ * @return list of tags, NULL if not supported
+ */
+QStringList SmfArtists::tags( ) const
+	{
+	return d->m_tags;
+	}
+
+/**
+ * Service specific Id for this artist(s), e.g. could be musicbrainz id for this artist 
+ * @return service specific id of the artists, NULL if not supported
+ */
+QString SmfArtists::id( ) const
+	{
+	return d->m_id;
+	}
+
+/**
  * Method to set the artists names
  * @param aList The list of artists names
  */
@@ -110,7 +130,25 @@
 	{
 	d->m_url = aUrl;
 	}
-	
+
+/**
+ * Method to set tags of the artists
+ * @param aTags tags for the artists
+ */
+void SmfArtists::setTags( const QStringList &aTags )
+	{
+	d->m_tags = aTags;
+	}
+
+/**
+ * Method to set the service specific ID of the artists
+ * @param aId The id of the artists
+ */
+void SmfArtists::setId( const QString &aId )
+	{
+	d->m_id = aId;
+	}
+
 /**
  * Method for Externalization. Writes the SmfArtists object to 
  * the stream and returns a reference to the stream.
@@ -130,6 +168,12 @@
 	// Serialize d->m_url
 	aDataStream<<aArtists.d->m_url;
 	
+	// Serialize d->m_tags
+	aDataStream<<aArtists.d->m_tags;
+	
+	// Serialize d->m_id
+	aDataStream<<aArtists.d->m_id;
+	
 	return aDataStream;
 	}
 
@@ -152,6 +196,12 @@
 	// Deserialize d->m_url
 	aDataStream>>aArtists.d->m_url;
 	
+	// Deserialize d->m_tags
+	aDataStream>>aArtists.d->m_tags;
+	
+	// Deserialize d->m_id
+	aDataStream>>aArtists.d->m_id;
+	
 	return aDataStream;
 	}
 
--- a/smf/smfservermodule/smfcommon/smfartists.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfartists.h	Thu Sep 23 17:43:31 2010 +0530
@@ -66,17 +66,29 @@
 	
 	/**
 	 * Method to get the image of the artists
-	 * @return The image of te artists
+	 * @return The image of the artists if available, always small size is fetched
 	 */
 	QImage image( ) const;
 	
 	/**
 	 * Method to get the url of the artists
-	 * @return The url of the artists
+	 * @return The url of the artists, NULL if not present
 	 */
 	QUrl url( ) const;
+
+	/**
+	 * Method to get the tags applied for artist(s) 
+	 * @return list of tags, NULL if not supported
+	 */
+	QStringList tags( ) const;
 	
 	/**
+	 * Service specific Id for this artist(s), e.g. could be musicbrainz id for this artist 
+	 * @return service specific id of the artists, NULL if not supported
+	 */
+	QString id( ) const;
+
+	/**
 	 * Method to set the artists names
 	 * @param aList The list of artists names
 	 */
@@ -93,6 +105,18 @@
 	 * @param aUrl The url of the artists
 	 */
 	void setUrl( const QUrl &aUrl );
+	
+	/**
+	 * Method to set tags of the artists
+	 * @param aTags tags for the artists
+	 */
+	void setTags( const QStringList &aTags );
+
+	/**
+	 * Method to set the service specific ID of the artists
+	 * @param aId The id of the artists
+	 */
+	void setId( const QString &aId );
 		
 private:
 	QSharedDataPointer<SmfArtistsPrivate> d;
@@ -126,6 +150,8 @@
 SMFCOMMON_EXPORT QDataStream &operator>>( QDataStream &aDataStream, 
 		SmfArtists &aArtists);
 
+typedef QList<SmfArtists> SmfArtistsList;
+
 // Make the class SmfArtists known to QMetaType, so that as to register it.
 Q_DECLARE_METATYPE(SmfArtists)
 Q_DECLARE_METATYPE(QList<SmfArtists>)
--- a/smf/smfservermodule/smfcommon/smfartists_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfartists_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -34,6 +34,8 @@
 	SmfArtistsPrivate( ) { 
 		m_names.clear(); 
 		m_url.clear();
+		m_tags.clear();
+		m_id.clear();
 	}
 	
 	/**
@@ -44,7 +46,9 @@
 		QSharedData ( aOther ), 
 		m_names ( aOther.m_names ), 
 		m_image ( aOther.m_image ),
-		m_url ( aOther.m_url ) 	{ }
+		m_url ( aOther.m_url ),
+		m_tags ( aOther.m_tags ),
+		m_id ( aOther.m_id ) { }
 	
 	/**
 	 * Destructor
@@ -56,6 +60,8 @@
 	QStringList	m_names;	// artist names
 	QImage 		m_image;	// image
 	QUrl 		m_url;		// url
+	QStringList m_tags;		// tags
+	QString		m_id;		// id
 };
 
 
--- a/smf/smfservermodule/smfcommon/smfcommon.pro	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfcommon.pro	Thu Sep 23 17:43:31 2010 +0530
@@ -88,48 +88,13 @@
         WriteDeviceData
     TARGET.EPOCALLOWDLLDATA = 1
     LIBS += -lqjson.dll -lsmfcredmgrclient
-    
-   	BLD_INF_RULES.prj_exports += smfclientglobal.h
-	BLD_INF_RULES.prj_exports += smfglobal.h
-	BLD_INF_RULES.prj_exports += smfobserver.h
-	BLD_INF_RULES.prj_exports += smfactions.h
-	BLD_INF_RULES.prj_exports += smfactions_p.h
-	BLD_INF_RULES.prj_exports += smfalbum.h
-	BLD_INF_RULES.prj_exports += smfalbum_p.h
-	BLD_INF_RULES.prj_exports += smfartists.h
-	BLD_INF_RULES.prj_exports += smfartists_p.h
-	BLD_INF_RULES.prj_exports += smfcomment.h
-	BLD_INF_RULES.prj_exports += smfcomment_p.h
-	BLD_INF_RULES.prj_exports += smfcontact.h
-	BLD_INF_RULES.prj_exports += smfcontact_p.h
-	BLD_INF_RULES.prj_exports += smfevent.h
-	BLD_INF_RULES.prj_exports += smfevent_p.h
-	BLD_INF_RULES.prj_exports += smfgroup.h
-	BLD_INF_RULES.prj_exports += smfgroup_p.h
-	BLD_INF_RULES.prj_exports += smflocation.h
-	BLD_INF_RULES.prj_exports += smflocation_p.h
-	BLD_INF_RULES.prj_exports += smflyrics.h
-	BLD_INF_RULES.prj_exports += smflyrics_p.h
-	BLD_INF_RULES.prj_exports += smfmusicfingerprint.h
-	BLD_INF_RULES.prj_exports += smfmusicfingerprint_p.h
-	BLD_INF_RULES.prj_exports += smfmusicprofile.h
-	BLD_INF_RULES.prj_exports += smfmusicprofile_p.h
-	BLD_INF_RULES.prj_exports += smfmusicrating.h
-	BLD_INF_RULES.prj_exports += smfmusicrating_p.h
-	BLD_INF_RULES.prj_exports += smfpicture.h
-	BLD_INF_RULES.prj_exports += smfpicture_p.h
-	BLD_INF_RULES.prj_exports += smfpicturealbum.h
-	BLD_INF_RULES.prj_exports += smfpicturealbum_p.h
-	BLD_INF_RULES.prj_exports += smfplaylist.h
-	BLD_INF_RULES.prj_exports += smfplaylist_p.h
-	BLD_INF_RULES.prj_exports += smfpluginutil.h
-	BLD_INF_RULES.prj_exports += smfpost.h
-	BLD_INF_RULES.prj_exports += smfpost_p.h
-	BLD_INF_RULES.prj_exports += smfprovider.h
-	BLD_INF_RULES.prj_exports += smfsubtitle.h
-	BLD_INF_RULES.prj_exports += smfsubtitle_p.h
-	BLD_INF_RULES.prj_exports += smftrackinfo.h
-	BLD_INF_RULES.prj_exports += smftrackinfo_p.h
-	BLD_INF_RULES.prj_exports += smfurl.h
-	BLD_INF_RULES.prj_exports += smfurl_p.h
-}
\ No newline at end of file
+}
+
+symbian: {
+  #export public header to \epocroot\epoc32\include to be able to use them
+  headers.files = $$PUBLIC_HEADERS
+  headers.path = $$PWD
+  for(header, headers.files) {
+    {BLD_INF_RULES.prj_exports += "$$header"}
+  }
+}
--- a/smf/smfservermodule/smfcommon/smfcontact.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfcontact.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -22,6 +22,7 @@
 #include <QTextStream>
 
 #include "smfcontact.h"
+#include "smfcontact_p.h"
 
 /**
  * Constructor with default argument
--- a/smf/smfservermodule/smfcommon/smfcontact.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfcontact.h	Thu Sep 23 17:43:31 2010 +0530
@@ -27,10 +27,13 @@
 #include <QVariant>
 
 #include "smfclientglobal.h"
-#include "smfcontact_p.h"
+
 
 using namespace QtMobility;
 
+/* forward declaration*/
+class SmfContactPrivate;
+
 /**
  * Max size for one SmfContact
  */
--- a/smf/smfservermodule/smfcommon/smfglobal.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfglobal.h	Thu Sep 23 17:43:31 2010 +0530
@@ -92,6 +92,7 @@
 enum SmfRequestTypeID
 	{
 	SmfGetService,
+	SmfCancelRequest,
 	SmfContactGetFriends,
 	SmfContactGetFollowers,
 	SmfContactSearch,
@@ -114,17 +115,18 @@
 	SmfMusicGetLyrics,
 	SmfMusicGetSubtitle,
 	SmfMusicLyricsCustomRequest,
-	SmfMusicGetEventsOnLoc,
-	SmfMusicGetVenueOnLoc,
-	//SmfMusicGetEventsOnVenue, - removed
-	SmfMusicPostEvents,
-	SmfMusicEventsCustomRequest,
 	SmfMusicGetRecommendations,
-	SmfMusicGetTracks,
+	SmfMusicGetTracksSimilar,
+	SmfMusicGetTracksOfAlbum,
+	SmfMusicGetTracksOfArtist,
 	SmfMusicGetTrackInfo,
 	SmfMusicGetStores,
 	SmfMusicSearchCustomRequest,
 	SmfMusicGetUserInfo,
+	SmfMusicSearchArtist,
+	SmfMusicSearchAlbum,
+	SmfMusicSearchEvent,
+	SmfMusicSearchVenue,
 	SmfMusicSearchUser,
 	SmfMusicPostCurrentPlaying,
 	SmfMusicPostRating,
@@ -146,6 +148,11 @@
 	SmfActivityFiltered,
 	SmfActivitySelfActivity,
 	SmfActivityCustomRequest,
+	SmfEventsGetEvents,
+	SmfEventsGetVenues,
+	SmfEventsGetEventAttendees,
+	SmfEventsPostEvents,
+	SmfEventsCustomRequest,
 	SmfRelationCreate,//SmfRelationMngr start
 	SmfRelationAssociate,
 	SmfRelationRemove,
@@ -356,5 +363,6 @@
 const QString musicEventServiceInterface("org.symbian.smf.plugin.music.events\0.2");
 const QString lyricsServiceInterface("org.symbian.smf.plugin.music.lyrics\0.2");
 const QString activityFetcherInterface("org.symbian.smf.plugin.activity.fetcher\0.2");
+const QString eventFetcherInterface("org.symbian.smf.plugin.events.fetcher\0.2");
 
 #endif /* SMFGLOBAL_H_ */
--- a/smf/smfservermodule/smfcommon/smfgroup.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfgroup.h	Thu Sep 23 17:43:31 2010 +0530
@@ -24,10 +24,15 @@
 #include <QSharedData>
 #include <QMetaType>
 
-#include "smfgroup_p.h"
 #include "smfcontact.h"
 #include "smfclientglobal.h"
 
+
+/**
+ * forward declaration
+ */
+class SmfGroupPrivate;
+
 /**
  * Max number of members per group
  */
--- a/smf/smfservermodule/smfcommon/smflyrics.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smflyrics.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -25,6 +25,7 @@
  */
 SmfLyrics::SmfLyrics( )
 	{
+	d = new SmfLyricsPrivate;
 	}
 
 /**
--- a/smf/smfservermodule/smfcommon/smflyrics.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smflyrics.h	Thu Sep 23 17:43:31 2010 +0530
@@ -28,6 +28,8 @@
 
 class SmfLyricsPrivate;
 
+const int SmfMusicLyricsMaxSize = 5000;
+
 /**
  * @ingroup smf_common_group
  * The lyrics class represents an instance of a music track's lyrics
--- a/smf/smfservermodule/smfcommon/smfmusicfingerprint.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicfingerprint.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -45,6 +45,7 @@
 SmfMusicFingerPrint& SmfMusicFingerPrint::operator=( const SmfMusicFingerPrint &aOther )
 	{
 	d->m_fingerPrintData = aOther.d->m_fingerPrintData;
+	d->m_id = aOther.d->m_id;
 	return *this;
 	}
 
@@ -65,6 +66,15 @@
 	}
 
 /**
+ * Method to get the service specific id of this fingerprint data
+ * @return The ID value 
+ */
+QString SmfMusicFingerPrint::id( ) const
+	{
+	return d->m_id;
+	}	
+
+/**
  * Method to set the music finger print data
  * @param aFp The music finger print data
  */
@@ -73,6 +83,15 @@
 	d->m_fingerPrintData = aFp;
 	}
 
+/**
+ * Method to set the service specific id of this fingerprint data
+ * @param aId The ID value 
+ */
+void SmfMusicFingerPrint::setId( const QString &aId )
+	{
+	d->m_id = aId;
+	}
+
 
 /**
  * Method for Externalization. Writes the SmfMusicFingerPrint object to 
@@ -87,6 +106,9 @@
 	// Serialize d->m_fingerPrintData
 	aDataStream<<aMFP.d->m_fingerPrintData;
 	
+	// Serialize d->m_id
+	aDataStream<<aMFP.d->m_id;
+	
 	return aDataStream;
 	}
 
@@ -103,6 +125,9 @@
 	// Deserialize d->m_fingerPrintData
 	aDataStream>>aMFP.d->m_fingerPrintData;
 	
+	// Deserialize d->m_id
+	aDataStream>>aMFP.d->m_id;
+	
 	return aDataStream;
 	}
 
--- a/smf/smfservermodule/smfcommon/smfmusicfingerprint.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicfingerprint.h	Thu Sep 23 17:43:31 2010 +0530
@@ -22,8 +22,9 @@
 
 #include <QDataStream>
 #include <QSharedData>
+#include <QMetaType>
+
 #include "smfclientglobal.h"
-#include <QMetaType>
 
 class SmfMusicFingerPrintPrivate;
 
@@ -63,11 +64,23 @@
 	QByteArray musicFingerPrint ( ) const;
 	
 	/**
+	 * Method to get the service specific id of this fingerprint data
+	 * @return The ID value 
+	 */
+	QString id( ) const;
+	
+	/**
 	 * Method to set the music finger print data
 	 * @param aFp The music finger print data
 	 */
 	void setMusicFingerPrint ( const QByteArray &aFp);
 	
+	/**
+	 * Method to set the service specific id of this fingerprint data
+	 * @param aId The ID value 
+	 */
+	void setId( const QString &aId );
+	
 private:
 	QSharedDataPointer<SmfMusicFingerPrintPrivate> d;
 	
--- a/smf/smfservermodule/smfcommon/smfmusicfingerprint_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicfingerprint_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -30,6 +30,8 @@
 	 */
 	SmfMusicFingerPrintPrivate( )
 		{
+		m_id.clear();
+		m_fingerPrintData.clear();
 		}
 	
 	/**
@@ -38,7 +40,8 @@
 	 */
 	SmfMusicFingerPrintPrivate( const SmfMusicFingerPrintPrivate &aOther ) : 
 		QSharedData ( aOther ), 
-		m_fingerPrintData ( aOther.m_fingerPrintData )	{ }
+		m_fingerPrintData ( aOther.m_fingerPrintData ),
+		m_id (aOther.m_id) { }
 	
 	/**
 	 * Destructor
@@ -48,6 +51,7 @@
 		}
   
 	QByteArray m_fingerPrintData;	// Finger print data
+	QString m_id;		// Finger print id by the service provider
 	
 };
 
--- a/smf/smfservermodule/smfcommon/smfmusicprofile.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicprofile.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -44,8 +44,8 @@
  */
 SmfMusicProfile& SmfMusicProfile::operator=( const SmfMusicProfile &aOther )
 	{
-	d->m_usage = aOther.d->m_usage;
-	d->m_interest = aOther.d->m_interest;
+	d->m_recent = aOther.d->m_recent;
+	d->m_favorites = aOther.d->m_favorites;
 	d->m_events = aOther.d->m_events;
 	d->m_profileId = aOther.d->m_profileId;
 	return *this;
@@ -59,26 +59,26 @@
 	}
 
 /**
- * Method to get the user's used tracks
- * @return The users track list
+ * Method to get the user's most recently heard tracks
+ * @return The users most recently heard tracks
  */
-QList<SmfTrackInfo> SmfMusicProfile::musicUsageInfo( ) const
+QList<SmfTrackInfo> SmfMusicProfile::recentTracks( ) const
 	{
-	return d->m_usage;
+	return d->m_recent;
 	}
 
 /**
- * Method to get the user's interested tracks
- * @return The users interested track list
+ * Method to get the user's favorite tracks e.g. could be user.getLovedTracks for last.fm
+ * @return The users favorite track list
  */
-QList<SmfTrackInfo> SmfMusicProfile::interestInfo( ) const
+QList<SmfTrackInfo> SmfMusicProfile::favorites( ) const
 	{
-	return d->m_interest;
+	return d->m_favorites;
 	}
 
 /**
- * Method to get the user events as list of SmfEvents
- * @return The list of events
+ * Method to get a list of upcoming events that this user is attending
+ * @return The list of upcoming events
  */
 QList<SmfEvent> SmfMusicProfile::userEvents( ) const
 	{
@@ -95,21 +95,21 @@
 	}
 
 /**
- * Method to set the user's used tracks
+ * Method to set the user's recent tracks
  * @param aUsage The users new track list
  */
-void SmfMusicProfile::setMusicUsageInfo( const QList<SmfTrackInfo>& aUsage )
+void SmfMusicProfile::setRecentTracks( const QList<SmfTrackInfo>& aUsage )
 	{
-	d->m_usage = aUsage;
+	d->m_recent = aUsage;
 	}
 
 /**
- * Method to set the user's interested tracks
- * @param aInterest The users new interested track list
+ * Method to set the user's favorite tracks
+ * @param aInterest The users new favorite track list
  */
-void SmfMusicProfile::setInterestInfo( const QList<SmfTrackInfo>& aInterest )
+void SmfMusicProfile::setFavorites( const QList<SmfTrackInfo>& aInterest )
 	{
-	d->m_interest = aInterest;
+	d->m_favorites = aInterest;
 	}
 
 /**
@@ -141,11 +141,11 @@
  QDataStream &operator<<( QDataStream &aDataStream, 
 		const SmfMusicProfile &aProfile )
 	{
-	// Serialize d->m_usage
-	aDataStream<<aProfile.d->m_usage;
+	// Serialize d->m_recent
+	aDataStream<<aProfile.d->m_recent;
 	
-	// Serialize d->m_interest
-	aDataStream<<aProfile.d->m_interest;
+	// Serialize d->m_favorites
+	aDataStream<<aProfile.d->m_favorites;
 	
 	// Serialize d->m_events
 	aDataStream<<aProfile.d->m_events;
@@ -166,11 +166,11 @@
  QDataStream &operator>>( QDataStream &aDataStream, 
 		SmfMusicProfile &aProfile)
 	{
-	// Deserialize d->m_usage
-	aDataStream>>aProfile.d->m_usage;
+	// Deserialize d->m_recent
+	aDataStream>>aProfile.d->m_recent;
 	
-	// Deserialize d->m_interest
-	aDataStream>>aProfile.d->m_interest;
+	// Deserialize d->m_favorites
+	aDataStream>>aProfile.d->m_favorites;
 	
 	// Deserialize d->m_events
 	aDataStream>>aProfile.d->m_events;
--- a/smf/smfservermodule/smfcommon/smfmusicprofile.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicprofile.h	Thu Sep 23 17:43:31 2010 +0530
@@ -20,18 +20,22 @@
 #ifndef SMFMUSICPROFILE_H_
 #define SMFMUSICPROFILE_H_
 
-#include "smftrackinfo.h"
-#include "smfevent.h"
 #include <qdatastream.h>
 #include <QSharedData>
-#include "smfclientglobal.h"
 #include <QMetaType>
 
+#include "smftrackinfo.h"
+#include "smfevent.h"
+#include "smfclientglobal.h"
+
+
 class SmfMusicProfilePrivate;
-/**
+
+/*
  * Implementation constants
  */
 const int SmfMusicProfileMaxSize = 20000;
+
 /**
  * @ingroup smf_common_group
  * The music profile class represents a user's profile in music site
@@ -62,40 +66,40 @@
 	~SmfMusicProfile( );
 	
 	/**
-	 * Method to get the user's used tracks
-	 * @return The users track list
+	 * Method to get the user's most recently heard tracks
+	 * @return The users most recently heard tracks
 	 */
-	QList<SmfTrackInfo> musicUsageInfo( ) const;
+	QList<SmfTrackInfo> recentTracks( ) const;
 	
 	/**
-	 * Method to get the user's interested tracks
-	 * @return The users interested track list
+	 * Method to get the user's favorite tracks e.g. could be user.getLovedTracks for last.fm
+	 * @return The users favorite track list
 	 */
-	QList<SmfTrackInfo> interestInfo( ) const;
+	QList<SmfTrackInfo> favorites( ) const;
 	
 	/**
-	 * Method to get the user events as list of SmfEvents
-	 * @return The list of events
+	 * Method to get a list of upcoming events that this user is attending
+	 * @return The list of upcoming events
 	 */
 	QList<SmfEvent> userEvents( ) const;
 	
 	/**
-	 * Method to get the id of the music profile
+	 * Method to get the service specific id of this user
 	 * @return The ID value 
 	 */
 	QString id( ) const;
 	
 	/**
-	 * Method to set the user's used tracks
+	 * Method to set the user's recent tracks
 	 * @param aUsage The users new track list
 	 */
-	void setMusicUsageInfo( const QList<SmfTrackInfo>& aUsage );
+	void setRecentTracks( const QList<SmfTrackInfo>& aUsage );
 	
 	/**
-	 * Method to set the user's interested tracks
-	 * @param aInterest The users new interested track list
+	 * Method to set the user's favorite tracks
+	 * @param aInterest The users new favorite track list
 	 */
-	void setInterestInfo( const QList<SmfTrackInfo>& aInterest );
+	void setFavorites( const QList<SmfTrackInfo>& aInterest );
 	
 	/**
 	 * Method to set the user events as list of SmfEvents
--- a/smf/smfservermodule/smfcommon/smfmusicprofile_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfmusicprofile_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -32,8 +32,8 @@
 	 * Constructor
 	 */
 	SmfMusicProfilePrivate( ) { 
-		m_usage.clear(); 
-		m_interest.clear();
+		m_recent.clear(); 
+		m_favorites.clear();
 		m_events.clear();
 		m_profileId.clear();
 	}
@@ -44,8 +44,8 @@
 	 */
 	SmfMusicProfilePrivate( const SmfMusicProfilePrivate &aOther ) : 
 		QSharedData ( aOther ), 
-		m_usage ( aOther.m_usage ), 
-		m_interest ( aOther.m_interest ),
+		m_recent ( aOther.m_recent ), 
+		m_favorites ( aOther.m_favorites ),
 		m_events ( aOther.m_events ),
 		m_profileId ( aOther.m_profileId ) 	{ }
 	
@@ -56,8 +56,8 @@
 		{
 		}
   
-	QList<SmfTrackInfo> m_usage;	// usage tracks
-	QList<SmfTrackInfo> m_interest;	// interested tracks
+	QList<SmfTrackInfo> m_recent;	// recently heard tracks
+	QList<SmfTrackInfo> m_favorites;// favorite tracks
 	QList<SmfEvent> m_events;		// events list
 	QString m_profileId;			// profile Id
 	
--- a/smf/smfservermodule/smfcommon/smfplaylist.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfplaylist.h	Thu Sep 23 17:43:31 2010 +0530
@@ -33,6 +33,8 @@
 
 class SmfPlaylistPrivate;
 
+const int SmfMusicPlaylistMaxSize = 5000;
+
 /**
  * @ingroup smf_common_group
  * The playlist class represents an instance of a playlist.
--- a/smf/smfservermodule/smfcommon/smfpost.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfpost.h	Thu Sep 23 17:43:31 2010 +0530
@@ -27,8 +27,12 @@
 #include <QSharedData>
 #include <QTextDocument>
 #include <smfclientglobal.h>
+#include <smfcontact.h>
+/**
+ * forward declaration
+ */
+class SmfPostPrivate;
 
-#include "smfpost_p.h"
 const int MaxSmfPostSize=1000;
 /**
  *  Presence info of the user
--- a/smf/smfservermodule/smfcommon/smfsubtitle.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfsubtitle.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -50,6 +50,7 @@
 	d->m_duration = aOther.d->m_duration;
 	d->m_releaseYr = aOther.d->m_releaseYr;
 	d->m_subtitleId = aOther.d->m_subtitleId;
+	d->m_subtitleUrl = aOther.d->m_subtitleUrl;
 	return *this;
 	}
 
@@ -70,6 +71,15 @@
 	}
 
 /**
+ * Method to get the Url to the subtitle
+ * @return the subtitle url
+ */
+QUrl SmfSubtitle::subtitleUrl() const
+	{
+	return d->m_subtitleUrl;
+	}
+	
+/**
  * Method to get the language
  * @return The language
  */
@@ -124,6 +134,15 @@
 	}
 
 /**
+ * Method to set the subtitle as a bytearray
+ * @param aSubtitle The subtitle content
+ */
+void SmfSubtitle::setSubtitleUrl( const QUrl &aSubtitleUrl)
+	{
+	 d->m_subtitleUrl = aSubtitleUrl;
+	}
+
+/**
  * Method to set the language
  * @param aLang The language
  */
@@ -182,6 +201,9 @@
 	// Serialize m_subtitle
 	aDataStream<<aSubtitle.d->m_subtitle;
 	
+	// Serialize m_subtitleUrl
+	aDataStream<<aSubtitle.d->m_subtitleUrl;
+	
 	// Serialize m_language
 	aDataStream<<aSubtitle.d->m_language;
 	
@@ -213,6 +235,9 @@
 	// Deserialize m_subtitle
 	aDataStream>>aSubtitle.d->m_subtitle;
 	
+	// Deserialize m_subtitleUrl
+	aDataStream>>aSubtitle.d->m_subtitleUrl;
+	
 	// Deserialize m_language
 	aDataStream>>aSubtitle.d->m_language;
 	
--- a/smf/smfservermodule/smfcommon/smfsubtitle.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfsubtitle.h	Thu Sep 23 17:43:31 2010 +0530
@@ -74,6 +74,12 @@
 	QByteArray subtitle( ) const;
 	
 	/**
+	 * Method to get the Url to the subtitle
+	 * @return the subtitle url
+	 */
+	QUrl subtitleUrl() const;
+	
+	/**
 	 * Method to get the language
 	 * @return The language
 	 */
@@ -110,6 +116,13 @@
 	void setSubtitle( const QByteArray &aSubtitle );
 	
 	/**
+	 * Method to set the subtitle url
+	 * @param aSubtitleUrl The subtitle url
+	 */
+	 
+	void setSubtitleUrl( const QUrl &aSubtitleUrl);
+	
+	/**
 	 * Method to set the language
 	 * @param aLang The language
 	 */
--- a/smf/smfservermodule/smfcommon/smfsubtitle_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smfsubtitle_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -22,6 +22,7 @@
 
 #include <QDateTime>
 #include <QSharedData>
+#include <QUrl>
 
 class SmfSubtitlePrivate : public QSharedData
 {
@@ -34,6 +35,7 @@
 		m_frameRate = 0;
 		m_duration = 0;
 		m_subtitleId.clear();
+		m_subtitleUrl.clear();
 	}
 	
 	/**
@@ -47,7 +49,8 @@
 		m_frameRate ( aOther.m_frameRate ),
 		m_duration ( aOther.m_duration ),
 		m_releaseYr ( aOther.m_releaseYr ),
-		m_subtitleId ( aOther.m_subtitleId ) 	{ }
+		m_subtitleId ( aOther.m_subtitleId ),
+		m_subtitleUrl (aOther.m_subtitleUrl){ }
 	
 	/**
 	 * Destructor
@@ -62,6 +65,7 @@
 	double m_duration;		// duration
 	QDateTime m_releaseYr;	// release year
 	QString m_subtitleId;	// subtitle id
+	QUrl m_subtitleUrl;  	// subtitle Url
 	
 };
 
--- a/smf/smfservermodule/smfcommon/smftrackinfo.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfcommon/smftrackinfo.h	Thu Sep 23 17:43:31 2010 +0530
@@ -33,6 +33,11 @@
 
 class SmfTrackInfoPrivate;
 
+/*
+ * Implementation constants
+ */
+const int SmfMusicTracksMaxSize = 2000;
+
 /**
  * @ingroup smf_common_group
  * The track info class represents information about a music track
--- a/smf/smfservermodule/smfserver/datastoremgr/dsm.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/datastoremgr/dsm.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -69,22 +69,31 @@
     return lastMsg;
 }
 
-SmfRelationId DataStoreManager::create(SmfProvider *aProvider, SmfContact *aContact){
-
+SmfRelationId DataStoreManager::create(SmfProvider *aProvider, SmfContact *aContact)
+	{
+	if(NULL == aProvider || NULL == aContact)
+		return QString::number(-1);//SmfUnknownError 
+	
 	QString userId, contactUrl, localId, managerUri, presenceState, presenceText, statusText;
 	QDateTime dateTime;
 	Int64 timeStampInSeconds;
 	
 	QContactGuid guid = aContact->value("Guid").value<QContactGuid>();
 	userId = guid.guid();
+	qDebug()<<"Inside DSM: userID "<<userId;
 	
 	QContactUrl url = aContact->value("Url").value<QContactUrl>();
 	contactUrl = url.url();
 	
+	qDebug()<<"Inside Test DSM: contactUrl "<<contactUrl;
+	
 	QContactId contactId = aContact->value("ContactId").value<QContactId>();
 	localId =  contactId.localId() ;
 	managerUri = contactId.managerUri();
 	
+	qDebug()<<"Inside Test DSM: localId"<<localId;
+	qDebug()<<"Inside Test DSM: managerUri"<<managerUri;
+	
 	QContactTimestamp time = aContact->value("Timestamp").value<QContactTimestamp>();
 	dateTime = time.created();
 	//Returns the datetime as the number of seconds that have passed since 1970-01-01T00:00:00, Coordinated Universal Time (Qt::UTC).
@@ -95,23 +104,36 @@
 	presenceText = presence.presenceStateText();
 	statusText = presence.customMessage();
 	
+	qDebug()<<"Inside Test DSM: presenceState"<<presenceState;
+	qDebug()<<"Inside Test DSM: presenceText"<<presenceText;
+	qDebug()<<"Inside Test DSM: statusText"<<statusText;
+	
 	QString snsName = aProvider->serviceName();
 	QString snsUrl = (aProvider->serviceUrl()).toString();
 	QString snsDesc = aProvider->description();
 		
+	qDebug()<<"Inside Test DSM Create: snsName"<<snsName;
+	qDebug()<<"Inside Test DSM Create: snsUrl"<<snsUrl;
+	qDebug()<<"Inside Test DSM Create: snsDesc"<<snsDesc;
 	
-	const int contactID = addContactToTable( userId, contactUrl, localId, managerUri, snsName, snsDesc, snsUrl, presenceState, presenceText , statusText, timeStampInSeconds);
+	
+	
+	const int contactID = addContactToTable(userId, contactUrl, localId, managerUri, snsName, snsDesc, snsUrl, presenceState, presenceText , statusText, timeStampInSeconds);
+	if(!(contactIfExist(contactID)))
+		return QString::number(-1);
 	return QString::number( addRelationToTable( contactID ) );
 }
 
-SmfError DataStoreManager::associate( 	SmfRelationId aRelation,	
+SmfError DataStoreManager::associate( 	SmfRelationId aPhoneId,	
 										const SmfContact* aContact, 
 										SmfProvider* aProvider){
+	if(NULL == aProvider || NULL == aContact)
+			return SmfError(-1);//SmfUnknownError
 	
-	if( ! relationIfExist( aRelation.toInt()) )
+	if( ! relationIfExist( aPhoneId.toInt()) )
 		return SmfErrInvalidRelation;
 		
-	QString userId, contactUrl, localId, managerUri, presenceState, presenceText, statusText;
+	QString userId, contactUrl, localId, managerUri, presenceState, presenceText, statusText, name;
 	QDateTime dateTime;
 	Int64 timeStampInSeconds;
 	
@@ -139,8 +161,13 @@
 	QString snsUrl = (aProvider->serviceUrl()).toString();
 	QString snsDesc = aProvider->description();
 		
-	const int contactID = addContactToTable( userId, contactUrl, localId, managerUri, snsName, snsDesc, snsUrl, presenceState, presenceText , statusText, timeStampInSeconds);
-	if( socialProfileBaseID <= addRelationToTable( contactID,  aRelation.toInt() )  )
+	qDebug()<<"Inside Test DSM Associate: snsName"<<snsName;
+	qDebug()<<"Inside Test DSM Associate: snsUrl"<<snsUrl;
+	qDebug()<<"Inside Test DSM Associate: snsDesc"<<snsDesc;
+	
+	const int contactID = addContactToTable(userId, contactUrl, localId, managerUri, snsName, snsDesc, snsUrl, presenceState, presenceText , statusText, timeStampInSeconds);
+	TInt Id = addRelationToTable( contactID,  aPhoneId.toInt()); 
+	if(Id == aPhoneId.toInt())
 		return  SmfNoError ;
 	else
 		return SmfDbOpeningError;
@@ -152,8 +179,15 @@
 	int contactId, relationId;
 	QString userId, contactUrl, localId, managerUri;
 	
+	//to check validity of relationId
+	if(aRelation.size() == 0)
+			return SmfErrInvalidRelation;
 	relationId = aRelation.toInt();
-	 
+	
+	//to check validity of SmfContact
+	if(NULL == aContact)
+		return SmfDbContactNotExist;
+	
 	if(SmfDbOpeningError == openDB())
 			return SmfDbOpeningError;
 
@@ -163,24 +197,26 @@
 	userId = guid.guid();
 	
 	if ( ! userId.isNull() )
-	{
+		{
 		QContactUrl url = aContact->value("Url").value<QContactUrl>();
 		contactUrl = url.url();				
+		qry.prepare("SELECT contactId FROM contact where userId=:userId AND contactUrl=:contactUrl");	
+		qry.bindValue(":userId", userId);
+		qry.bindValue(":contactUrl", contactUrl);
+		}
+	else
+		{
+		//if userId is invalid then it shoudl return SmfError
+		return SmfDbContactNotExist;
 		
-	qry.prepare("SELECT contactId FROM contact where userId=:userId AND contactUrl=:contactUrl");	
-	qry.bindValue(":userId", userId);
-	qry.bindValue(":contactUrl", contactUrl);
-	}
-	else
-	{
-		QContactId contactId = aContact->value("ContactId").value<QContactId>();
+		/*QContactId contactId = aContact->value("ContactId").value<QContactId>();
 		localId =  contactId.localId() ;
 		managerUri = contactId.managerUri();
 		
 		qry.prepare("SELECT contactId FROM contact where localId=:localId AND managerUri=:managerUri");	
 		qry.bindValue(":localId", localId);
-		qry.bindValue(":managerUri", managerUri);
-	}
+		qry.bindValue(":managerUri", managerUri);*/
+		}
 	
 	if(SmfDbQueryExecutonError == executeQuery(qry))
 		return SmfDbQueryExecutonError; 
@@ -202,6 +238,9 @@
 	const int relationId = aRelation.toInt();
 	int contactId, contactIndex;
 	
+	if(0 == aRelation.size())
+		return NULL;
+	
 	if(SmfDbOpeningError == openDB())
 			return NULL;
 
@@ -269,7 +308,7 @@
 /** returns relation Id for a given contacts if exists, NULL otherwise */
 SmfRelationId DataStoreManager::searchByContact( SmfContact aContact){
 
-	int contactId, relationId;
+	int contId,relationId;/* */
 	QString userId, contactUrl, localId, managerUri;
 	 
 	if(SmfDbOpeningError == openDB())
@@ -280,34 +319,38 @@
 	QContactGuid guid = aContact.value("Guid").value<QContactGuid>();
 	userId = guid.guid();
 	
-	if ( ! userId.isNull() )
-	{
-		QContactUrl url = aContact.value("Url").value<QContactUrl>();
-		contactUrl = url.url();				
-		
-	qry.prepare("SELECT contactId FROM contact where userId=:userId AND contactUrl=:contactUrl");	
-	qry.bindValue(":userId", userId);
-	qry.bindValue(":contactUrl", contactUrl);
-	}
-	else
-	{
+
+	if (userId.isNull() )
+		{
+
 		QContactId contactId = aContact.value("ContactId").value<QContactId>();
 		localId =  contactId.localId() ;
 		managerUri = contactId.managerUri();
 		
 		qry.prepare("SELECT contactId FROM contact where localId=:localId AND managerUri=:managerUri");	
 		qry.bindValue(":localId", localId);
-		qry.bindValue(":managerUri", managerUri);
-	}
+		qry.bindValue(":managerUri", managerUri);	
+		}
+	else
+		{
+		QContactUrl url = aContact.value("Url").value<QContactUrl>();
+		contactUrl = url.url();				
+			
+		qry.prepare("SELECT contactId FROM contact where userId=:userId ");	/*AND contactUrl=:contactUrl*/
+		qry.bindValue(":userId", userId);
+		//qry.bindValue(":contactUrl", contactUrl);
+	
+		}
 	
 	if(SmfDbQueryExecutonError == executeQuery(qry))
 		return QString(); 
 
-	if(qry.next())
-		contactId = qry.value(0).toInt();
-		
+	if(qry.next()){
+		contId = qry.value(0).toInt();
+	}
+	
 	qry.prepare("SELECT relationId FROM relation where contactId=:contactId");	
-		qry.bindValue(":contactId", contactId);	
+	qry.bindValue(":contactId", contId);	
 		
 	if(SmfDbQueryExecutonError == executeQuery(qry))
 			return QString(); 
@@ -375,6 +418,9 @@
 /** list of contacts and their provider */
 QList<SmfRelationItem> DataStoreManager::getAll(SmfRelationId aRelation){
 	QList<SmfRelationItem> relationItemList;
+	if(aRelation.size() == 0)
+		return relationItemList;
+	
 	const int relationId = aRelation.toInt();
 	int contactId, contactIndex;
 	
@@ -418,19 +464,20 @@
 	QString snsName, snsDesc;
 	QUrl snsUrl;
 	
-	QVariant userId = QVariant::fromValue( aQry.value(0).toString() );
-	QVariant contactUrl = QVariant::fromValue(aQry.value(1).toString() ); 
 	
-	QString StrLocalId =  aQry.value(2).toString() ;
-	QString StrManagerUri = aQry.value(3).toString() ;	
+	QVariant userId = QVariant::fromValue( aQry.value(1).toString() );
+	QVariant contactUrl = QVariant::fromValue(aQry.value(2).toString() ); 
+	
+	QString StrLocalId =  aQry.value(3).toString() ;
+	QString StrManagerUri = aQry.value(4).toString() ;	
 	QContactId qContactId;
 	qContactId.setLocalId( StrLocalId.toInt() );
 	qContactId.setManagerUri( StrManagerUri );	    
 	QVariant contactId = QVariant::fromValue(qContactId);	
 	
-	int presenceState = aQry.value(7).toInt() ; 	
-	QString presenceStateText = aQry.value(8).toString() ;
-	QString statusText = aQry.value(9).toString();
+	int presenceState = aQry.value(8).toInt() ; 	
+	QString presenceStateText = aQry.value(9).toString() ;
+	QString statusText = aQry.value(10).toString();
 	QContactPresence qContactPresence;
 	qContactPresence.setPresenceState(static_cast<QContactPresence::PresenceState>(presenceState));
 	qContactPresence.setPresenceStateText(presenceStateText);
@@ -438,7 +485,7 @@
 	QVariant contactPresence  = QVariant::fromValue(qContactPresence);
 	
 	QDateTime dateTime;	
-	dateTime.setTime_t ( aQry.value(10).toLongLong() ) ;
+	dateTime.setTime_t ( aQry.value(11).toLongLong() ) ;
 	QContactTimestamp qContactTimestamp;
 	qContactTimestamp.setCreated(dateTime);
 	QVariant timeStamp = QVariant::fromValue( qContactTimestamp );
@@ -451,15 +498,15 @@
 	smfContact->setValue("Timestamp", timeStamp);
 	
 	smfProvider = new SmfProvider;
-	snsName = aQry.value(4).toString();
-	snsDesc = aQry.value(5).toString();;
-	snsUrl = aQry.value(6).toUrl();
+	snsName = aQry.value(5).toString();
+	snsDesc = aQry.value(6).toString();
+	snsUrl = aQry.value(7).toUrl();
 	
 	smfProvider->setServiceName( snsName );
 	smfProvider->setDescription( snsDesc );
 	smfProvider->setServiceUrl( snsUrl );
 	
-	iSmsfRelationItem = new SmfRelationItem;	
+	iSmsfRelationItem = new SmfRelationItem();	
 	iSmsfRelationItem->setIndex( aIndex );
 	iSmsfRelationItem->setProvider(*(smfProvider) );
 	iSmsfRelationItem->setContact(*( smfContact ));	
@@ -536,8 +583,14 @@
     const int tableCount = 2;
 
     QSqlQuery smfDsmTables[tableCount];
+    
+    smfDsmTables[0].prepare("CREATE TABLE IF NOT EXISTS contact (contactId  INTEGER PRIMARY KEY AUTOINCREMENT, userId TEXT, contactUrl TEXT, localId TEXT, managerUri TEXT, snsName TEXT, snsDesc TEXT, snsUrl TEXT, presenceState TEXT, presenceText TEXT, StatusText TEXT, timeStamp INTEGER )");
+        
+    smfDsmTables[1].prepare("CREATE TABLE IF NOT EXISTS relation (relationId INTEGER,  contactId INTEGER,  contactIndex INTEGER)" );
+        
 
-    smfDsmTables[0].prepare("CREATE TABLE IF NOT EXISTS contact (contactId INTEGER PRIMARY KEY AUTOINCREMENT,"
+
+    /*smfDsmTables[0].prepare("CREATE TABLE IF NOT EXISTS contact (contactId INTEGER PRIMARY KEY AUTOINCREMENT,"
 																  "contactGuid TEXT,"	 
 																  "contactUrl TEXT,"
 																  "localId TEXT,"
@@ -553,7 +606,7 @@
 																 " contactId INTEGER,"
 																 " contactIndex INTEGER)" );
     
-
+*/
     for(int i = 0; i < tableCount; i++){
         if(!smfDsmTables[i].exec()){
             state = ERROR;
@@ -581,10 +634,7 @@
 		return SmfDbOpeningError;
 
 	QSqlQuery qry;
-	qry.prepare("INSERT INTO contact (userId, contactUrl, localId , managerUri, snsName,"
-									" snsDesc, snsUrl, presenceState, presenceText, statusText, timeStamp )"
-									" VALUES (:userId, :contactUrl, :localId , :managerUri, :snsName,"
-									" :snsDesc, :snsUrl, :presenceState, :presenceText, :statusText, :timeStamp )");
+	qry.prepare("INSERT INTO contact (userId, contactUrl, localId , managerUri, snsName, snsDesc, snsUrl, presenceState, presenceText, statusText, timeStamp ) VALUES (:userId, :contactUrl, :localId , :managerUri, :snsName, :snsDesc, :snsUrl, :presenceState, :presenceText, :statusText, :timeStamp )");
 	qry.bindValue(":userId", NULL);
 	qry.bindValue(":contactUrl", NULL);
 	qry.bindValue(":localId", aLocalId);
@@ -617,7 +667,7 @@
 	
 }
 
-int DataStoreManager::addContactToTable( const QString &aUserId, 
+int DataStoreManager::addContactToTable(const QString &aUserId, 
 									const QString &aContactUrl,
 									const QString &aLocalId,
 									const QString &aManagerUri,
@@ -635,10 +685,16 @@
 		return SmfDbOpeningError;
 
 	QSqlQuery qry;
-	qry.prepare("INSERT INTO contact (userId, contactUrl, localId , managerUri, snsName,"
+	qry.prepare("INSERT INTO contact (userId, contactUrl, localId , managerUri, snsName, snsDesc, snsUrl, PresenceState, PresenceText, statusText, timeStamp ) VALUES (:userId, :contactUrl, :localId , :managerUri, :snsName, :snsDesc, :snsUrl, :PresenceState, :PresenceText, :statusText, :timeStamp )");
+
+	qDebug()<<"DSM :: aUserId :"<<aUserId;
+	qDebug()<<"DSM :: aContactUrl :"<<aContactUrl;
+	
+	
+	/*qry.prepare("INSERT INTO contact (userId, contactUrl, localId , managerUri, snsName,"
 									" snsDesc, snsUrl, PresenceState, PresenceText, statusText, timeStamp )"
 									" VALUES (:userId, :contactUrl, :localId , :managerUri, :snsName,"
-									" :snsDesc, :snsUrl, :PresenceState, :PresenceText, statusText, :timeStamp )");
+									" :snsDesc, :snsUrl, :PresenceState, :PresenceText, statusText, :timeStamp )");*/
 	
 	qry.bindValue(":userId", aUserId);		qry.bindValue(":contactUrl", aContactUrl);
 	qry.bindValue(":localId", aLocalId);				qry.bindValue(":managerUri", aManagerUri);
@@ -650,8 +706,8 @@
 	if(SmfDbQueryExecutonError == executeQuery(qry))
 		return SmfDbQueryExecutonError; 
 
-	qry.prepare("SELECT contactId FROM contact WHERE (localId=:localId AND managerUri=:managerUri) "
-												"OR (aContactGuid=:aContactGuid AND aContactUrl=:aContactUrl)");
+	qry.prepare("SELECT contactId FROM contact WHERE  (localId=:localId AND managerUri=:managerUri) OR (userId=:userId AND contactUrl=:contactUrl)");
+
 	qry.bindValue(":localId", aLocalId);				qry.bindValue(":managerUri", aManagerUri);
 	qry.bindValue(":userId", aUserId);		qry.bindValue(":aContactUrl", aContactUrl);
 
@@ -694,7 +750,10 @@
 		return EFalse;
 
 	QSqlQuery qry;
-	qry.prepare("SELECT contactId FROM contact WHERE contactId=:contactId");
+	TBool queryPep = qry.prepare("SELECT contactId FROM contact WHERE contactId=:contactId");
+	if(!queryPep)
+		return EFalse;
+		
 	qry.bindValue(":contactId", aContactId);
 
 	if(SmfDbQueryExecutonError == executeQuery(qry))
@@ -732,7 +791,7 @@
 }
 
 
-const int DataStoreManager::findMaxIndexValue(const int aRelationId ){
+int DataStoreManager::findMaxIndexValue(const int aRelationId ){
 	
 	int contactIndex = 0;
 	
@@ -740,8 +799,7 @@
 		return SmfDbOpeningError;
 
 	QSqlQuery qry;
-	qry.prepare("SELECT MAX( contactIndex ) FROM ("
-							"SELECT contactIndex FROM relation WHERE (relationId=:relationId ))");
+	qry.prepare("SELECT MAX( contactIndex ) FROM (SELECT contactIndex FROM relation WHERE (relationId=:relationId ))");
 	qry.bindValue(":relationId", aRelationId);
 	
 	if(SmfDbQueryExecutonError == executeQuery(qry))
@@ -756,7 +814,7 @@
 	return contactIndex;	
 }
 
-const int DataStoreManager::findMaxRelationId( ){
+int DataStoreManager::findMaxRelationId( ){
 	
 	int maxRelationId = socialProfileBaseID;
 	
@@ -772,15 +830,22 @@
 	if(qry.next()){
 		maxRelationId = qry.value(0).toInt();
 	}
-
+	if(0==maxRelationId)
+		maxRelationId = 1000;//socialProfileBaseID;
+	
 	qry.finish();
 	db.close();
 	return maxRelationId;	
 }
 
-const int DataStoreManager::addRelationToTable(const int aContactId, int aRelationId ){
+int DataStoreManager::addRelationToTable(const int aContactId, int aRelationId ){
 	
-	int relationId, contactIndex;
+	int relationId=0;
+	int contactIndex;
+	
+	//In case of invalid contactId
+	if(aContactId <= 0)
+		return relationId;
 	
 	if( aRelationId == ENewRelation ){
 			relationId = findMaxRelationId() + 1;
@@ -789,14 +854,14 @@
 	else{
 			relationId = aRelationId;
 			contactIndex = 1 + ( findMaxIndexValue( aRelationId ) ) ;
+			//contactIndex = ( findMaxIndexValue( aRelationId ) ) ;
 		}
 	
 	if(SmfDbOpeningError == openDB())
 		return SmfDbOpeningError;
 
 	QSqlQuery qry;
-	qry.prepare("INSERT INTO relation (relationId, contactId, contactIndex )"
-									" VALUES (:relationId, :contactId, :contactIndex )");
+	qry.prepare("INSERT INTO relation (relationId, contactId, contactIndex ) VALUES (:relationId, :contactId, :contactIndex )");
 	qry.bindValue(":relationId", relationId);
 	qry.bindValue(":contactId", aContactId);
 	qry.bindValue(":contactIndex", contactIndex);
@@ -811,8 +876,11 @@
 
 int DataStoreManager::searchContactId(const int aRelationId, const int aIndex){
 	
-	int contactId = SmfDbQueryExecutonError;
+	int contactId = 0; //removed : contactId=SmfDbQueryExecutonError
 		
+	if(aRelationId <= 0 || aIndex <0)
+		return contactId;
+	
 	if(SmfDbOpeningError == openDB())
 		return SmfDbOpeningError;
 
@@ -837,8 +905,11 @@
 
 int DataStoreManager::searchRelationId(const int aContactId){
 
-	int relationId = SmfDbQueryExecutonError;
-			
+	int relationId = 0; //SmfDbQueryExecutonError;
+	
+	if(aContactId == 0)
+		return relationId;
+	
 	if(SmfDbOpeningError == openDB())
 		return SmfDbOpeningError;
 
@@ -886,6 +957,7 @@
 SmfError DataStoreManager::deleteRelationFromTable(const int aRelationId){
 
 	int contactIndex;
+	
 	if(SmfDbOpeningError == openDB())
 		return SmfDbOpeningError;
 
@@ -961,16 +1033,22 @@
 void DataStoreManager::manageContactIndex(const int aRelationId, const int aContactIndex ){
 	
 	QSqlQuery qry;
-	qry.prepare("UPDATE relation SET contactIndex = contactIndex - 1 "
-				"WHERE ( relationId = :relationId AND contactIndex > :contactIndex )");	
+	qry.prepare("UPDATE relation SET contactIndex = contactIndex - 1 WHERE ( relationId = :relationId AND contactIndex > :contactIndex )");
+	if(aRelationId <=0 || aContactIndex <0)
+		{
+		qDebug()<<"ManageContactIndex: Invalid Argument";
+		qry.finish();
+		return;
+		}
 	qry.bindValue(":relationId", aRelationId);
 	qry.bindValue(":contactIndex", aContactIndex);	
-	executeQuery(qry);
+	if(SmfDbQueryExecutonError == executeQuery(qry))
+		qDebug()<<"ManageContactIndex: executeQuery() fails"; 
 	qry.finish();		
 }
 
 uint DataStoreManager::count(const int aRelationId){
-	uint count = -1;
+	uint count = 0;
 	
 	if(SmfDbOpeningError == openDB())
 		return count;
--- a/smf/smfservermodule/smfserver/datastoremgr/dsm.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/datastoremgr/dsm.h	Thu Sep 23 17:43:31 2010 +0530
@@ -174,6 +174,7 @@
 									const QString &statusText,
 									const Int64 timeStamp	
 									);
+
   
         
         /**delete a row in the contact table */
@@ -188,7 +189,7 @@
         
         /*------------------Operation on Relation Table-------------------*/ 
         /**insert a row in relation table and return relationId */
-        const int addRelationToTable(const int aContactId, int aRelationId = ENewRelation);
+        int addRelationToTable(const int aContactId, int aRelationId = ENewRelation);
         
         /**delete a relation table*/
         SmfError deleteRelationFromTable(const int aRelationId);
@@ -206,10 +207,10 @@
         int searchRelationId(const int aContactId);
         
         /**search for a reation contact having highest index value*/
-        const int findMaxIndexValue(const int aRelationId );
+        int findMaxIndexValue(const int aRelationId );
         
         /**search for a reationId highest value*/
-        const int findMaxRelationId();
+        int findMaxRelationId();
         
         /**On deletion of a contact it decrease index of all contacts 
          * having index greater than it in that relation.
--- a/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -58,8 +58,6 @@
 	// Save the server instance
 	m_server = aServer;
 	
-	qDebug()<<"Inside SmfPluginManager::SmfPluginManager()";
-	
 	// initialize the file watcher to monitor plugin addition/upgradation/removal
 	initializeFileWatcher ( );
 	
@@ -373,12 +371,12 @@
 
 /**
  * Method to cancel the service request
- * @param aPluginId The plugin whose current operation is to be cancelled.
+ * @param aSessionID The session to be cancelled.
  * If the plugin is not loaded currently, this method just returns true.
  * @return Returns true if the plugin operation could be cancelled 
  * else returns false.
  */
-bool SmfPluginManager::cancelRequest ( const QString& aPluginId )
+bool SmfPluginManager::cancelRequest (  const quint32& aSessionID )
 	{
 	bool retValue = true;
 	qDebug()<<"Inside SmfPluginManager::cancelRequest()";
@@ -386,7 +384,7 @@
 	// Get the plugin for which cancel is requested
 	foreach(SmfWaitingPluginInfoStruc* iPluginInfo, m_waitingPluginHash.values())
 		{
-		if( 0 == iPluginInfo->iPluginId.compare(aPluginId))
+		if( aSessionID == iPluginInfo->iSessionID )
 			{
 			qDebug()<<"Plugin to be cancelled found in the waiting list";
 			
@@ -463,8 +461,9 @@
 		qDebug()<<"Database could not be opened, returning !!!";	
 		return false;
 		}
-	
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Database opened";
+#endif
 	
 	// Create a query to create the DB table for Plugin Manager (if it doesn't exists)
 	QSqlQuery query;
@@ -483,8 +482,9 @@
 		m_pluginDataBase.close();
 		return false;
 		}
-	
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Table created";
+#endif
 	
 	// Get the directory having the Qt plugin stubs
 	QDir dir(QLibraryInfo::location(QLibraryInfo::PluginsPath));
@@ -492,28 +492,38 @@
 	// If Smf folder exists
 	if(dir.cd("smf/plugin"))
 		{
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"Smf/plugin folder exists";
+#endif
 		// Get each interface folders names
 		foreach(QString intfName, dir.entryList(QDir::AllDirs))
 			{
 			dir.cd(intfName);
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"Interface name : "<<dir.dirName();
+#endif
 			
 			// Get each plugin in this folder
 			foreach(QString pluginName, dir.entryList(QDir::Files))
 				{
+#ifdef DETAILEDDEBUGGING
 				qDebug()<<"plugins for this Interface : "<<pluginName;
+#endif
 				
 				// load this plugin
 				QPluginLoader pluginLoader(dir.absoluteFilePath(pluginName));
 				QObject *instance = pluginLoader.instance();
 				if (instance)
 					{
+#ifdef DETAILEDDEBUGGING
 					qDebug()<<"instance found";
+#endif
 					SmfPluginBase* plugin = qobject_cast<SmfPluginBase *>(instance);
 				    if (plugin)
 				    	{
+#ifdef DETAILEDDEBUGGING
 						qDebug()<<"SmfPluginBase found";
+#endif
 						plugin->initialize();
 				    
 						// get the plugin id
@@ -522,7 +532,9 @@
 						// get the interface implemented by the plugin
 						QString intfImplemented = dir.dirName();
 						intfImplemented.prepend("org.symbian.smf.plugin.");
+#ifdef DETAILEDDEBUGGING
 						qDebug()<<"intfImplemented = "<<intfImplemented;
+#endif
 						
 						// get the service provider
 						QString serProv = plugin->getProviderInfo()->serviceName();
@@ -756,38 +768,50 @@
 		{
 		// Http HEAD
 		case QNetworkAccessManager::HeadOperation:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"http::head Operation requested";
+#endif
 			reply = m_transMngrUtil->head(aReqData.iNetworkRequest, aUrlList, sopCompliant);
 			break;
 		
 		// Http GET
 		case QNetworkAccessManager::GetOperation:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"http::get Operation requested";
+#endif
 			reply = m_transMngrUtil->get(aReqData.iNetworkRequest, aUrlList, sopCompliant);
 			break;
 			
 		// Http PUT	
 		case QNetworkAccessManager::PutOperation:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"http::put Operation requested";
+#endif
 			reply = m_transMngrUtil->put(aReqData.iNetworkRequest, aReqData.iPostData->buffer(), aUrlList, sopCompliant);
 			delete aReqData.iPostData;
 			break;
 			
 		// Http POST
 		case QNetworkAccessManager::PostOperation:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"http::post Operation requested";
+#endif
 			reply = m_transMngrUtil->post(aReqData.iNetworkRequest, aReqData.iPostData->buffer(), aUrlList, sopCompliant);
 			delete aReqData.iPostData;
 			break;
 			
 		// Http DELETE
 		case QNetworkAccessManager::DeleteOperation:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"http::delete Operation requested";
+#endif
 			reply = m_transMngrUtil->deleteResource(aReqData.iNetworkRequest, aUrlList, sopCompliant);
 			break;
 			
 		default:
+#ifdef DETAILEDDEBUGGING
 			qDebug()<<"unknown http Operation requested!!!";
+#endif
 			aResult = SmfPMPluginUnknownHttpService;
 			return;
 		}
@@ -1103,8 +1127,9 @@
 		qDebug()<<"Data base not opened, exiting getplugins()!!!";
 		return;
 		}
-	
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Data base opened";
+#endif
 	
 	// Query the database for all pluginIDs that implement the given interface
 	QSqlQuery query(QString("SELECT pluginId, interfaceName, serviceProvider, description, "
@@ -1112,7 +1137,9 @@
 	
 	while(query.next())
 		{
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"Query is success";
+#endif
 
 		SmfProvider prov;
 		
@@ -1124,22 +1151,30 @@
 		QStringList servicetypes;
 		servicetypes.insert(0, query.value(1).toString());
 		prov.setSupportedInterfaces(servicetypes);
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"  Its interface = "<<servicetypes.at(0);
+#endif
 		
 		// Get the serv provider
 		QString servName = query.value(2).toString();
 		prov.setServiceName(servName);
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"  Its serv prov = "<<servName;
+#endif
 		
 		// Get the description
 		QString desc = query.value(3).toString();
 		prov.setDescription(desc);
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"  Its description = "<<desc;
+#endif
 		
 		// Get the service URL
 		QUrl url(query.value(4).toString());
 		prov.setServiceUrl(url);
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"  Its url = "<<url.toString();
+#endif
 
 		aMap.insert(pluginId, prov);
 		}
@@ -1182,7 +1217,9 @@
 		return;
 		}
 	
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Data base opened";
+#endif
 
 	// Query the database for a pluginID with given interface name and service provider
 	QSqlQuery query(QString("SELECT pluginId FROM pluginDetails where interfaceName = '%1' AND "
@@ -1190,7 +1227,9 @@
 	
 	if (query.next())
 		{
+#ifdef DETAILEDDEBUGGING
 		qDebug()<<"Query is success";
+#endif
 		
 		// get the pluginId
 		aPluginId = query.value(0).toString();
--- a/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanager.h	Thu Sep 23 17:43:31 2010 +0530
@@ -149,12 +149,12 @@
 	
 	/**
 	 * Method to cancel the service request
-	 * @param aPluginId The plugin whose current operation is to be cancelled.
+	 * @param aSessionID The session to be cancelled.
 	 * If the plugin is not loaded currently, this method just returns true.
 	 * @return Returns true if the plugin operation could be cancelled 
 	 * else returns false.
 	 */
-	bool cancelRequest ( const QString& aPluginId );
+	bool cancelRequest ( const quint32& aSessionID );
 	
 	/**
 	 * Method to get the list of the SmfProvider for all the plugins that implement 
--- a/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -23,9 +23,9 @@
 #include <QTextFormat>
 #include <smfactivityfetcherplugin.h>
 #include <smfcontactfetcherplugin.h>
+#include <smfeventsfetcherplugin.h>
 #include <smfpostproviderplugin.h>
 #include <smflyricsserviceplugin.h>
-#include <smfmusiceventsplugin.h>
 #include <smfmusicsearchplugin.h>
 #include <smfmusicserviceplugin.h>
 #include <smfplaylistserviceplugin.h>
@@ -152,17 +152,20 @@
 					aInputData, aReqData);
 			break;
 	
-		case SmfMusicGetEventsOnLoc:
-		case SmfMusicGetVenueOnLoc:
-		case SmfMusicPostEvents:
-		case SmfMusicEventsCustomRequest:
+		case SmfEventsGetEvents:
+		case SmfEventsGetVenues:
+		case SmfEventsGetEventAttendees:
+		case SmfEventsPostEvents:
+		case SmfEventsCustomRequest:
 			// Authorise the plugin and call create request methods
-			pluginErrorVal = createMusicEventsRequest(aInstance, aOperation, 
+			pluginErrorVal = createEventsFetcherRequest(aInstance, aOperation, 
 					aInputData, aReqData);
 			break;
 			
 		case SmfMusicGetRecommendations:
-		case SmfMusicGetTracks:
+		case SmfMusicGetTracksSimilar:
+		case SmfMusicGetTracksOfAlbum:
+		case SmfMusicGetTracksOfArtist:
 		case SmfMusicGetTrackInfo:
 		case SmfMusicGetStores:
 		case SmfMusicSearchCustomRequest:
@@ -172,6 +175,10 @@
 			break;
 			
 		case SmfMusicGetUserInfo:
+		case SmfMusicSearchArtist:
+		case SmfMusicSearchAlbum:
+		case SmfMusicSearchEvent:
+		case SmfMusicSearchVenue:
 		case SmfMusicSearchUser:
 		case SmfMusicPostCurrentPlaying:
 		case SmfMusicPostRating:
@@ -416,13 +423,24 @@
 				{
 				qDebug()<<"Plugin Operation requested : searchInGroup()";
 				SmfGroup group;
+				SmfContact contact;
+				bool arg = false;
 				stream>>flag;
 				stream>>group;
 				stream>>flag;
+				if(flag)
+					{
+					arg = true;
+					stream>>contact;
+					}
+				stream>>flag;
 				stream>>pageNum;
 				stream>>flag;
 				stream>>itemPerPage;
-				pluginErrorVal = plugin->searchInGroup(aReqData, group, pageNum, itemPerPage);
+				if(arg)
+					pluginErrorVal = plugin->searchInGroup(aReqData, group, &contact, pageNum, itemPerPage);
+				else
+					pluginErrorVal = plugin->searchInGroup(aReqData, group, NULL, pageNum, itemPerPage);
 				break;
 				}
 				
@@ -695,7 +713,7 @@
 
 
 /**
- * Method to create a web query to do music event search or event post operation 
+ * Method to create a web query to do event search or event post operation 
  * @param aPlugin The instance of the loaded plugin that performs the 
  * contact fetch operation.
  * @param aOperation The type of operation to be performed
@@ -707,15 +725,15 @@
  * SmfPluginErrInvalidArguments (if the arguments are invalid) or 
  * SmfPluginErrRequestNotCreated (if request could not be created) 
  */
-SmfPluginError SmfPluginManagerUtil::createMusicEventsRequest ( QObject *aPlugin, 
+SmfPluginError SmfPluginManagerUtil::createEventsFetcherRequest ( QObject *aPlugin, 
 		const SmfRequestTypeID &aOperation, 
 		QByteArray &aInputData,
 		SmfPluginRequestData &aReqData )
 	{
-	qDebug()<<"SmfPluginManagerUtil::createMusicEventsRequest";
+	qDebug()<<"SmfPluginManagerUtil::createEventsFetcherRequest";
 	
-	// typecast instance to SmfMusicEventsPlugin
-	SmfMusicEventsPlugin *plugin = qobject_cast<SmfMusicEventsPlugin *>(aPlugin);
+	// typecast instance to SmfEventsFetcherPlugin
+	SmfEventsFetcherPlugin *plugin = qobject_cast<SmfEventsFetcherPlugin *>(aPlugin);
 	SmfPluginError pluginErrorVal = SmfPluginErrServiceNotSupported;
 	
 	if(plugin)
@@ -727,8 +745,8 @@
 		
 		switch(aOperation)
 			{
-			case SmfMusicGetEventsOnLoc:
-				qDebug()<<"Plugin Operation requested : events() OnLoc";
+			case SmfEventsGetEvents:
+				qDebug()<<"Plugin Operation requested : events()";
 				stream>>flag;
 				stream>>location;
 				stream>>flag;
@@ -738,7 +756,7 @@
 				pluginErrorVal = plugin->events(aReqData, location, pageNum, itemPerPage);
 				break;
 				
-			case SmfMusicGetVenueOnLoc:
+			case SmfEventsGetVenues:
 				qDebug()<<"Plugin Operation requested : venues()";
 				stream>>flag;
 				stream>>location;
@@ -749,7 +767,21 @@
 				pluginErrorVal = plugin->venues(aReqData, location, pageNum, itemPerPage);
 				break;
 				
-			case SmfMusicPostEvents:
+			case SmfEventsGetEventAttendees:
+				{
+				qDebug()<<"Plugin Operation requested : attendees()";
+				SmfEvent event;
+				stream>>flag;
+				stream>>event;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->attendees(aReqData, event, pageNum, itemPerPage);
+				break;
+				}
+				
+			case SmfEventsPostEvents:
 				{
 				qDebug()<<"Plugin Operation requested : postEvents()";
 				QList<SmfEvent> list;
@@ -759,7 +791,7 @@
 				break;
 				}
 				
-			case SmfMusicEventsCustomRequest:
+			case SmfEventsCustomRequest:
 				{
 				qDebug()<<"Plugin Operation requested : customRequest()";
 				int operationType;
@@ -833,16 +865,44 @@
 				pluginErrorVal = plugin->recommendations(aReqData, trackInfo, pageNum, itemPerPage);
 				break;
 				
-			case SmfMusicGetTracks:
-				qDebug()<<"Plugin Operation requested : tracks()";
+			case SmfMusicGetTracksSimilar:
+				qDebug()<<"Plugin Operation requested : tracksSimilar()";
 				stream>>flag;
 				stream>>trackInfo;
 				stream>>flag;
 				stream>>pageNum;
 				stream>>flag;
 				stream>>itemPerPage;
-				pluginErrorVal = plugin->tracks(aReqData, trackInfo, pageNum, itemPerPage);
+				pluginErrorVal = plugin->tracksSimilar(aReqData, trackInfo, pageNum, itemPerPage);
+				break;
+				
+			case SmfMusicGetTracksOfAlbum:
+				{
+				qDebug()<<"Plugin Operation requested : tracksOfAlbum()";
+				SmfAlbum album;
+				stream>>flag;
+				stream>>album;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->tracksOfAlbum(aReqData, album, pageNum, itemPerPage);
 				break;
+				}
+				
+			case SmfMusicGetTracksOfArtist:
+				{
+				qDebug()<<"Plugin Operation requested : tracksOfArtist()";
+				SmfArtists artist;
+				stream>>flag;
+				stream>>artist;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->tracksOfArtist(aReqData, artist, pageNum, itemPerPage);
+				break;
+				}
 				
 			case SmfMusicGetTrackInfo:
 				{
@@ -933,9 +993,65 @@
 		switch(aOperation)
 			{
 			case SmfMusicGetUserInfo:
-				qDebug()<<"Plugin Operation requested : userInfo()";
-				pluginErrorVal = plugin->userInfo(aReqData);
+				qDebug()<<"Plugin Operation requested : userMusicInfo()";
+				pluginErrorVal = plugin->userMusicInfo(aReqData);
+				break;
+				
+			case SmfMusicSearchArtist:
+				{
+				qDebug()<<"Plugin Operation requested : searchArtist() for Music";
+				SmfArtists artist;
+				stream>>flag;
+				stream>>artist;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->searchArtist(aReqData, artist, pageNum, itemPerPage);
+				break;
+				}
+				
+			case SmfMusicSearchAlbum:
+				{
+				qDebug()<<"Plugin Operation requested : searchAlbum() for Music";
+				SmfAlbum album;
+				stream>>flag;
+				stream>>album;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->searchAlbum(aReqData, album, pageNum, itemPerPage);
 				break;
+				}
+				
+			case SmfMusicSearchEvent:
+				{
+				qDebug()<<"Plugin Operation requested : searchEvents() for Music";
+				SmfEvent event;
+				stream>>flag;
+				stream>>event;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->searchEvents(aReqData, event, pageNum, itemPerPage);
+				break;
+				}
+				
+			case SmfMusicSearchVenue:
+				{
+				qDebug()<<"Plugin Operation requested : searchVenue() for Music";
+				SmfLocation place;
+				stream>>flag;
+				stream>>place;
+				stream>>flag;
+				stream>>pageNum;
+				stream>>flag;
+				stream>>itemPerPage;
+				pluginErrorVal = plugin->searchVenue(aReqData, place, pageNum, itemPerPage);
+				break;
+				}
 				
 			case SmfMusicSearchUser:
 				{
@@ -1057,7 +1173,7 @@
 			case SmfMusicGetPlaylistsOfUser:
 				{
 				qDebug()<<"Plugin Operation requested : playlistsOf()";
-				SmfMusicProfile user;
+				SmfContact user;
 				stream>>flag;
 				if(flag)
 					stream>>user;
@@ -1424,16 +1540,23 @@
 		case SmfMusicGetLyrics:
 		case SmfMusicGetSubtitle:
 		case SmfMusicLyricsCustomRequest:
-		case SmfMusicGetEventsOnLoc:
-		case SmfMusicGetVenueOnLoc:
-		case SmfMusicPostEvents:
-		case SmfMusicEventsCustomRequest:
+		case SmfEventsGetEvents:
+		case SmfEventsGetVenues:
+		case SmfEventsGetEventAttendees:
+		case SmfEventsPostEvents:
+		case SmfEventsCustomRequest:
 		case SmfMusicGetRecommendations:
-		case SmfMusicGetTracks:
+		case SmfMusicGetTracksSimilar:
+		case SmfMusicGetTracksOfAlbum:
+		case SmfMusicGetTracksOfArtist:
 		case SmfMusicGetTrackInfo:
 		case SmfMusicGetStores:
 		case SmfMusicSearchCustomRequest:
 		case SmfMusicGetUserInfo:
+		case SmfMusicSearchArtist:
+		case SmfMusicSearchAlbum:
+		case SmfMusicSearchEvent:
+		case SmfMusicSearchVenue:
 		case SmfMusicSearchUser:
 		case SmfMusicPostCurrentPlaying:
 		case SmfMusicPostRating:
@@ -1606,8 +1729,8 @@
 			break;
 			}
 
-		// FOR MUSIC - EVENTS
-		case SmfMusicGetEventsOnLoc:
+		// FOR EVENTS - FETCHER
+		case SmfEventsGetEvents:
 			{
 			qDebug()<<"Serializing to : QList<SmfEvent>";
 			QList<SmfEvent> eventList;
@@ -1618,7 +1741,7 @@
 			break;
 			}
 			
-		case SmfMusicGetVenueOnLoc:
+		case SmfEventsGetVenues:
 			{
 			qDebug()<<"Serializing to : QList<SmfLocation>";
 			QList<SmfLocation> venueList;
@@ -1627,8 +1750,18 @@
 			aDataStream<<venueList;
 			break;
 			}
+			
+		case SmfEventsGetEventAttendees:
+			{
+			qDebug()<<"Serializing to : QList<SmfContact>";
+			QList<SmfContact> contactList;
+			if( aResult->canConvert<SmfContactList>() )
+				contactList = aResult->value<SmfContactList>();
+			aDataStream<<contactList;
+			break;
+			}
 		
-		case SmfMusicPostEvents:
+		case SmfEventsPostEvents:
 			{
 			qDebug()<<"Serializing to : bool";
 			bool value;
@@ -1640,7 +1773,9 @@
 
 		// FOR MUSIC - SEARCH
 		case SmfMusicGetRecommendations:
-		case SmfMusicGetTracks:
+		case SmfMusicGetTracksSimilar:
+		case SmfMusicGetTracksOfAlbum:
+		case SmfMusicGetTracksOfArtist:
 		case SmfMusicGetTrackInfo:
 			{
 			qDebug()<<"Serializing to : QList<SmfTrackInfo>";
@@ -1673,6 +1808,46 @@
 			break;
 			}
 			
+		case SmfMusicSearchArtist:
+			{
+			qDebug()<<"Serializing to : QList<SmfArtists>";
+			QList<SmfArtists> artistsList;
+			if( aResult->canConvert<SmfArtistsList>() )
+				artistsList = aResult->value<SmfArtistsList>();
+			aDataStream<<artistsList;
+			break;
+			}
+			
+		case SmfMusicSearchAlbum:
+			{
+			qDebug()<<"Serializing to : QList<SmfAlbum>";
+			QList<SmfAlbum> albumList;
+			if( aResult->canConvert<SmfAlbumList>() )
+				albumList = aResult->value<SmfAlbumList>();
+			aDataStream<<albumList;
+			break;
+			}
+			
+		case SmfMusicSearchEvent:
+			{
+			qDebug()<<"Serializing to : QList<SmfEvent>";
+			QList<SmfEvent> eventList;
+			if( aResult->canConvert<SmfEventList>() )
+				eventList = aResult->value<SmfEventList>();
+			aDataStream<<eventList;
+			break;
+			}
+			
+		case SmfMusicSearchVenue:
+			{
+			qDebug()<<"Serializing to : QList<SmfLocation>";
+			QList<SmfLocation> venueList;
+			if( aResult->canConvert<SmfLocationList>() )
+				venueList = aResult->value<SmfLocationList>();
+			aDataStream<<venueList;
+			break;
+			}
+			
 		case SmfMusicSearchUser:
 			{
 			qDebug()<<"Serializing to : QList<SmfMusicProfile>";
@@ -1765,7 +1940,7 @@
 		case SmfContactCustomRequest:
 		case SmfContactPostCustomRequest:
 		case SmfMusicLyricsCustomRequest:
-		case SmfMusicEventsCustomRequest:
+		case SmfEventsCustomRequest:
 		case SmfMusicSearchCustomRequest:
 		case SmfMusicServiceCustomRequest:
 		case SmfMusicPlaylistCustomRequest:
@@ -1797,7 +1972,6 @@
 		const SmfPluginError &aPluginError,  
 		SmfError &aSMFError )
 	{
-	qDebug()<<"Converting Plugin error code to SmfError";
 	switch(aPluginError)
 		{
 		case SmfPluginErrNone:
@@ -1886,7 +2060,6 @@
 		const SmfTransportResult &aTMError,  
 		SmfError &aSMFError )
 	{
-	qDebug()<<"Converting Transport error code to SmfError";
 	switch(aTMError)
 		{
 		case SmfTransportOpNoError:
--- a/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/pluginmgr/smfpluginmanagerutil.h	Thu Sep 23 17:43:31 2010 +0530
@@ -139,7 +139,7 @@
 
 
 	/**
-	 * Method to create a web query to do music event search or event post operation 
+	 * Method to create a web query to do event search or event post operation 
 	 * @param aPlugin The instance of the loaded plugin that performs the 
 	 * contact fetch operation.
 	 * @param aOperation The type of operation to be performed
@@ -147,7 +147,7 @@
 	 * @param aReqData [out] The request data created by the plugin
 	 * @return SmfPluginError
 	 */
-	SmfPluginError createMusicEventsRequest ( QObject *aPlugin, 
+	SmfPluginError createEventsFetcherRequest ( QObject *aPlugin, 
 			const SmfRequestTypeID &aOperation, 
 			QByteArray &aInputData,
 			SmfPluginRequestData &aReqData );
--- a/smf/smfservermodule/smfserver/server/smfserver.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/server/smfserver.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -67,14 +67,11 @@
 
 bool SmfServer::startServer()
 	{
-	qDebug()<<"Inside SmfServer::startServer()";
-	
 	bool success = false;
 	
 	//Initialize all the component handles
 	SmfTransportInitializeResult networkStatus = prepareTransport();
 	
-	qDebug()<<"Before m_pluginManager construction";
 	m_pluginManager = SmfPluginManager::getInstance(this);
 	qDebug()<<"After m_pluginManager construction";
 	
@@ -166,7 +163,6 @@
 
 SmfTransportInitializeResult SmfServer::prepareTransport()
 	{
-	qDebug()<<"Inside SmfServer::prepareTransport()";
 	m_transportManager = SmfTransportManager::getInstance();
 	
 	//checking the network status
@@ -175,19 +171,24 @@
 	return networkStatus;
 	}
 
-void SmfServer::sendToPluginManager ( int requestID, SmfPluginID pluginID, 
+SmfError SmfServer::sendToPluginManager ( int requestID, SmfPluginID pluginID, 
 		SmfInterfaceID interfaceID, SmfRequestTypeID requestTypeID, 
 		QByteArray dataForPlugin )
 	{
 	qDebug()<<"Inside SmfServer::sendToPluginManager()";
+	Q_UNUSED(interfaceID)
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Request ID = "<<requestID;
 	qDebug()<<"PluginID = "<<pluginID;
 	qDebug()<<"Interface = "<<interfaceID;
 	qDebug()<<"RequestType = "<<requestTypeID;
-
+#endif
+	
 	//TODO:-PM should take page info too
 	SmfError err = m_pluginManager->createRequest(requestID,pluginID,requestTypeID,dataForPlugin);
-	qDebug()<<"m_pluginManager->createRequest() = "<<err;
+	qDebug()<<"m_pluginManager->createRequest() ret value = "<<err;
+	
+	return err;
 	}
 
 /**
@@ -202,9 +203,12 @@
 		QByteArray dataForPlugin, QByteArray &outputData)
 	{
 	qDebug()<<"Inside SmfServer::sendToPluginManager() for sync req";
+	Q_UNUSED(interfaceID)
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"PluginID = "<<pluginID;
 	qDebug()<<"Interface = "<<interfaceID;
 	qDebug()<<"RequestType = "<<requestTypeID;
+#endif
 
 	//TODO:-PM should take page info too
 	SmfError err = m_pluginManager->createSyncRequest(pluginID,requestTypeID,dataForPlugin, outputData);
@@ -221,56 +225,93 @@
 	
 	//Note:- deserialization and formation of user profile and social profile are done by server
 	QDataStream readStream(&qtdataForDSM,QIODevice::ReadOnly);
-	QDataStream writeStream(&qtdataFromDSM,QIODevice::ReadOnly);
+	QDataStream writeStream(&qtdataFromDSM,QIODevice::WriteOnly);
 	quint8 flag = 0;
 	switch(opcode)
 		{
 		case SmfRelationCreate:
 			{
 			//read the incoming data
-			SmfProvider provider;
-			SmfContact contact;
+			SmfProvider *provider = new SmfProvider();
+			SmfContact *contact = new SmfContact();
+			readStream>>flag;
+			if(flag)
+				readStream>>*provider;
+			else 
+				{
+				delete provider;
+				provider = NULL;
+				}
 			readStream>>flag;
 			if(flag)
-				readStream>>provider;
-			readStream>>flag;
-			if(flag)
-				readStream>>contact;
-
-			SmfRelationId relnId = dsm->create(&provider,&contact);
+				readStream>>*contact;
+			else 
+				{
+				delete contact;
+				contact = NULL;
+				}
+			SmfRelationId relnId = dsm->create(provider,contact);
 			writeStream<<relnId;
+			if(provider != NULL)
+				delete provider;
+			if(contact != NULL)
+				delete contact;
 			}
 			break;
 		case SmfRelationAssociate:
 			{
 			SmfRelationId relnId;
-			SmfContact contact;
-			SmfProvider provider;
+			SmfContact *contact = new SmfContact();
+			SmfProvider *provider = new SmfProvider();
 			readStream>>relnId;
 			readStream>>flag;
 			if(flag)
-				readStream>>contact;
+				readStream>>*contact;
+			else 
+				{
+				delete contact;
+				contact = NULL;
+				}
 			readStream>>flag;
 			if(flag)
-				readStream>>provider;
+				readStream>>*provider;
+			else 
+				{
+				delete provider;
+				provider = NULL;
+				}
 
-			SmfError err = dsm->associate(relnId,&contact,&provider);
+			QString snsName = provider->serviceName();
+			QString snsUrl = (provider->serviceUrl()).toString();
+			QString snsDesc = provider->description();
+			
+			SmfError err = dsm->associate(relnId,contact,provider);
 			int errInt = err;
 			writeStream<<errInt;
+			if(contact != NULL)
+				delete contact;
+			if(provider != NULL)
+				delete provider;
 			}
 			break;
 		case SmfRelationRemove:
 			{
 			SmfRelationId relnId;
-			SmfContact contact;
+			SmfContact *contact = new SmfContact();
 			readStream>>relnId;
 			readStream>>flag;
 			if(flag)
-				readStream>>contact;
-
-			SmfError err = dsm->remove(relnId, &contact);
+				readStream>>*contact;
+			else 
+				{
+				delete contact;
+				contact = NULL;
+				}
+			SmfError err = dsm->remove(relnId, contact);
 			int errInt = err;
 			writeStream<<errInt;
+			if(NULL != contact)
+				delete contact;
 			break;
 			}
 		case SmfRelationSearchById:
@@ -382,10 +423,12 @@
 void SmfServer::resultsAvailable ( int requestID, QByteArray* parsedData, SmfError error )
 	{
 	qDebug()<<"Inside SmfServer::resultsAvailable()";
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"requestID = "<<requestID;
 	qDebug()<<"parsedData->size() = "<<parsedData->size();
 	qDebug()<<"Error = "<<error;
-
+#endif
+	
 	//Serialize error followed by actual data
 	QByteArray dataWithError;
 	QDataStream writer(&dataWithError,QIODevice::WriteOnly);
--- a/smf/smfservermodule/smfserver/server/smfserver.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/server/smfserver.h	Thu Sep 23 17:43:31 2010 +0530
@@ -110,7 +110,7 @@
 	 * @param interfaceID Interface name
 	 * @param dataForPlugin Data to be sent for this request
 	 */
-	void sendToPluginManager ( int requestID, SmfPluginID pluginID, 
+	SmfError sendToPluginManager ( int requestID, SmfPluginID pluginID, 
 			SmfInterfaceID interfaceID, SmfRequestTypeID requestTypeID,
 			QByteArray dataForPlugin = QByteArray() );
 	
--- a/smf/smfservermodule/smfserver/server/smfserversymbian.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/server/smfserversymbian.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -21,6 +21,7 @@
 #include <QDebug>
 #include <smfrelationmgr.h>
 
+#include "smfpluginmanager.h"
 #include "smfserversymbian_p.h"
 
 
@@ -136,7 +137,6 @@
 			iIntfNameSymbian(NULL,0) ,iXtraDataPtr8(NULL,0),
 			iPtrToDataForClient(NULL,0) ,iPtr8DataForDSM(NULL,0),iPtr8DataFromDSM(NULL,0)  
 	{
-	qDebug()<<"Inside SmfServerSymbianSession::SmfServerSymbianSession()";
 	iServer->iSessionCount++;
 	}
 
@@ -206,7 +206,6 @@
 void SmfServerSymbianSession::HandleClientMessageL(const RMessage2& aMessage)
 	{
 	qDebug()<<"Inside SmfServerSymbianSession::HandleClientMessageL() = "<<aMessage.Function();
-	iLastRequest = aMessage.Function();
 	
 	/**Note:- Only ESmfGetService needs to be taken care separately as it doesn't involve createrequest for PM
 	 *See SmfRequestTypeID for list of opcodes
@@ -219,24 +218,29 @@
 	 *TODO:- to be changed after GetServices returns SmfProvider+pluginID 
 	 * 
 	 */
-	if( (SmfGetService == iLastRequest) 			||
-		(SmfPostGetMaxCharsInPost == iLastRequest)	||
-		(SmfPostGetMaxItems == iLastRequest)		||
-		(SmfPostGetSupportedFormats == iLastRequest)||
-		(SmfPostGetAppearanceSupport == iLastRequest) )
+	if( (SmfGetService == aMessage.Function()) 			||
+		(SmfPostGetMaxCharsInPost == aMessage.Function())	||
+		(SmfPostGetMaxItems == aMessage.Function())		||
+		(SmfPostGetSupportedFormats == aMessage.Function())||
+		(SmfPostGetAppearanceSupport == aMessage.Function()))
 			
 		{
 		HandleSyncServiceL(aMessage);
 		}
-	else if(iLastRequest == SmfRelationCreate ||
-			iLastRequest == SmfRelationAssociate || 
-			iLastRequest == SmfRelationSearchById ||
-			iLastRequest == SmfRelationSearchByContact ||
-			iLastRequest == SmfRelationCount ||
-			iLastRequest == SmfRelationGet ||
-			iLastRequest == SmfRelationGetAll ||
-			iLastRequest == SmfRelationGetAllRelations ||
-			iLastRequest == SmfRelationDeleteRelation
+	else if (SmfCancelRequest == aMessage.Function())
+		{
+		HandleCancelRequest(aMessage);
+		}
+	else if(aMessage.Function() == SmfRelationCreate ||
+			aMessage.Function() == SmfRelationAssociate || 
+			aMessage.Function() == SmfRelationSearchById ||
+			aMessage.Function() == SmfRelationSearchByContact ||
+			aMessage.Function() == SmfRelationCount ||
+			aMessage.Function() == SmfRelationGet ||
+			aMessage.Function() == SmfRelationGetAll ||
+			aMessage.Function() == SmfRelationGetAllRelations ||
+			aMessage.Function() == SmfRelationDeleteRelation ||
+			aMessage.Function() == SmfRelationRemove
 			)
 		{
 		HandleDSMServiceL(aMessage);
@@ -247,9 +251,23 @@
 		}
 	}
 
+void SmfServerSymbianSession::HandleCancelRequest(const RMessage2 & aMessage)
+	{
+	SmfError err = SmfNoError;
+	// iLastRequest contains the last operations opcode, cwhich is to be cancelled.
+	bool ret = SmfPluginManager::getInstance(iServer->wrapper())->cancelRequest(iLastRequest);
+	
+	iErrBuf.Zero();
+	iErrBuf.AppendNum(err);
+	iMessage.Write(2,iErrBuf);
+	aMessage.Complete(iLastRequest);
+	
+	}
+
 void SmfServerSymbianSession::HandleDSMServiceL(const RMessage2 & aMessage)
 	{
 	qDebug()<<"Inside SmfServerSymbianSession::HandleDSMServiceL()";
+	iLastRequest = aMessage.Function();
 	//TODO:-If DSM takes care of deserialization and formation of User and social 
 	//profile from the params then switch case can be removed
 	if(iData8ForDSM)
@@ -269,7 +287,7 @@
 			break;
 		case SmfRelationAssociate:
 			{
-			int maxAlloc = 100;
+			int maxAlloc = 1000;
 			iData8ForDSM = HBufC8::New(maxAlloc);
 			iPtr8DataForDSM.Set(iData8ForDSM->Des());
 			TInt readerr0 = aMessage.Read(0,iPtr8DataForDSM); 
@@ -355,6 +373,8 @@
 				delete iData8FromDSM;
 				iData8FromDSM = NULL;
 				}
+			int siz = qtdataFromDSM.size();
+			qDebug()<<"Size of Data to be sent back thru DSM Create : "<<siz;
 			iData8FromDSM = HBufC8::NewL(qtdataFromDSM.size());
 			iPtr8DataFromDSM.Set(iData8FromDSM->Des());
 			iPtr8DataFromDSM.Copy(reinterpret_cast<const TText8*>(qtdataFromDSM.constData()),qtdataFromDSM.length());
@@ -368,6 +388,7 @@
 		iDSMErr.AppendNum(errInt);
 		TInt writeErr = aMessage.Write(2,iDSMErr);
 		}
+	aMessage.Complete(iLastRequest);
 	}
 
 
@@ -375,6 +396,8 @@
 	{
 	qDebug()<<"Inside SmfServerSymbianSession::HandleSyncServiceL()";
 	
+	iLastRequest = aMessage.Function();
+	
 	// Following is the data format sent by client
 	// 1. SmfProvider +PageInfo flag+ aPageNum + aPerPage (if pageinfoflag is set) + XtraInfo flag(size of xtra data) Serialized 
 	// 2. Interface name as string ("org.symbian.smf.client.gallery")
@@ -536,6 +559,7 @@
 void SmfServerSymbianSession::HandleCommonServiceL(const RMessage2& aMessage)
 	{
 	qDebug()<<"Inside SmfServerSymbianSession::HandleCommonServiceL() = "<<aMessage.Function();
+	iLastRequest = aMessage.Function();
 	/**
 	 * Note:- client sends message in the following format,-
 	 * Slot 0:- SmfProvider* serialized+Page info flag+page number+per page (if page info flag)+xtra info flag
@@ -552,6 +576,7 @@
 		}
 	iProviderBuf8 = HBufC8::NewL(providerSize);
 	iProviderSymbian8.Set(iProviderBuf8->Des());
+	qDebug()<<"data info (0) size = "<<iProviderSymbian8.Size();
 	
 	//read it into iProviderSymbian8
 	aMessage.ReadL(0,iProviderSymbian8);
@@ -578,7 +603,7 @@
 
 	//read it into iIntfNameSymbian8
 	aMessage.ReadL(1,iIntfNameSymbian8);
-	qDebug()<<"iIntfNameSymbian8.Size = "<<iIntfNameSymbian8.Size();
+	qDebug()<<"iIntfNameSymbian8 (1) .Size = "<<iIntfNameSymbian8.Size();
 
 	QByteArray bytearray(reinterpret_cast<const char*>(iIntfNameSymbian8.Ptr()),iIntfNameSymbian8.Length()) ;
 	QDataStream intfNameStream(&bytearray,QIODevice::ReadOnly);
@@ -608,7 +633,16 @@
 		//request PM to get the data
 		SmfRequestTypeID opcode = (SmfRequestTypeID)iLastRequest;
 		
-		iServer->wrapper()->sendToPluginManager(id,pluginID,iInterfaceID,opcode,XtraBufQt);
+		SmfError err = iServer->wrapper()->sendToPluginManager(id,pluginID,iInterfaceID,opcode,XtraBufQt);
+		if(SmfNoError != err)
+			{
+			iErrBuf.Zero();
+			iErrBuf.AppendNum(err);
+			iMessage.Write(2,iErrBuf);
+			
+			//signal completion for the last request
+			iMessage.Complete(err);
+			}
 		}
 	else
 		{
@@ -616,5 +650,8 @@
 		iErrBuf.Zero();
 		iErrBuf.AppendNum(err);
 		iMessage.Write(2,iErrBuf);
+		
+		//signal completion for the last request
+		iMessage.Complete(err);
 		}
 	}
--- a/smf/smfservermodule/smfserver/server/smfserversymbian_p.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/server/smfserversymbian_p.h	Thu Sep 23 17:43:31 2010 +0530
@@ -244,6 +244,11 @@
      */
     void HandleDSMServiceL(const RMessage2 & aMessage);
     
+    /**
+     * Handles a session's cancel request
+     */
+    void HandleCancelRequest(const RMessage2 & aMessage);
+    
     
 private:
     SmfServerSymbian* iServer;
--- a/smf/smfservermodule/smfserver/smfplugins/smfactivityfetcherplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfactivityfetcherplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -46,9 +46,10 @@
 	/**
 	 * Method to get the list of self activities, e.g. shown in own wall
 	 * @param aRequest [out] The request data that plugin generates (to be sent to network)
-	 * @param aPageNum[in] The page to be extracted
-	 * @param aItemsPerPage[in] Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError selfActivities( SmfPluginRequestData &aRequest,
 			const int aPageNum = SMF_FIRST_PAGE, 
@@ -58,9 +59,10 @@
 	 * Method to get the list of activities for other, e.g. shown in a friends wall
 	 * @param aRequest [out] The request data plugin generated (to be sent to network)
 	 * @param aContact [in] The contact containing the URI, name or id of the user 
-	 * @param aPageNum[in] The page to be extracted
-	 * @param aItemsPerPage[in] Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError friendsActivities( SmfPluginRequestData &aRequest,
 			const SmfContact &aContact,			
@@ -71,9 +73,10 @@
 	 * Method to get list of self activities filtered by activity type, e.g. only photo updates in own wall
 	 * @param aRequest [out] The request data plugin generated (to be sent to network)
 	 * @param aFilters [in] The list of activity types to be included in result
-	 * @param aPageNum[in] The page to be extracted
+	 * @param aPageNum [in] The page to be extracted
 	 * @param aItemsPerPage[in] Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError filtered( SmfPluginRequestData &aRequest,
 			QList<SmfActivityObjectType> &aFilters,
@@ -83,11 +86,12 @@
 	/**
 	 * Customised method for SmfActivityFetcherPlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smfcontactfetcherplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfcontactfetcherplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -46,9 +46,10 @@
 	/**
 	 * Method to get the list of friends
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError friends( SmfPluginRequestData &aRequest,
 			const int aPageNum = SMF_FIRST_PAGE, 
@@ -57,21 +58,23 @@
 	/**
 	 * Method to get the list of followers
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError followers( SmfPluginRequestData &aRequest,
 			const int aPageNum = SMF_FIRST_PAGE, 
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
-	 * Method to search for a contact
+	 * Method to search for a contact (name or service ID should be provided)
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aContact contact to be searched
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aContact [in] contact to be searched
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError search( SmfPluginRequestData &aRequest,
 			const SmfContact &aContact,
@@ -82,11 +85,12 @@
 	 * Method to search for contacts (friends) who are near the user.
 	 * Proximity defines accuracy level
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aLocation The location search criteria
-	 * @param aProximity location search boundary
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aLocation [in] The location search criteria
+	 * @param aProximity [in] location search boundary
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError searchNear( SmfPluginRequestData &aRequest,
 			const SmfLocation &aLocation,
@@ -99,7 +103,8 @@
 	 * @param aRequest [out] The request data to be sent to network
 	 * @param aPageNum The page to be extracted
 	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError groups( SmfPluginRequestData &aRequest,
 			const int aPageNum = SMF_FIRST_PAGE, 
@@ -108,24 +113,29 @@
 	/**
 	 * Method to search for a contact in a group
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aGroup the group in which to search
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aGroup [in] the group in which to search
+	 * @param aContact [in] The contact to be searched, 
+	 * default (NULL) is the self contact.
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError searchInGroup( SmfPluginRequestData &aRequest,
 			const SmfGroup &aGroup,
+			SmfContact *aContact = NULL,
 			const int aPageNum = SMF_FIRST_PAGE, 
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
 	 * Customised method for SmfContactFetcherPlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/smf/smfservermodule/smfserver/smfplugins/smfeventsfetcherplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -0,0 +1,118 @@
+/**
+ * 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:
+ * Interface specification for events
+ * Note: This class has dependencies on QtMobility project
+ *
+ */
+
+
+#ifndef SMFEVENTSFETCHERPLUGIN_H_
+#define SMFEVENTSFETCHERPLUGIN_H_
+
+#include <smfpluginbase.h>
+#include <smfevent.h>
+#include <smflocation.h>
+#include <smfcontact.h>
+
+using namespace QtMobility;
+
+/**
+ * @ingroup smf_plugin_group
+ * Interface specification for events
+ *
+ * All of the functionality described here should be implemented by a service
+ * specific plug-in.
+ * 
+ * Note: This class has dependencies on QtMobility project
+ */
+class SmfEventsFetcherPlugin : public SmfPluginBase
+	{
+public:
+	
+	/**
+	 * Destructor
+	 */
+	virtual ~SmfEventsFetcherPlugin( ) {}
+	
+	/**
+	 * Method to get the events on the specified location
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aLocation [in] Location of the event
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError events( SmfPluginRequestData &aRequest,
+			const SmfLocation &aLocation,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to get the venues on the specified location
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aLocation [in] Location of the venue
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError venues( SmfPluginRequestData &aRequest,
+			const SmfLocation &aLocation,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to get the list of attendees for an event
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aEvent [in] The event for which attendees should be fetched
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError attendees( SmfPluginRequestData &aRequest,
+			const SmfEvent &aEvent, 
+			const int aPageNum = SMF_FIRST_PAGE,
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	/**
+	 * Method to post event(s)
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aEventList [in] The list of events to be posted
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError postEvents( SmfPluginRequestData &aRequest,
+			const QList<SmfEvent> &aEventList ) = 0;
+	
+	/**
+	 * Customised method for SmfEventsFetcherPlugin interface
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aOperation [in] The operation type (should be known between 
+	 * the client interface and the plugin)
+	 * @param aData [in] The data required to form the request (The type 
+	 * of data should be known between client and the plugin)
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
+			const int &aOperation, QByteArray *aData ) = 0;
+	
+	};
+
+Q_DECLARE_INTERFACE( SmfEventsFetcherPlugin, "org.symbian.smf.plugin.events.fetcher/v0.2" );
+
+#endif /* SMFEVENTSFETCHERPLUGIN_H_ */
--- a/smf/smfservermodule/smfserver/smfplugins/smfgalleryplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfgalleryplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -65,11 +65,13 @@
 	/**
 	 * Method to get a list of albums
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aNames The subject or any keywords to be used to filter albums with that name
-	 * @param aUser The user whose albums are requested
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aNames [in] The subject or any keywords to be used to filter 
+	 * albums with that name
+	 * @param aUser [in] The user whose albums are requested
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError albums( SmfPluginRequestData &aRequest, 
 			const QStringList &aNames, 
@@ -80,10 +82,11 @@
 	/**
 	 * Method to get a list of pictures
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aAlbums The album(s) whose pictures are being requested
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aAlbums [in] The album(s) whose pictures are being requested
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError pictures( SmfPluginRequestData &aRequest, 
 			const SmfPictureAlbumList &aAlbums, 
@@ -93,8 +96,9 @@
 	/**
 	 * Method to get a description
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aImage The image abot which the description is required
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aImage [in] The image about which the description is required
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError description( SmfPluginRequestData &aRequest,
 			const SmfPicture &aImage ) = 0;
@@ -102,9 +106,10 @@
 	/**
 	 * Method to upload a picture
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aImage The image to be uploaded
-	 * @param aAlbum the optional destination album name
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aImage [in] The image to be uploaded
+	 * @param aAlbum [in] the optional destination album name
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError upload( SmfPluginRequestData &aRequest,
 			const SmfPicture &aImage,
@@ -113,9 +118,10 @@
 	/**
 	 * Method to upload a list of pictures
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aImages The list of images to be uploaded
-	 * @param aAlbum the optional destination album name
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aImages [in] The list of images to be uploaded
+	 * @param aAlbum [in] the optional destination album name
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError upload( SmfPluginRequestData &aRequest,
 			const QList<SmfPicture> &aImages, 
@@ -124,9 +130,11 @@
 	/**
 	 * Method to post comment on a picture is available
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aImage The image on which comment is to be posted
-	 * @param aComment The comment to be posted
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aImage [in] The image on which comment is to be 
+	 * posted (its id should be present)
+	 * @param aComment [in] The comment to be posted
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postComment( SmfPluginRequestData &aRequest,
 			const SmfPicture &aImage, 
@@ -135,11 +143,12 @@
 	/**
 	 * Customised method for SmfGalleryPlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smflyricsserviceplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smflyricsserviceplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -46,10 +46,11 @@
 	/**
 	 * Method to get the lyrics
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track whose lyrics need to be fetched
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The track whose lyrics need to be fetched
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError lyrics( SmfPluginRequestData &aRequest, 
 			const SmfTrackInfo &aTrack,
@@ -59,11 +60,12 @@
 	/**
 	 * Method to get the subtitle
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track whose subtitle need to be fetched
-	 * @param aFilter The subtitle search filter if any
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The track whose subtitle need to be fetched
+	 * @param aFilter [in] The subtitle search filter if any
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError subtitles( SmfPluginRequestData &aRequest, 
 			const SmfTrackInfo &aTrack,
@@ -74,11 +76,12 @@
 	/**
 	 * Customised method for SmfLyricsServicePlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smfmusiceventsplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-/**
- * 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:
- * Interface specification for music events
- * Note: This class has dependencies on QtMobility project
- *
- */
-
-
-#ifndef SMFMUSICEVENTSPLUGIN_H_
-#define SMFMUSICEVENTSPLUGIN_H_
-
-#include <smfpluginbase.h>
-#include <smfevent.h>
-#include <smflocation.h>
-#include <qgeopositioninfo.h> // Qt mobility class
-
-using namespace QtMobility;
-
-/**
- * @ingroup smf_plugin_group
- * Interface specification for music events
- *
- * All of the functionality described here should be implemented by a service
- * specific plug-in.
- * 
- * Note: This class has dependencies on QtMobility project
- */
-class SmfMusicEventsPlugin : public SmfPluginBase
-	{
-public:
-	
-	/**
-	 * Destructor
-	 */
-	virtual ~SmfMusicEventsPlugin( ) {}
-	
-	/**
-	 * Method to get the events based on location
-	 * @param aRequest [out] The request data to be sent to network
-	 * @param aLocation Location of the event
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
-	 */
-	virtual SmfPluginError events( SmfPluginRequestData &aRequest,
-			const SmfLocation &aLocation,
-			const int aPageNum = SMF_FIRST_PAGE, 
-			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
-	
-	/**
-	 * Method to get the venues based on location
-	 * @param aRequest [out] The request data to be sent to network
-	 * @param aLocation Location of the venue
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
-	 */
-	virtual SmfPluginError venues( SmfPluginRequestData &aRequest,
-			const SmfLocation &aLocation,
-			const int aPageNum = SMF_FIRST_PAGE, 
-			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
-	
-	/**
-	 * Method to post events
-	 * @param aRequest [out] The request data to be sent to network
-	 * @param aEventList The list of events to be posted
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
-	 */
-	virtual SmfPluginError postEvents( SmfPluginRequestData &aRequest,
-			const QList<SmfEvent> &aEventList ) = 0;
-	
-	/**
-	 * Customised method for SmfMusicEventsPlugin interface
-	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
-	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
-	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
-	 */
-	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
-			const int &aOperation, QByteArray *aData ) = 0;
-	
-	};
-
-Q_DECLARE_INTERFACE( SmfMusicEventsPlugin, "org.symbian.smf.plugin.music.events/v0.2" );
-
-#endif /* SMFMUSICEVENTSPLUGIN_H_ */
--- a/smf/smfservermodule/smfserver/smfplugins/smfmusicsearchplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfmusicsearchplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -25,6 +25,8 @@
 #include <QList>
 #include <smfmusicfingerprint.h>
 #include <smftrackinfo.h>
+#include <smfalbum.h>
+#include <smfartists.h>
 
 /**
  * @ingroup smf_plugin_group
@@ -47,11 +49,12 @@
 	/**
 	 * Method to get recommended tracks
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track for which similar recommendations 
+	 * @param aTrack [in] The track for which similar recommendations 
 	 * need to be fetched.
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError recommendations( SmfPluginRequestData &aRequest,
 			const SmfTrackInfo &aTrack,
@@ -59,27 +62,57 @@
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
-	 * Method to get similar tracks
+	 * Method to search for tracks similar to a given track
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track for which similar tracks 
+	 * @param aTrack [in] The track for which similar tracks 
 	 * need to be fetched.
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
-	virtual SmfPluginError tracks( SmfPluginRequestData &aRequest,
+	virtual SmfPluginError tracksSimilar( SmfPluginRequestData &aRequest,
 			const SmfTrackInfo &aTrack,
 			const int aPageNum = SMF_FIRST_PAGE, 
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
+	 * Method to search for tracks of a given album
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aAlbum [in] The album whose tracks need to be fetched.
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError tracksOfAlbum( SmfPluginRequestData &aRequest,
+			const SmfAlbum &aAlbum,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to search for tracks of the given artist(s)
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aArtist [in] The artist(s) whose tracks need to be fetched.
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError tracksOfArtist( SmfPluginRequestData &aRequest,
+			const SmfArtists &aArtist,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
 	 * Method to get tracks having a similar finger print
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aSignature The finger print to be searched for need to be 
-	 * fetched.
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aSignature [in] The finger print to be searched for need  
+	 * to be fetched.
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError trackInfo( SmfPluginRequestData &aRequest,
 			const SmfMusicFingerPrint &aSignature,
@@ -89,10 +122,11 @@
 	/**
 	 * Method to search information about where to buy this song from
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track for which stores need to be searched
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The track for which stores need to be searched
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError stores( SmfPluginRequestData &aRequest,
 			const SmfTrackInfo &aTrack,
@@ -102,11 +136,12 @@
 	/**
 	 * Customised method for SmfMusicSearchPlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smfmusicserviceplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfmusicserviceplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -49,18 +49,80 @@
 	/**
 	 * Method to get self profile information
 	 * @param aRequest [out] The request data to be sent to network
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError userMusicInfo( SmfPluginRequestData &aRequest ) = 0;
+	
+	/**
+	 * Method to search information about artists. All information 
+	 * in SmfArtists is not required, however more available the better
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aArtist The artist which is the search criteria
+	 * @param aPageNum The page to be extracted
+	 * @param aItemsPerPage Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError searchArtist( SmfPluginRequestData &aRequest,
+			const SmfArtists &aArtist,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to search information about album. All information 
+	 * in SmfAlbum is not required, however more available the better
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aAlbum [in] The album which is the search criteria
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
-	virtual SmfPluginError userInfo( SmfPluginRequestData &aRequest ) = 0;
+	virtual SmfPluginError searchAlbum( SmfPluginRequestData &aRequest,
+			const SmfAlbum &aAlbum,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to search information about events. All information 
+	 * in SmfEvent is not required, however more available the better
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aEvent [in] The event which is the search criteria
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError searchEvents( SmfPluginRequestData &aRequest,
+			const SmfEvent &aEvent,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
+	
+	/**
+	 * Method to search information about venue. All information 
+	 * in SmfLocation is not required, however more available the better
+	 * @param aRequest [out] The request data to be sent to network
+	 * @param aVenue [in] The venue which is the search criteria
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
+	 */
+	virtual SmfPluginError searchVenue( SmfPluginRequestData &aRequest,
+			const SmfLocation &aVenue,
+			const int aPageNum = SMF_FIRST_PAGE, 
+			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
 	 * Method to search information about other service users for a 
 	 * particular place
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPlace The place which is the search criteria
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPlace [in] The place which is the search criteria
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError searchUser( SmfPluginRequestData &aRequest,
 			const SmfLocation &aPlace,
@@ -70,8 +132,9 @@
 	/**
 	 * Method to post the currently playing track
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The current playing track, that should be posted
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The current playing track, that should be posted
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postCurrentPlaying( 
 			SmfPluginRequestData &aRequest,
@@ -80,9 +143,10 @@
 	/**
 	 * Method to post the rating on a track
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track on which rating should be posted
-	 * @param aRating The rating values
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The track on which rating should be posted
+	 * @param aRating [in] The rating values
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postRating( 
 			SmfPluginRequestData &aRequest, 
@@ -92,9 +156,10 @@
 	/**
 	 * Method to post comment on a track
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTrack The track on which comment should be posted
-	 * @param aComment The comment content
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aTrack [in] The track on which comment should be posted
+	 * @param aComment [in] The comment content
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postComments( 
 			SmfPluginRequestData &aRequest, 
@@ -104,11 +169,12 @@
 	/**
 	 * Customised method for SmfMusicServicePlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smfplaylistserviceplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfplaylistserviceplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -25,6 +25,8 @@
 #include <smfplaylist.h>
 #include <smfmusicprofile.h>
 #include <smftrackinfo.h>
+#include <smfcontact.h>
+
 
 /**
  * @ingroup smf_plugin_group
@@ -47,9 +49,10 @@
 	/**
 	 * Method to get the playlist
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError playlists( SmfPluginRequestData &aRequest,
 			const int aPageNum = SMF_FIRST_PAGE, 
@@ -58,22 +61,24 @@
 	/**
 	 * Method to get the playlist of a particular user
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aUser The user whose playlists need to be fetched
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aUser [in] The user whose playlists need to be fetched
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError playlistsOf( SmfPluginRequestData &aRequest,
-			const SmfMusicProfile &aUser,
+			const SmfContact &aUser,
 			const int aPageNum = SMF_FIRST_PAGE, 
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 	
 	/**
 	 * Method to add tracks to a playlist
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPlaylist The playlist where tracks should be added
-	 * @param aTracks The tracks to be added to the playlist
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPlaylist [in] The playlist where tracks should be added
+	 * @param aTracks [in] The tracks to be added to the playlist
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError addToPlaylist( SmfPluginRequestData &aRequest,
 			const SmfPlaylist &aPlaylist, 
@@ -82,8 +87,9 @@
 	/**
 	 * Method to post the current playing playlist
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPlaylist The current playing playlist which should be posted
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPlaylist [in] The current playing playlist which should be posted
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postCurrentPlayingPlaylist(
 			SmfPluginRequestData &aRequest, 
@@ -92,11 +98,12 @@
 	/**
 	 * Customised method for SmfPlaylistServicePlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/smfplugins/smfpluginbase.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfpluginbase.h	Thu Sep 23 17:43:31 2010 +0530
@@ -51,49 +51,68 @@
 	
 	/**
 	 * Method to get the result for a network request.
-	 * @param aOperation The type of operation to be requested
-	 * @param aTransportResult The result of transport operation
-	 * @param aReply The QByteArray instance containing the network response.
+	 * @param aOperation [in] The type of operation to be requested
+	 * @param aTransportResult [in] The result of transport operation
+	 * @param aReply [in] The QByteArray instance containing the network response.
 	 * The plugins should delete this instance once they have read the 
 	 * data from it.
 	 * @param aResult [out] An output parameter to the plugin manager.If the 
 	 * return value is SmfSendRequestAgain, QVariant will be of type 
 	 * SmfPluginRequestData.
 	 * 
+	 * For SmfActivityFetcherPlugin: If the last operation was selfActivities(), 
+	 * friendsActivities() or filtered(), aResult will be of type QList<SmfActivityEntry>
+	 * 
 	 * For SmfContactFetcherPlugin: If last operation was friends() or followers() 
 	 * or search() or searchInGroup() or searchNear(), aResult will be of type 
 	 * QList<SmfContact>. If last operation was groups(), aResult will be of 
 	 * type QList<SmfGroup>
+	 * 
+	 * For SmfEventsFetcherPlugin: If the last operation was events(), aResult will 
+	 * be of type QList<SmfEvent>. If the last operation was venues(), aResult 
+	 * will be of type QList<SmfLocation>. If the last operation was attendees(), 
+	 * aResult will be of type QList<SmfContact>. If the last operation was 
+	 * postEvents(), aResult will be of type bool.
+	 * 
+	 * For SmfGalleryPlugin: If last operation was albums, aResult will be of 
+	 * type QList<SmfPictureAlbum>. If the last operation was pictures(), aResult 
+	 * will be of type QList<SmfPicture>. If last operation was description(), 
+	 * aResult will be of type QString. If last operation was upload() or 
+	 * postComment(), aResult will be of type bool.
+	 * 
+	 * For SmfLyricsServicePlugin: If last operation was lyrics(), aResult will 
+	 * be of type QList<SmfLyrics>. If last operation was subtitles(), aResult will 
+	 * be of type QList<SmfSubtitle>.
+	 * 
+	 * For SmfMusicSearchPlugin: If last operation was recommendations() or 
+	 * tracksSimilar() or tracksOfAlbum() or tracksOfArtist() or trackInfo(), 
+	 * aResult will be of type QList<SmfTrackInfo>. If last operation was 
+	 * stores(), aResult will be of type QList<SmfProvider>.
+	 * 
+	 * For SmfMusicServicePlugin: If last operation was userMusicInfo(), aResult 
+	 * will be of type SmfMusicProfile. If last operation was searchArtist(), 
+	 * aResult will be of type QList<SmfArtists>. If last operation was searchAlbum(), 
+	 * aResult will be of type QList<SmfAlbum>. If last operation was searchEvents(), 
+	 * aResult will be of type QList<SmfEvent>. If last operation was searchVenue(), 
+	 * aResult will be of type QList<Smfocation>. If last operation was searchUser(), 
+	 * aResult will be of type QList<SmfMusicProfile>. If last operation was 
+	 * postCurrentPlaying() or postRating() or postComments(), aResult will be of 
+	 * type bool.
+	 * 
+	 * For SmfPlaylistServicePlugin: If last operation was playlists() or 
+	 * playlistsOf(), aResult will be of type QList<SmfPlaylist>. If last 
+	 * operation was addToPlaylist() or postCurrentPlayingPlaylist(), 
+	 * aResult will be of type bool.
+	 * 
 	 * For SmfPostProviderPlugin: If last operation was retrieve(), aResult will be 
 	 * of type QList<SmfPost>. If last operation was post() or updatePost() or 
 	 * postDirected() or commentOnAPost() or postAppearence() or sharePost(), 
 	 * aResult will be of type bool
-	 * For SmfLyricsServicePlugin: If last operation was lyrics(), aResult will 
-	 * be of type QList<SmfLyrics>. If last operation was subtitles(), aResult will 
-	 * be of type QList<SmfSubtitle>.
-	 * For SmfMusicEventsPlugin: If last operation was events(), aResult will 
-	 * be of type QList<SmfEvent>. If last operation was venues(), aResult 
-	 * will be of type QList<SmfLocation>. If last operation was postEvents(), 
-	 * aResult will be of type bool
-	 * For SmfMusicSearchPlugin: If last operation was recommendations() or 
-	 * tracks() or trackInfo(), aResult will be of type QList<SmfTrackInfo>. 
-	 * If last operation was stores(), aResult will be of type 
-	 * QList<SmfProvider>. If last operation was postCurrentPlaying(), 
-	 * aResult will be of type bool.
-	 * For SmfMusicServicePlugin: If last operation was userInfo(), aResult 
-	 * will be of type SmfMusicProfile. If last operation was searchUser(), 
-	 * aResult will be of type QList<SmfMusicProfile>.
-	 * For SmfPlaylistServicePlugin: If last operation was playlists() or 
-	 * playlistsOf(), aResult will be of type QList<SmfPlaylist>. If last 
-	 * operation was addToPlaylist() or postCurrentPlayingPlaylist(), 
-	 * aResult will be of type bool.
-	 * For SmfGalleryPlugin: If last operation was pictures(), aResult will 
-	 * be of type QList<SmfPicture>. If last operation was description(), 
-	 * aResult will be of type QString. If last operation was upload() or 
-	 * postComment(), aResult will be of type bool.
 	 * 
-	 * @param aRetType [out] SmfPluginRetType
+	 * @param aRetType [out] Appropriate value of the enum SmfPluginRetType
 	 * @param aPageResult [out] The SmfResultPage structure variable
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError responseAvailable( 
 			const SmfRequestTypeID aOperation,
--- a/smf/smfservermodule/smfserver/smfplugins/smfplugins.pri	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfplugins.pri	Thu Sep 23 17:43:31 2010 +0530
@@ -5,9 +5,9 @@
 	smfplugins/smfproviderbase.h \
 	smfplugins/smfactivityfetcherplugin.h \
 	smfplugins/smfcontactfetcherplugin.h \
+	smfplugins/smfeventsfetcherplugin.h \
 	smfplugins/smfpostproviderplugin.h \
 	smfplugins/smflyricsserviceplugin.h \
-	smfplugins/smfmusiceventsplugin.h \
 	smfplugins/smfmusicsearchplugin.h \
 	smfplugins/smfmusicserviceplugin.h \
 	smfplugins/smfplaylistserviceplugin.h \
@@ -19,9 +19,9 @@
     BLD_INF_RULES.prj_exports += smfplugins/smfproviderbase.h
     BLD_INF_RULES.prj_exports += smfplugins/smfactivityfetcherplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smfcontactfetcherplugin.h
+    BLD_INF_RULES.prj_exports += smfplugins/smfeventsfetcherplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smfpostproviderplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smflyricsserviceplugin.h
-    BLD_INF_RULES.prj_exports += smfplugins/smfmusiceventsplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smfmusicsearchplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smfmusicserviceplugin.h
     BLD_INF_RULES.prj_exports += smfplugins/smfplaylistserviceplugin.h
--- a/smf/smfservermodule/smfserver/smfplugins/smfpostproviderplugin.h	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/smfplugins/smfpostproviderplugin.h	Thu Sep 23 17:43:31 2010 +0530
@@ -52,6 +52,7 @@
 	 * @return Max characters that can be posted without truncation
 	 */
 	virtual qint32 maxCharsInPost( ) const = 0;
+	
 	/**
 	 * Method that returns maximum no of items that can be returned 
 	 * in a single query to getPosts. Negative value means feature 
@@ -78,13 +79,14 @@
 	/**
 	 * Method to get the latest posts
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aUser The user's contact in this SP, omit for self contact
-	 * @param aPageNum The page to be extracted
-	 * @param aItemsPerPage Number of items per page
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aUser [in] The user's contact in this SP, omit for self contact
+	 * @param aPageNum [in] The page to be extracted
+	 * @param aItemsPerPage [in] Number of items per page
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError retrieve( SmfPluginRequestData &aRequest,
-			const SmfContact *aUser=0,
+			const SmfContact *aUser = NULL,
 			const int aPageNum = SMF_FIRST_PAGE, 
 			const int aItemsPerPage = SMF_ITEMS_PER_PAGE ) = 0;
 
@@ -92,9 +94,10 @@
 	/**
 	 * Method to update a post to own area.
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPostData The post data to be posted
-	 * @param aLocation The location
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPostData [in] The post data to be posted
+	 * @param aLocation [in] The location
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError post( SmfPluginRequestData &aRequest,
 			const SmfPost &aPostData, 
@@ -103,8 +106,9 @@
 	/**
 	 * Method to update the last post to own area with new data
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPostData The edited/new data to be posted
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPostData [in] The edited/new data to be posted
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError updatePost( SmfPluginRequestData &aRequest,
 			const SmfPost &aPostData ) = 0;
@@ -112,10 +116,11 @@
 	/**
 	 * Method to update a post to a particular contact
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPostData The post data to be posted
-	 * @param aContact The contact where the data has to be posted
-	 * @param aLocation The location
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPostData [in] The post data to be posted
+	 * @param aContact [in] The contact where the data has to be posted
+	 * @param aLocation [in] The location
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postDirected( SmfPluginRequestData &aRequest,
 			const SmfPost &aPostData, 
@@ -126,9 +131,11 @@
 	/**
 	 * Method to post a comment on a post.
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aTarget Post on which comment has to be posted
-	 * @param aComment comment to be posted
-	 * @param aLocation location data
+	 * @param aTarget [in] Post on which comment has to be posted
+	 * @param aComment [in] comment to be posted
+	 * @param aLocation [in] location data
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError commentOnAPost(SmfPluginRequestData &aRequest,
 			const SmfPost &aTarget,
@@ -138,9 +145,10 @@
 	/**
 	 * Method to update the presence information of the user
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aAppearence The appearence information
-	 * @param aStatus The status string
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aAppearence [in] The appearence information
+	 * @param aStatus [in] The status string
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError postAppearence( SmfPluginRequestData &aRequest,  
 			const SmfPresenceInfo &aAppearence,
@@ -150,24 +158,26 @@
 	 * Share a contact's post to user's friends and followers
 	 * (e.g. retweet in twitter, share on facebook)
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aPostData data to be posted
-	 * @param aContact contact to which the post belonged
-	 * @param aEdited whether user changed items within the post
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @param aPostData [in] data to be posted
+	 * @param aContact [in] contact to which the post belonged
+	 * @param aEdited [in] whether user changed items within the post
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError sharePost( SmfPluginRequestData &aRequest, 
 			const SmfPost &aPostData, 
 			const SmfContact &aContact, 
-			const bool &aEdited) = 0;
+			const bool &aEdited ) = 0;
 	
 	/**
 	 * Customised method for SmfPostProviderPlugin interface
 	 * @param aRequest [out] The request data to be sent to network
-	 * @param aOperation The operation type (should be known between 
+	 * @param aOperation [in] The operation type (should be known between 
 	 * the client interface and the plugin)
-	 * @param aData The data required to form the request (The type 
+	 * @param aData [in] The data required to form the request (The type 
 	 * of data should be known between client and the plugin)
-	 * @return SmfPluginError Plugin error if any, else SmfPluginErrNone
+	 * @return Appropriate value of the enum SmfPluginError.
+	 * Plugin error if any, else SmfPluginErrNone for success
 	 */
 	virtual SmfPluginError customRequest( SmfPluginRequestData &aRequest, 
 			const int &aOperation, QByteArray *aData ) = 0;
--- a/smf/smfservermodule/smfserver/transportmgr/smftransportmanager.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/transportmgr/smftransportmanager.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -32,7 +32,6 @@
  */
 SmfTransportManager* SmfTransportManager::getInstance ( )
 	{
-	qDebug()<<"Inside SmfTransportManager::getInstance()";
 	if(NULL == m_myInstance)
 		m_myInstance = new SmfTransportManager( );
 	return m_myInstance;
@@ -44,8 +43,6 @@
  */
 SmfTransportManager::SmfTransportManager ( )
 	{
-	qDebug()<<"Inside SmfTransportManager::SmfTransportManager()";
-
 	m_systemInfo = new QSystemNetworkInfo(this);
 	
 	m_netwConfigMngr = new QNetworkConfigurationManager(this);
--- a/smf/smfservermodule/smfserver/transportmgr/smftransportmanagerutil.cpp	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/smfserver/transportmgr/smftransportmanagerutil.cpp	Thu Sep 23 17:43:31 2010 +0530
@@ -161,7 +161,7 @@
 		
 		// Set the cache control
 		aRequest.setRawHeader("Cache-Control", kSmfCacheControl);
-
+		
 		// Put the same user agent for all requests sent by Smf
 		aRequest.setRawHeader("User-Agent", kSmfUserAgent);
 		
@@ -601,7 +601,7 @@
 				{
 				gzipEncoded = true;
 				qDebug()<<"Response is gzip encoded!!!";
-			arr = inflateResponse(response, error);
+				arr = inflateResponse(response, error);
 				if(!arr)
 					trResult = SmfTransportOpGzipError;
 			}
@@ -664,7 +664,9 @@
 	QByteArray sizeStr;
 	for(int count = 1 ; count <= 4 ; count++)
 		sizeStr.append(aResponse[aResponse.size()-count]);
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Size string as a string = "<<QString(sizeStr.toHex());
+#endif
 	bool ok = false;
 	int uncomSize = sizeStr.toHex().toInt(&ok, 16);
 	qDebug()<<"Size of uncompressed data = "<<uncomSize;
@@ -688,7 +690,9 @@
 	stream.next_in = Z_NULL;
 	
 	int ret = inflateInit2(&stream, 16+MAX_WBITS);
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"return value of inflateInit2() = "<<ret;
+#endif
 	if(Z_OK != ret)
 		{
 		qDebug()<<"Error in inflateInit2, returning...";
@@ -711,7 +715,9 @@
 	stream.next_out = out;
 	
 	ret = inflate(&stream, Z_NO_FLUSH);
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"return value of inflate() = "<<ret;
+#endif
 	
 	switch (ret) 
 		{
@@ -720,6 +726,7 @@
 		case Z_DATA_ERROR:
 		case Z_MEM_ERROR:
 			{
+			qDebug()<<"Error in inflate, returning...";
 			(void)inflateEnd(&stream);
 			delete[] out;
 			aError = SmfTMGzipDataError;
@@ -736,9 +743,13 @@
 	
 	// If there is some unwanted data at the end of uncompressed data, chop them
 	int chopLength = uncompressedData->size() - uncomSize;
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"old size of uncompressed data = "<<uncompressedData->size();
+#endif
 	uncompressedData->chop(chopLength);
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"new size of uncompressed data = "<<uncompressedData->size();
+#endif
 	
 	return uncompressedData;
 	}
@@ -778,8 +789,10 @@
 	
 	// Call deflateInit2 for gzip compression initialization
 	int initError = deflateInit2(&stream, level, method, windowBits, mem_level, strategy);
+#ifdef DETAILEDDEBUGGING
 	qDebug()<<"Return value of deflateInit2() = "<<initError;
 	qDebug()<<"Error msg if any = "<<QString(zError(initError));
+#endif
 	
 	if(Z_OK != initError)
 		{
--- a/smf/smfservermodule/util/qjson/lib/qjson.prl	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/util/qjson/lib/qjson.prl	Thu Sep 23 17:43:31 2010 +0530
@@ -1,4 +1,4 @@
-QMAKE_PRL_BUILD_DIR = D:/smf/MissingCode/smfrepo/smf/smfservermodule/util/qjson/src
+QMAKE_PRL_BUILD_DIR = D:/ARMv5/sfmerged/sf/smf/smfservermodule/util/qjson/src
 QMAKE_PRO_INPUT = src.pro
 QMAKE_PRL_TARGET = qjson
 QMAKE_PRL_CONFIG = include_source_dir lex yacc warn_on debug uic resources qt warn_on incremental debug shared stl exceptions rtti def_files create_prl dll shared qtmain moc thread
--- a/smf/smfservermodule/util/qjson/src/eabi/qjsonu.def	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/util/qjson/src/eabi/qjsonu.def	Thu Sep 23 17:43:31 2010 +0530
@@ -45,16 +45,14 @@
 	_ZNK5QJson18SerializerRunnable10metaObjectEv @ 44 NONAME
 	_ZNK5QJson6Parser11errorStringEv @ 45 NONAME
 	_ZNK5QJson6Parser9errorLineEv @ 46 NONAME
-	_ZTIN2yy11json_parserE @ 47 NONAME
-	_ZTIN5QJson14ParserRunnableE @ 48 NONAME
-	_ZTIN5QJson18SerializerRunnableE @ 49 NONAME
-	_ZTVN2yy11json_parserE @ 50 NONAME
-	_ZTVN5QJson14ParserRunnableE @ 51 NONAME
-	_ZTVN5QJson18SerializerRunnableE @ 52 NONAME
-	_ZThn8_N5QJson14ParserRunnable3runEv @ 53 NONAME
-	_ZThn8_N5QJson14ParserRunnableD0Ev @ 54 NONAME
-	_ZThn8_N5QJson14ParserRunnableD1Ev @ 55 NONAME
-	_ZThn8_N5QJson18SerializerRunnable3runEv @ 56 NONAME
-	_ZThn8_N5QJson18SerializerRunnableD0Ev @ 57 NONAME
-	_ZThn8_N5QJson18SerializerRunnableD1Ev @ 58 NONAME
+	_ZTIN5QJson14ParserRunnableE @ 47 NONAME
+	_ZTIN5QJson18SerializerRunnableE @ 48 NONAME
+	_ZTVN5QJson14ParserRunnableE @ 49 NONAME
+	_ZTVN5QJson18SerializerRunnableE @ 50 NONAME
+	_ZThn8_N5QJson14ParserRunnable3runEv @ 51 NONAME
+	_ZThn8_N5QJson14ParserRunnableD0Ev @ 52 NONAME
+	_ZThn8_N5QJson14ParserRunnableD1Ev @ 53 NONAME
+	_ZThn8_N5QJson18SerializerRunnable3runEv @ 54 NONAME
+	_ZThn8_N5QJson18SerializerRunnableD0Ev @ 55 NONAME
+	_ZThn8_N5QJson18SerializerRunnableD1Ev @ 56 NONAME
 
--- a/smf/smfservermodule/util/qjson/src/src.pro	Thu Sep 23 17:20:22 2010 +0530
+++ b/smf/smfservermodule/util/qjson/src/src.pro	Thu Sep 23 17:43:31 2010 +0530
@@ -72,7 +72,7 @@
 
   # do not freeze api-> no libs produced. Comment when freezing!
   # run "abld freeze winscw" to create def files
-  symbian:MMP_RULES += "EXPORTUNFROZEN"
+  #symbian:MMP_RULES += "EXPORTUNFROZEN"
 
 
   # add dll to the sis