smf/smfservermodule/smfcommon/smfmusicprofile.h
changeset 25 a180113055cb
parent 18 013a02bf2bb0
equal deleted inserted replaced
24:1cee9f1b95e0 25:a180113055cb
    18  */
    18  */
    19 
    19 
    20 #ifndef SMFMUSICPROFILE_H_
    20 #ifndef SMFMUSICPROFILE_H_
    21 #define SMFMUSICPROFILE_H_
    21 #define SMFMUSICPROFILE_H_
    22 
    22 
       
    23 #include <qdatastream.h>
       
    24 #include <QSharedData>
       
    25 #include <QMetaType>
       
    26 
    23 #include "smftrackinfo.h"
    27 #include "smftrackinfo.h"
    24 #include "smfevent.h"
    28 #include "smfevent.h"
    25 #include <qdatastream.h>
       
    26 #include <QSharedData>
       
    27 #include "smfclientglobal.h"
    29 #include "smfclientglobal.h"
    28 #include <QMetaType>
    30 
    29 
    31 
    30 class SmfMusicProfilePrivate;
    32 class SmfMusicProfilePrivate;
    31 /**
    33 
       
    34 /*
    32  * Implementation constants
    35  * Implementation constants
    33  */
    36  */
    34 const int SmfMusicProfileMaxSize = 20000;
    37 const int SmfMusicProfileMaxSize = 20000;
       
    38 
    35 /**
    39 /**
    36  * @ingroup smf_common_group
    40  * @ingroup smf_common_group
    37  * The music profile class represents a user's profile in music site
    41  * The music profile class represents a user's profile in music site
    38  */
    42  */
    39 class SMFCOMMON_EXPORT SmfMusicProfile
    43 class SMFCOMMON_EXPORT SmfMusicProfile
    60 	 * Destructor
    64 	 * Destructor
    61 	 */
    65 	 */
    62 	~SmfMusicProfile( );
    66 	~SmfMusicProfile( );
    63 	
    67 	
    64 	/**
    68 	/**
    65 	 * Method to get the user's used tracks
    69 	 * Method to get the user's most recently heard tracks
    66 	 * @return The users track list
    70 	 * @return The users most recently heard tracks
    67 	 */
    71 	 */
    68 	QList<SmfTrackInfo> musicUsageInfo( ) const;
    72 	QList<SmfTrackInfo> recentTracks( ) const;
    69 	
    73 	
    70 	/**
    74 	/**
    71 	 * Method to get the user's interested tracks
    75 	 * Method to get the user's favorite tracks e.g. could be user.getLovedTracks for last.fm
    72 	 * @return The users interested track list
    76 	 * @return The users favorite track list
    73 	 */
    77 	 */
    74 	QList<SmfTrackInfo> interestInfo( ) const;
    78 	QList<SmfTrackInfo> favorites( ) const;
    75 	
    79 	
    76 	/**
    80 	/**
    77 	 * Method to get the user events as list of SmfEvents
    81 	 * Method to get a list of upcoming events that this user is attending
    78 	 * @return The list of events
    82 	 * @return The list of upcoming events
    79 	 */
    83 	 */
    80 	QList<SmfEvent> userEvents( ) const;
    84 	QList<SmfEvent> userEvents( ) const;
    81 	
    85 	
    82 	/**
    86 	/**
    83 	 * Method to get the id of the music profile
    87 	 * Method to get the service specific id of this user
    84 	 * @return The ID value 
    88 	 * @return The ID value 
    85 	 */
    89 	 */
    86 	QString id( ) const;
    90 	QString id( ) const;
    87 	
    91 	
    88 	/**
    92 	/**
    89 	 * Method to set the user's used tracks
    93 	 * Method to set the user's recent tracks
    90 	 * @param aUsage The users new track list
    94 	 * @param aUsage The users new track list
    91 	 */
    95 	 */
    92 	void setMusicUsageInfo( const QList<SmfTrackInfo>& aUsage );
    96 	void setRecentTracks( const QList<SmfTrackInfo>& aUsage );
    93 	
    97 	
    94 	/**
    98 	/**
    95 	 * Method to set the user's interested tracks
    99 	 * Method to set the user's favorite tracks
    96 	 * @param aInterest The users new interested track list
   100 	 * @param aInterest The users new favorite track list
    97 	 */
   101 	 */
    98 	void setInterestInfo( const QList<SmfTrackInfo>& aInterest );
   102 	void setFavorites( const QList<SmfTrackInfo>& aInterest );
    99 	
   103 	
   100 	/**
   104 	/**
   101 	 * Method to set the user events as list of SmfEvents
   105 	 * Method to set the user events as list of SmfEvents
   102 	 * @param aList The list of events
   106 	 * @param aList The list of events
   103 	 */
   107 	 */