📄 smbmusicapsyncservercontentsservicedeleteitem.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
// FileName:
// SmbMusicAPSyncServerContentsServiceDeleteItem.h
//
// Description:
// PTX810 Music傾僾儕 摨婜僒乕僶 傾僾儕摨婜僋儔僗
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+---------------+--------------------------------------
//2006/06/11 |娵壀 | 怴婯嶌惉
#ifndef __SMBMUSICAPSYNCSERVERCONTENTSSERVICEDELETEITEM_H__
#define __SMBMUSICAPSYNCSERVERCONTENTSSERVICEDELETEITEM_H__
#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif
#ifndef __E32BASE_H__
#include <e32base.h>
#endif
#ifndef __SMBMUSICAPSYNCSERVERCONTENTSSERVICEBASE_H__
#include "SmbMusicAPSyncServerContentsServiceBase.h"
#endif
class RMessage2;
DCM_NAMESPACE_BEGIN
class RLog;
DCM_NAMESPACE_END
SEMCJ_NAMESPACE_BEGIN
class MSmbMusicAPSyncServerCommandObserver;
class CSmbMusicAPSyncServerContentsFunc;
class CSmbMusicAPSyncServerContentsImageDataManager;
class CSmbMusicAPSyncServerContentsScreenTraceManager;
class MSmbMusicAPSyncServerContentsAsyncObserver;
class CSmbMusicAPSyncServerContentsPLOrderManager;
class CSmbMusicAPSyncServerContentsPlaySongInfoManager;
class CSmbMusicAPSyncServerContentsList;
class CSmbMusicAPSyncServerContentsItem;
class CSmbMusicMWLibItemArray;
class CSmbMusicMWLibMusicItem;
class TSmbMusicAPSyncServerContentsReqPkg;
//堦搙偵嶍彍偡傞傾僀僥儉悢
const TInt KSmbMusicAPSyncServerDeleteNumberAtOnce = 10;
//堦搙偵庢摼偡傞傾僀僥儉悢
const TInt KSmbMusicAPSyncServerGetItemNumberAtOnce = 50;
/**
* Music傾僾儕摨婜僒乕僶傾僀僥儉嶍彍僒乕價僗僋儔僗
*
*
*/
class CSmbMusicAPSyncServerContentsServiceDeleteItem : public CSmbMusicAPSyncServerContentsServiceBase
{
public:
/**
* @param [in/out/in,out] aRlog
* @param [in/out/in,out] aCommandObserver
* @param [in/out/in,out] aFunc
* @param [in/out/in,out] aImageData
* @param [in/out/in,out] aScreenData
* @param [in/out/in,out] aObserver
* @return
*/
CSmbMusicAPSyncServerContentsServiceDeleteItem(
DCM_NAMESPACE::RLog& aRlog,
CSmbMusicAPSyncServerModel& aModel,
MSmbMusicAPSyncServerContentsAsyncObserver& aObserver,
CSmbMusicAPSyncServerContentsFunc& aFunc,
MSmbMusicAPSyncServerContentsManagerInterface& aMgrIf,
CSmbMusicAPSyncServerContentsScreenTraceManager& aScreenData,
const RMessage2& aRMessage);
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
~CSmbMusicAPSyncServerContentsServiceDeleteItem();
/**
* @param [in/out/in,out] aRMessage
* @return
*/
TSmbMusicAPSyncServerContentsServiceState StartServiceL();
/**
* @param [in/out/in,out] aError
* @return 側偟
*/
TSmbMusicAPSyncServerContentsServiceState ServiceErr(TInt aError);
/**
* @param 側偟
* @return 側偟
*/
void CancelService();
/**
* @param 側偟
* @return
*/
TSmbMusicAPSyncServerContentsServiceState ContinueServiceL();
/**
* 僉儍儞僙儖梫媮偵懳偡傞僒乕價僗僉儍儞僙儖敾掕
*
* @param[in] aCancelEvent 僉儍儞僙儖梫媮偝傟偨僀儀儞僩僞僀僾
*
* @return 僉儍儞僙儖傪庴偗傞偐偳偆偐偺敾掕(ETrue:梫媮僉儍儞僙儖丄EFalse:梫媮傪僉儍儞僙儖偟側偄)
**/
TBool CheckCancel(TSmbMusicAPSyncServerFunction aCancelEvent);
private:
/**
* 梫媮儊僢僙乕僕偺撪梕傪僐僺乕偡傞
* @param [in] 側偟
* @return 側偟
*/
void ReadParamFromMsgL();
/**
傾僀僥儉嶍彍張棟偺慜弨旛
* @param 側偟
* @return 僒乕價僗偺忬懺
**/
TSmbMusicAPSyncServerContentsServiceState PrePareDeleteItemsL();
/**
* 傾僀僥儉嶍彍張棟幚峴
* @param [in] 側偟
* @return 側偟
*/
TSmbMusicAPSyncServerContentsServiceState DeleteItemsL();
/**
* 傾僀僥儉嶍彍姰椆偺僠僃僢僋
* @param [in] 側偟
* @return 側偟
*/
void CheckDeleteItems();
/**
* 嶍彍姰椆張棟
* @param [in] 側偟
* @return 側偟
*/
TSmbMusicAPSyncServerContentsServiceState CompleteDelete(TInt aResult);
/**
* 梫媮張棟姰椆
* @param [in] aResult 張棟寢壥
* @return 側偟
*/
TSmbMusicAPSyncServerContentsServiceState CompleteThisService(TInt aResult);
/**
* 傾僀僥儉惗惉偺拞巭
* @param [in] 側偟
* @return 側偟
*/
void CancelCreateItem();
/**
* 傾僀僥儉嶍彍偺拞巭
* @param [in] 側偟
* @return 側偟
*/
void CancelDeleteItem();
/**
* 儗僕儏乕儉忣曬傪嶍彍偡傞
* @param[in] aItem 嶍彍偡傞傾僀僥儉
* @return 側偟
**/
void DeleteResume(CSmbMusicMWLibMusicItem* aItem);
/**
* 嶍彍拞偺僄儔乕敪惗偱張棟傪宲懕偡傞偐傪敾抐偡傞
* @param[in] 側偟
* @return ETrue丗張棟傪宲懕/EFalse丗僄儔乕廔椆
**/
TBool CheckErrState();
/**
* 強桳偟偰偄傞傾僀僥儉傪嶍彍偡傞
* @param[in] 側偟
* @return 側偟
**/
void DeleteObject();
/**
* 嶍彍懳徾偺嬋傾僀僥儉傪惗惉偡傞
* @param[in] 側偟
* @return 張棟寢壥
**/
TSmbMusicAPSyncServerContentsServiceState CreateListItemsL();
/**
* 傾僀僥儉嶍彍張棟傪懕偗傞偐廔偊傞偐傪敾抐偡傞
* @param[in] 側偟
* @return 張棟寢壥
**/
TSmbMusicAPSyncServerContentsServiceState DeleteItemContinueORFinish();
/**
* 傾僀僥儉嶍彍寢壥傪僋儔僀傾儞僩偵捠抦偡傞
* @param[in] 側偟
* @return 側偟
**/
void NotifyEvent();
private:
//杮僒乕價僗僋儔僗偺忬懺
enum TSmbMusicAPSyncServerContentsServiceDeleteState
{
EIdleState, ///<梫媮側偟忬懺
ECreateItemState, ///<傾僀僥儉惗惉忬懺
EDeleteState ///<傾僀僥儉嶍彍忬懺
};
TSmbMusicAPSyncServerContentsReqPkg* iReqPkg; ///<梫媮儊僢僙乕僕
TPckg<TSmbMusicAPSyncServerContentsReqPkg>* iReqTPckg; ///<梫媮儊僢僙乕僕偺僷僢働乕僕
TSmbMusicAPSyncServerContentsServiceDeleteState iState; ///<僒乕價僗偺張棟忬懺
CSmbMusicAPSyncServerContentsList* iList; ///<嶍彍懳徾偑強懏偡傞儕僗僩
TInt iListHandle; ///<嶍彍懳徾偑強懏偡傞儕僗僩偺僴儞僪儖
TInt iDeleteCount; ///<嶍彍偡傞傾僀僥儉悢
RArray<TInt>* iIndex; ///<嶍彍偡傞傾僀僥儉偺Index攝楍
RArray<TInt> iItemHandle; ///<嶍彍偡傞傾僀僥儉偺僴儞僪儖攝楍
CArrayFixFlat<TInt>* iDeleteHandle; ///<嶍彍傪幚峴偡傞傾僀僥儉僴儞僪儖攝楍
TBool iAllDelete; ///<慡審嶍彍僼儔僌
CSmbMusicMWLibItemArray* iLibImteArray; ///<MusicMWLib偺傾僀僥儉攝楍
RPointerArray<CSmbMusicMWLibMusicItem> iLibItem; ///<MusicMWLib偺傾僀僥儉攝楍
TInt iCompleteDeleteCount; ///<嶍彍偑姰椆偟偨傾僀僥儉悢
TInt iTmpItemCount; ///<嶍彍偡傞慜偺儕僗僩傾僀僥儉悢
TInt iGetItemCount; ///<嶍彍慜偵庢摼偟偨儕僗僩傾僀僥儉悢
RArray<TInt> iFailItems; ///<嶍彍偑幐攕偟偨傾僀僥儉
};
SEMCJ_NAMESPACE_END
#endif //__SMBMUSICAPSYNCSERVERCONTENTSSERVICEDELETEITEM_H__
// end of SmbMusicAPSyncServerContentsServiceDeleteItem.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -