⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smbmusicapmainplayerfilterprocessregistertoplaylist.h

📁 symbian
💻 H
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
//  SmbMusicAPMainPlayerFilterProcessRegisterToPlaylist.h
//
// Description: 
//  SmbMusicAPMainPlayerFilterProcessRegisterToPlaylist class header.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅          |曄峏幰     |撪梕
//--------------+-----------+----------------------------------------------
//2006/08/14	|SDNA壀嶳	|怴婯嶌惉

#ifndef __SMBMUSICAPMAINPLAYERFILTERPROCESSREGISTERTOPLAYLIST_H__
#define __SMBMUSICAPMAINPLAYERFILTERPROCESSREGISTERTOPLAYLIST_H__

#include "SmbMusicAPMainPlayerFilterProcess.h"
#include "SmbMusicAPMainPlayerFilterSyncServerController.h"

SEMCJ_NAMESPACE_BEGIN

class CSmbMusicAPMainPlayerFilterProcessRegisterToPlaylist : public CSmbMusicAPMainPlayerFilterProcess
														   , public MSmbMusicAPMainPlayerFilterSyncServerProcessResponseObserver
	{
public:

	/**
	 僐儞僗僩儔僋僞
	 * @param[in]	aObserver				僆僽僓乕僶偺億僀儞僞
	 * @param[in]	aSyncServerController	摨婜僒乕僶惂屼偺嶲徠
	 * @return	側偟
	 */
	CSmbMusicAPMainPlayerFilterProcessRegisterToPlaylist( MSmbMusicAPMainPlayerFilterProcessObserver&			aObserver,
													CSmbMusicAPMainPlayerFilterSyncServerController&	aSyncServerController);

	/**
	 僨僗僩儔僋僞
	 * @param	側偟
	 * @return	側偟
	 */
	virtual ~CSmbMusicAPMainPlayerFilterProcessRegisterToPlaylist();

	/**
	 * 僷儔儊乕僞愝掕
	 * @param[in]	aAllItem		慡審/巜掕僼儔僌
	 * @param[in]	aListHandle		儕僗僩僴儞僪儖
	 * @param[in]	aCount			捛壛悢
	 * @param[in]	aIndexArray		僀儞僨僢僋僗攝楍
	 * @param[in]	aListHandle		僾儗僀儕僗僩傾僀僥儉偺儕僗僩僴儞僪儖
	 * @param[in]	aIndex			僾儗僀儕僗僩傾僀僥儉偺Index斣崋
	 * @param[in]	aInsertIndex	捛壛愭僾儗僀儕僗僩嬋堦棗偵偍偗傞憓擖埵抲乮Index斣崋乯
	 *								晧偺抣偺応崌偼OverWritePlaylist, 侽埲忋偱偁傟偽InsertItemsToPlaylist
	 */
	TBool SetParam( TBool 				aAllItem, 
					TInt 				aSrcListHandle, 
					TInt 				aCount, 
					const RArray<TInt>*	aIndexArray,
					TInt 				aListHandle, 
					TInt 				aIndex,
					TInt 				aInsertIndex);
	
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: /* CSmbMusicAPMainPlayerFilterProcess */
	/**
 	 * 僾儘僙僗庬暿庢摼
 	 * @param	側偟
 	 * @return	僾儘僙僗庬暿
 	 */
	TSmbMusicAPMainPlayerFilterProcessType GetProcessType(){return EProcessTypeRegisterToPlaylist;};

	/**
	 * 張棟寢壥偺僇僂儞僩傪庢摼偡傞
	 * @param[in]	aCount	僇僂儞僩
	 * @return				側偟
	 */
	TInt GetResultCount(){return iCompleteCount;};

private: /* CSmbMusicAPMainPlayerFilterProcess */

	/**
	 * 僐儅儞僪張棟傪幚峴偡傞
	 * @param	側偟
	 * @return	側偟
	 */
	void DoSequence();

	/**
	 * 僐儅儞僪張棟傪拞巭偡傞
	 * @param	側偟
	 * @return	僉儍儞僙儖偺惉斲(ETrue:僉儍儞僙儖張棟幚巤 EFalse:僉儍儞僙儖枹懳墳)
	 */
	TBool CancelSequence();

	/**
	 * 偡傋偰偺僐儅儞僪幚峴偑廔傢偭偨偐偳偆偐妋擣偡傞
	 * @param	側偟
	 * @return	廔椆敾掕(ETrue:姰椆嵪 EFalse丗枹姰椆)
	 */
	TBool IsSequenceFinished();

	/**
	 * 師偺僀儞僨僢僋僗傪庢摼偡傞
	 * @param	側偟
	 * @return	師偑偁傞偐偳偆偐(ETrue:桳 EFalse丗柍)
	 */
	TBool GetNextIndex();


private:

//Change-S PTX-824 暯壀
	// 僐乕僨傿儞僌僈僀僪儔僀儞偵懃傝廋惓('_'傪徚嫀丄掕媊柤傪廋惓丄僐儊儞僩傪捛壛)
	/**
	 * 敪惗僀儀儞僩偺庬椶
	 */
	enum TFilterProcessRegisterToPlaylistEvent
		{
		EFilterProcessRegisterToPlaylistEventStart,
		EFilterProcessRegisterToPlaylistEventSyncServerComplete,
		EFilterProcessRegisterToPlaylistEventSyncServerCancel,
		EFilterProcessRegisterToPlaylistEventSyncServerErr,
		EFilterProcessRegisterToPlaylistEventSyncServerErrOverFlow,
		};

	/**
	 * 張棟忬懺偺庬椶
	 */
	enum TFilterProcessRegisterToPlaylistState
		{
		EFilterProcessRegisterToPlaylistStateIdle,					///< 枹張棟
		EFilterProcessRegisterToPlaylistStateWaitStart,				///< 張棟奐巒懸偪
		EFilterProcessRegisterToPlaylistStateWaitStartOverwrite,	///< 張棟奐巒懸偪
		EFilterProcessRegisterToPlaylistStateRegister,				///< 僾儗僀儕僗僩搊榐拞
		EFilterProcessRegisterToPlaylistStateCancel,				///< 僉儍儞僙儖
		EFilterProcessRegisterToPlaylistStateEnd,					///< 張棟廔椆
		EFilterProcessRegisterToPlaylistStateErr,					///< 僄儔乕廔椆
		};
//Change-E PTX-824 暯壀

	// 敪惗僀儀儞僩
	TFilterProcessRegisterToPlaylistEvent				iEvent;
	// 張棟忬懺
	TFilterProcessRegisterToPlaylistState				iState;

	// 摨婜僒乕僶惂屼
	CSmbMusicAPMainPlayerFilterSyncServerController&	iSyncServer;
	// 摨婜僒乕僶惂屼 梫媮ID
	TInt												iRequestId;

	TBool 												iAllItem;
	TInt 												iSrcListHandle;
	const RArray<TInt>*									iIndexArray;
	TInt 												iCount;
	TInt 												iListHandle;
	TInt 												iIndex;
	TInt 												iInsertIndex;

	RArray<TInt>										iTempIndexArray;
	TInt 												iExecuteCount;
	TInt 												iCompleteCount;
// Add-S PTX-824 暯壀
	DCM_NAMESPACE::RLog& 								iLog;			///< 儘僌弌椡僋儔僀傾儞僩(uses)
// Add-E PTX-824 暯壀
	};


SEMCJ_NAMESPACE_END

#endif // __SMBMUSICAPMAINPLAYERFILTERPROCESSREGISTERTOPLAYLIST_H__

// end of SmbMusicAPMainPlayerFilterProcessRegisterToPlaylist.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -