📄 smbmusicapmainplayerfilterprocessduplicateplaylist.h
字号:
/* Copyright (C) 2007 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterProcessDuplicatePlaylist.h
//
// Description:
// SmbMusicAPMainPlayerFilterProcessDuplicatePlaylist class header.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+-----------+----------------------------------------------
//2007/03/26 |暯壀 |怴婯嶌惉
#ifndef __SMBMUSICAPMAINPLAYERFILTERPROCESSDUPLICATEPLAYLIST_H__
#define __SMBMUSICAPMAINPLAYERFILTERPROCESSDUPLICATEPLAYLIST_H__
#include "SmbMusicAPMainPlayerFilterProcess.h"
#include "SmbMusicAPMainPlayerFilterSyncServerController.h"
SEMCJ_NAMESPACE_BEGIN
class CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist : public CSmbMusicAPMainPlayerFilterProcess
, public MSmbMusicAPMainPlayerFilterSyncServerProcessResponseObserver
// , public MSmbMusicAPMainPlayerSyncServerNotifyContentsObserver
{
public:
/**
僐儞僗僩儔僋僞
* @param[in] aObserver 僆僽僓乕僶偺億僀儞僞
* @param[in] aSyncServerController 摨婜僒乕僶惂屼偺嶲徠
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist(MSmbMusicAPMainPlayerFilterProcessObserver& aObserver,
CSmbMusicAPMainPlayerFilterSyncServerController& aSyncServerController);
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
virtual ~CSmbMusicAPMainPlayerFilterProcessDuplicatePlaylist();
/**
僷儔儊乕僞愝掕
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
* @param[in] aTitle 僾儗僀儕僗僩柤
* @return 愝掕偺惉斲
*/
TBool SetParam(TInt aListHandle, TInt aIndex, const TDesC& aTitle);
/**
儕僗僩僴儞僪儖庢摼
* @param 側偟
* @return 儕僗僩僴儞僪儖
*/
TInt GetParamListHandle();
/**
傾僀僥儉偺愭摢僀儞僨僢僋僗庢摼
* @param[out] aTopIndex 愭摢僀儞僨僢僋僗 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool GetTopIndex(TInt& aTopIndex);
/**
傾僀僥儉悢庢摼
* @param[out] aCount 傾僀僥儉悢 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool GetCount(TInt& aCount);
/**
傾僀僥儉忣曬庢摼
* @param[out] aItems 傾僀僥儉忣曬 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool GetItems(RArray<TSmbMusicAPSyncEngineListItemInfo>& aItems);
/**
憓擖偝傟偨僀儞僨僢僋僗庢摼
* @param[out] aIndex 僀儞僨僢僋僗 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool GetIndex(TInt& aIndex);
public: /* MSmbMusicAPMainPlayerFilterSyncServerProcessResponseObserver */
/**
* 梫媮姰椆
*
* @param[in] aKind 梫媮庬暿
* @param[in] aResult 張棟寢壥
* @param[in] aResponse 墳摎僋儔僗偺嶲徠乮忣曬庢摼梡乯
*/
void RequestComplete(TSmbMusicAPMainPlayerRequest aKind, TInt aResult, MSmbMusicAPMainPlayerFilterSyncServerProcessResponse& aResponse);
/**
* 梫媮僉儍儞僙儖
*
* @param[in] aKind 梫媮庬暿
* @param[in] aResponse 墳摎僋儔僗偺嶲徠乮忣曬庢摼梡乯
*/
void RequestCancel(TSmbMusicAPMainPlayerRequest aKind, MSmbMusicAPMainPlayerFilterSyncServerProcessResponse& aResponse);
//public: /* MSmbMusicAPMainPlayerSyncServerNotifyContentsObserver */
//
// /**
// * 僐儞僥儞僣宯僀儀儞僩捠抦
// *
// * @param[in] aEvent 僐儞僥儞僣宯僀儀儞僩
// */
// void NotifyContentsEventL(TSmbMusicAPSyncEngineContentsEvent& aEvent);
public: /* CSmbMusicAPMainPlayerFilterProcess */
/**
* 僾儘僙僗庬暿庢摼
* @param 側偟
* @return 僾儘僙僗庬暿
*/
TSmbMusicAPMainPlayerFilterProcessType GetProcessType(){return EProcessTypeDuplicatePlayList;};
private: /* CSmbMusicAPMainPlayerFilterProcess */
/**
* 僐儅儞僪張棟傪幚峴偡傞
* @param 側偟
* @return 側偟
*/
void DoSequence();
/**
* 偡傋偰偺僐儅儞僪幚峴偑廔傢偭偨偐偳偆偐妋擣偡傞
* @param 側偟
* @return 廔椆敾掕(ETrue:姰椆嵪 EFalse丗枹姰椆)
*/
TBool IsSequenceFinished();
/**
* 張棟寢壥偺僀儞僨僢僋僗傪曐懚偡傞
* @param[in] aIndex 僀儞僨僢僋僗
* @return 側偟
*/
// void SetResultIndex(TInt aIndex);
private:
enum TFilterProcessDuplicatePlaylistEvent
{
EFilterProcessDuplicatePlaylistEventStart,
EFilterProcessDuplicatePlaylistEventSyncServerComplete,
EFilterProcessDuplicatePlaylistEventSyncServerCancel,
EFilterProcessDuplicatePlaylistEventSyncServerErr,
// Add-S PTX-824懳墳(TRK-828)丂暯壀
EFilterProcessDuplicatePlaylistEventSyncServerErrDiskFull,
// Add-E PTX-824懳墳(TRK-828)丂暯壀
// EFilterProcessDuplicatePlaylistEventSyncServerNotify,
};
enum TFilterProcessDuplicatePlaylistState
{
EFilterProcessDuplicatePlaylistStateIdle, // 枹張棟
EFilterProcessDuplicatePlaylistStateWaitStart, // 張棟奐巒懸偪
EFilterProcessDuplicatePlaylistStateDuplicatePlaylist, // 僾儗僀儕僗僩嶌惉拞
// EFilterProcessDuplicatePlaylistStateWaitResult, // 寢壥捠抦懸偪
EFilterProcessDuplicatePlaylistStateGetListItems, // 傾僀僥儉庢摼拞
EFilterProcessDuplicatePlaylistStateEnd, // 張棟廔椆
EFilterProcessDuplicatePlaylistStateErr, // 僄儔乕廔椆
};
// 敪惗僀儀儞僩
TFilterProcessDuplicatePlaylistEvent iEvent;
// 張棟忬懺
TFilterProcessDuplicatePlaylistState iState;
// 摨婜僒乕僶惂屼
CSmbMusicAPMainPlayerFilterSyncServerController& iSyncServer;
// 摨婜僒乕僶惂屼 梫媮ID
TInt iRequestId;
// 僀儞僨僢僋僗愝掕僼儔僌
TBool iSetResultIndex;
// Add-S PTX-824 暯壀
DCM_NAMESPACE::RLog& iLog; ///< 儘僌弌椡僋儔僀傾儞僩(uses)
// Add-E PTX-824 暯壀
/* Input */
// 儕僗僩僴儞僪儖
TInt iListHandle;
// 暋惢尦僾儗僀儕僗僩偺僀儞僨僢僋僗
TInt iIndex;
// 僾儗僀儕僗僩柤徧
TBuf<KSmbMusicAPMainPlayerSongInfoWordLength> iPlaylistTitle;
/* Output */
// 傾僀僥儉偺愭摢僀儞僨僢僋僗
TInt iTopIndex;
// 傾僀僥儉偺庢摼悢
TInt iCount;
// 傾僀僥儉忣曬攝楍
RArray<TSmbMusicAPSyncEngineListItemInfo> iItems;
// 憓擖偝傟偨僀儞僨僢僋僗
TInt iResultIndex;
};
SEMCJ_NAMESPACE_END
#endif // __SMBMUSICAPMAINPLAYERFILTERPROCESDUPLICATEPLAYLIST_H__
// end of SmbMusicAPMainPlayerFilterProcessDuplicatePlaylist.h
/* Copyright (C) 2007 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -