📄 smbmusicapsyncservercontentsplaysonginfomanager.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPSyncServerContentsPlaySongInfoManager.h
//
// Description:
// SmbMusicAPSyncServerContentsPlaySongInfoManager
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+-----------+----------------------------------------------
//2006/06/13 |娵壀 | 怴婯嶌惉
//2006/07/07 |K3悪杮 | 嵞惗嬋偺僀僥儗乕僞僆僽僕僃僋僩傪曐帩偡傞傛偆捛壛
//2006/09/11 |娵壀 | TRK8279懳墳
//2006/09/25 |K3悪杮 | [iKeeper(TRK):10184] 儗僕儏乕儉忣曬攋婞帪偵僀僥儗乕僞嶍彍傪捛壛
//2006/10/04 |娵壀 | [iKeeper(TRK):10861] 嵞惗嬋夋憸丄嵞惗嬋忣曬偺弴偱搊榐偟偨応崌偺懳張
//2006/10/13 |娵壀 | [iKeeper(TRK):11484] 僉儍僢僔儏僒僀僘傪係嬋仺俀嬋傊曄峏
#ifndef __SMBMUSICAPSYNCSERVERCONTENTSPLAYSONGINFOMANAGER_H__
#define __SMBMUSICAPSYNCSERVERCONTENTSPLAYSONGINFOMANAGER_H__
#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif // __SMBCOMMONDEF_H__
DCM_NAMESPACE_BEGIN
class RLog;
DCM_NAMESPACE_END
SEMCJ_NAMESPACE_BEGIN
/**
夋憸僼傽僀儖偺惗惉愭僨傿儗僋僩儕傪嶌惉偡傞
*/
_LIT(KSmbMusicAPSyncServerImageDir, "C:\\WcdmaMp\\MusicAP\\SyncServer\\");
/**
嵞惗嬋偵娷傑傟傞夋憸柤慜
*/
_LIT(KSmbMusicAPSyncServerPlaySongImage001, "C:\\WcdmaMp\\MusicAP\\SyncServer\\PlaySongImage001");
_LIT(KSmbMusicAPSyncServerPlaySongImage002, "C:\\WcdmaMp\\MusicAP\\SyncServer\\PlaySongImage002");
_LIT(KSmbMusicAPSyncServerPlaySongImage003, "C:\\WcdmaMp\\MusicAP\\SyncServer\\PlaySongImage003");
_LIT(KSmbMusicAPSyncServerPlaySongImage004, "C:\\WcdmaMp\\MusicAP\\SyncServer\\PlaySongImage004");
//@@TRK11484懳墳 Del Start
//const TInt KMaxPlaySongImageNumber = 4; ///<嵞惗嬋偺僼傽僀儖柤
////const TInt KMaxPlaySongNumber = 3; ///<奿擺偱偒傞嵞惗嬋忣曬偺嵟戝悢
//const TInt KMaxPlaySongNumber = 4; ///<奿擺偱偒傞嵞惗嬋忣曬偺嵟戝悢
//@@TRK11484懳墳 Del Start
//@@TRK11484懳墳 Add Start
const TInt KMaxPlaySongImageNumber = 2; ///<嵞惗嬋偺僼傽僀儖柤
const TInt KMaxPlaySongNumber = 2; ///<奿擺偱偒傞嵞惗嬋忣曬偺嵟戝悢
//@@TRK11484懳墳 Add Start
// 慜曽愰尵
class CSmbMusicMWLibIterator;
class CSmbMusicAPSyncServerContentsPlaySongInfoManager : public CBase
{
public:
/**
僐儞僗僩儔僋僞
* @param aLog 儘僌僒乕僶偲偺僙僢僔儑儞
* @return 側偟
*/
CSmbMusicAPSyncServerContentsPlaySongInfoManager(DCM_NAMESPACE::RLog& aLog);
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
~CSmbMusicAPSyncServerContentsPlaySongInfoManager();
/**
戞2僼僃乕僘僐儞僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
void ConstructL();
/**
嵞惗嬋偵娷傑傟傞夋憸傪搊榐偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in] aFile 夋憸僼傽僀儖偺惗惉僷僗乮僼儖僷僗偱僼傽僀儖柤傪巜掕乯
* @return 張棟寢壥
*/
TInt SetPlaySongImage(TSmbMusicAPSyncEngineItemIndex& aSongItem ,const TDesC& aFile);
/**
夋憸偑懚嵼偡傟偽庢摼偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in] aFile 夋憸僼傽僀儖偺惗惉僷僗乮僼儖僷僗偱僼傽僀儖柤傪巜掕乯
* @return 張棟寢壥 ETrue丗庢摼惉岟/EFalse丗庢摼幐攕
*/
TBool GetPlaySongImage(TSmbMusicAPSyncEngineItemIndex& aSongItem ,TDes& aFile);
/**
嵞惗嬋忣曬傪搊榐偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in] aSongInfo 嬋忣曬乮僩乕僞儖嵞惗帪娫乯
* @param [in] aArtistTitle 嬋忣曬乮傾乕僥傿僗僩柤乯
* @param [in] aAlbumTitle 嬋忣曬乮傾儖僶儉柤乯
* @param [in] aSongTitle 嬋忣曬乮嬋僞僀僩儖乯
* @return 側偟
*/
void SetPlaySongInfoL(TSmbMusicAPSyncEngineItemIndex& aSongItem, const TInt& aTotalPlayTime, const TDesC& aArtistTitle,
const TDesC& aAlbumTitle, const TDesC& aSongTitle);
/**
嵞惗嬋忣曬傪庢摼偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in,out] aSongInfo 嬋忣曬乮僩乕僞儖嵞惗帪娫乯
* @param [in,out] aArtistTitle 嬋忣曬乮傾乕僥傿僗僩柤乯
* @param [in,out] aAlbumTitle 嬋忣曬乮傾儖僶儉柤乯
* @param [in,out] aSongTitle 嬋忣曬乮嬋僞僀僩儖乯
* @return 張棟寢壥 ETrue丗庢摼惉岟/EFalse丗庢摼幐攕
*/
TBool GetPlaySongInfo(TSmbMusicAPSyncEngineItemIndex& aSongItem, TInt& aTotalPlayTime, TDes& aArtistTitle,
TDes& aAlbumTitle, TDes& aSongTitle);
/**
嵞惗嬋傾僀僥儉傪搊榐偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in] aPlayItem 嬋傾僀僥儉
* @return 側偟
*/
void SetPlaySongItem(TSmbMusicAPSyncEngineItemIndex& aSongItem, CSmbMusicMWLibMusicItem* aPlaySongItem);
/**
嵞惗嬋傾僀僥儉傪庢摼偡傞
* @param [in] aSongItem 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in,out] aPlayItem 嬋傾僀僥儉
* @return 張棟寢壥 ETrue丗庢摼惉岟/EFalse丗庢摼幐攕
*/
// TBool GetPlaySongItem(TSmbMusicAPSyncEngineItemIndex& aSongItem, CSmbMusicMWLibMusicItem* aPlaySongItem);
CSmbMusicMWLibMusicItem* GetPlaySongItem(TSmbMusicAPSyncEngineItemIndex& aSongItem);
/**
嵞惗嬋傾僀僥儉傪嶍彍偡傞
* @param [in] aListHandle 嬋傾僀僥儉偺儕僗僩僴儞僪儖
* @param [in] aIndex 嬋傾僀僥儉偺Index斣崋
* @return 側偟
*/
void DeletePlaySongItem(TInt aListHandle, TInt aIndex);
/**
嵞惗嬋偵娷傑傟傞夋憸偺僼傽僀儖Name傪庢摼偡傞
* @param 嶍彍偡傞嵞惗嬋娗棟僨乕僞偺僀儞僨僢僋僗
* @return 僼傽僀儖柤
*/
const TDesC* GetNextImageName();
/**
嵞惗帪偵惗惉偝傟傞嬋傾僀僥儉僀僥儗乕僞傪曐帩
* @param[in] aIterator 嵞惗嬋僀僥儗乕僞
*/
void SetPlaySongIterator(CSmbMusicMWLibIterator* aIterator);
/**
僉儍僢僔儏偟偰偄傞僨乕僞傪攋婞偡傞乮儕僗僩僴儞僪儖傪NULL巜掕偵偡傞偲慡偰偺僨乕僞傪攋婞偡傞乯
* @param[in] aHnadle 嶍彍懳徾偺儕僗僩僴儞僪儖
* @return 側偟
*/
void ClearPlaySongData(TInt* aHandle);
// ADD-S [iKeeper(TRK):10184] 儗僕儏乕儉忣曬攋婞帪偵僀僥儗乕僞嶍彍傪捛壛
/**
* 僀僥儗乕僞傪嶍彍偡傞
*/
void ClearPlaySongIterator();
// ADD-E [iKeeper(TRK):10184] 儗僕儏乕儉忣曬攋婞帪偵僀僥儗乕僞嶍彍傪捛壛
private:
/**
俀偮偺傾僀僥儉偑堦抳偡傞偐傪挷傋傞
* @param [in] aSongItemA 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @param [in] aSongItemB 嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index斣崋乯
* @return 張棟寢壥 ETrue丗堦抳/EFalse丗晄堦抳
*/
TBool CheckItem(TSmbMusicAPSyncEngineItemIndex& aItem, TSmbMusicAPSyncEngineItemIndex& aSongItem);
/**
屆偄忣曬傪嶍彍偡傞
* @param 側偟
* @return 側偟
*/
void DeleteOldItem();
/**
忣曬傪嶍彍偡傞
* @param 嶍彍偡傞嵞惗嬋娗棟僨乕僞偺僀儞僨僢僋僗
* @return 側偟
*/
void DeleteItem(TInt aIndex);
private:
DCM_NAMESPACE::RLog& iLog; ///<儘僌僒乕僶偲偺僙僢僔儑儞
/**
嵞惗嬋忣曬娗棟梡峔憿懱
*/
struct TPlaySongInfoStr
{
TSmbMusicAPSyncEngineItemIndex iSongItem; ///<嬋傾僀僥儉乮儕僗僩僴儞僪儖偲Index)
TInt iTotalPlayTime; ///<嵞惗帪娫
TDesC* iArtistTitle; ///<傾乕僥傿僗僩忣曬
TDesC* iAlbumTitle; ///<傾儖僶儉忣曬
TDesC* iSongTitle; ///<嬋僞僀僩儖忣曬
TDesC* iFile; ///<夋憸僼傽僀儖Name
CSmbMusicMWLibMusicItem* iItem; ///<嬋傾僀僥儉
//@@TRK10861懳墳 Add Start
TBool iPlayInfo; ///<嵞惗嬋忣曬搊榐僼儔僌
TBool iImage; ///<嵞惗嬋夋憸搊榐僼儔僌
//@@TRK10861懳墳 Add End
};
RPointerArray<TPlaySongInfoStr> iPlaySong; ///<嵞惗嬋娗棟僨乕僞
CSmbMusicMWLibIterator* iPlaySongIterator; ///<嵞惗嬋偺僀僥儗乕僞僆僽僕僃僋僩[has]
// TInt iImageNameCounter; ///<嵞惗嬋夋憸僇僂儞僞
};
SEMCJ_NAMESPACE_END
#endif __SMBMUSICAPSYNCSERVERCONTENTSPLAYSONGINFOMANAGER_H__
// end of SmbMusicAPSyncServerContentsPlaySongInfoManager.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -