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

📄 smbmusicapsyncservercontentsserviceplinsertitem.h

📁 索爱相关代码。实现功能是server。很有参考价值。代码很难弄到。symbian。
💻 H
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc.      */
/*-------------------------------------------------------------------------*/
// FileName:
//  SmbMusicAPSyncServerContentsServicePLInsertItem.h
//
// Description:
//  SmbMusicAPSyncServerContentsServicePLInsertItem
//    僾儗僀儕僗僩傊偺嬋傾僀僥儉捛壛梫媮僒乕價僗
//    僾儗僀儕僗僩傊偺嬋傾僀僥儉捛壛梫媮偵懳偡傞僒乕價僗
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅          |曄峏幰     |撪梕
//--------------+-----------+----------------------------------------------
//2006/06/12	|K3悪杮		| 怴婯嶌惉
//2006/07/12	|K3悪杮		| CheckCancel偑惓偟偔宲彸偱偒偰偄側偐偭偨偺偱廋惓
//2006/07/18	|K3悪杮		| 僾儗僀儕僗僩偺僆乕僾儞/僋儘乕僘偺昁梫偑偁傞偨傔張棟捛壛


#ifndef __SMBMUSICAPSYNCSERVERCONTENTSSERVICEPLINSERTITEM_H__
#define __SMBMUSICAPSYNCSERVERCONTENTSSERVICEPLINSERTITEM_H__

#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif	//  __SMBCOMMONDEF_H__

#ifndef FJWCDMAMPDEF_H__
#include <FjWcdmaMpDef.h>
#endif	//  FJWCDMAMPDEF_H__

#ifndef __E32CMN_H__
#include <e32cmn.h>
#endif	//  __E32CMN_H__


#ifndef __SMBMUSICAPSYNCSERVERCONTENTSSERVICEBASE_H__
#include "SmbMusicAPSyncServerContentsServiceBase.h"
#endif	//  __SMBMUSICAPSYNCSERVERCONTENTSSERVICEBASE_H__


SEMCJ_NAMESPACE_BEGIN

//  慜曽愰尵
class CSmbMusicMWLibItemArray;
class CSmbMusicMWLibListItem;
class CSmbMusicMWLibSongItem;
class CSmbMusicAPSyncServerContentsList;

//****************************************************************************//
/**
 *  僾儗僀儕僗僩傊偺嬋傾僀僥儉捛壛梫媮僒乕價僗
 **/
//****************************************************************************//
class CSmbMusicAPSyncServerContentsServicePLInsertItem	:	public CSmbMusicAPSyncServerContentsServiceBase
	{
private:
	/**
	 *  僒乕價僗幚峴忬懺
	 **/
	enum TContentsServicePLInsertItemState
		{
		EContentsServicePLInsertItemStateIdle = 0,		///<  張棟柍偟
		EContentsServicePLInsertItemStateGetPLList,		///<  捛壛愭僾儗僀儕僗僩庢摼拞
		EContentsServicePLInsertItemStateOpenPLList,	///<  捛壛愭僾儗僀儕僗僩傪僆乕僾儞拞
		EContentsServicePLInsertItemStateGetSongItem,	///<  捛壛偡傞傾僀僥儉偺僴儞僪儖庢摼拞
		EContentsServicePLInsertItemStateInsertItem,	///<  嬋傾僀僥儉捛壛張棟拞
		};


public:
	//  僐儞僗僩儔僋僞
	CSmbMusicAPSyncServerContentsServicePLInsertItem(
		DCM_NAMESPACE::RLog& aRlog,
		CSmbMusicAPSyncServerModel& aModel,
		MSmbMusicAPSyncServerContentsAsyncObserver& aObserver,
		CSmbMusicAPSyncServerContentsFunc& aFunc,
		MSmbMusicAPSyncServerContentsManagerInterface& aManagerInterface,
		CSmbMusicAPSyncServerContentsScreenTraceManager& aScreenData,
		const RMessage2& aRMessage
		);

	//  僨僗僩儔僋僞
	~CSmbMusicAPSyncServerContentsServicePLInsertItem();


public:		//  CSmbMusicAPSyncServerContentsServiceBase
	//  僉儍儞僙儖梫媮偵懳偡傞僒乕價僗僉儍儞僙儖敾掕
	TBool CheckCancel(TSmbMusicAPSyncServerFunction aCancelEvent);

	//  僒乕價僗偺奐巒梫媮
	TSmbMusicAPSyncServerContentsServiceState StartServiceL();

	//  僒乕價僗僄儔乕捠抦
	TSmbMusicAPSyncServerContentsServiceState ServiceErr(TInt aError);

	//  僒乕價僗僉儍儞僙儖捠抦
	void CancelService();

	//  僒乕價僗宲懕
	TSmbMusicAPSyncServerContentsServiceState ContinueServiceL();


private:	//  function
	//  僷儔儊乕僞撉崬
	TBool LoadParamL();

	//  傾僀僥儉攝楍庢摼
	CSmbMusicMWLibItemArray& ItemArray() const;

	//  捛壛愭僾儗僀儕僗僩愝掕仌捛壛尦嬋儕僗僩庢摼
	TInt SetPlayListItem();

	//  僾儗僀儕僗僩慡嬋捛壛梫媮
	TInt InsertAllSongItem();

	//  僾儗僀儕僗僩慖戰嬋捛壛梫媮
	TInt InsertSelectSongItem();

	//  僾儗僀儕僗僩偵捛壛偡傞偨傔偺嬋傾僀僥儉庢摼梫媮
	TInt RequestSongItem();

	//  僾儗僀僞僀僩儖曄峏張棟
	TInt InsertSongItem();

	//  僾儗僀儕僗僩僆乕僾儞
	TInt PLListOpen();

	//  僾儗僀儕僗僩僋儘乕僘
	void PLListClose();

private:	//  data
	CSmbMusicMWLibItemArray*			iItemArray;	///<  捛壛尦儕僗僩庢摼梡傾僀僥儉攝楍[has]
	CSmbMusicAPSyncServerContentsList*	iItemList;	///<  捛壛尦儕僗僩傾僀僥儉[use?]
	CSmbMusicMWLibListItem*				iPLItem;	///<  捛壛愭僾儗僀儕僗僩傾僀僥儉[has]
	CSmbMusicAPSyncServerContentsList*	iPLList;	///<  PL儕僗僩傾僀僥儉[use?]

	TContentsServicePLInsertItemState	iServiceState;	///<  僒乕價僗偺幚峴忬懺

	const TInt			KPlayListMaxItem;	///<  [const]傾僀僥儉僴儞僪儖攝楍偺棻搙

	TInt				iListHandle;	///<  捛壛尦儕僗僩偺僴儞僪儖
	TBool				iAllItems;		///<  捛壛懳徾偑慡審偐偳偆偐偺僼儔僌
	TBool				iListOpen;		///<  捛壛懳徾僾儗僀儕僗僩偺Open僼儔僌

	TInt				iIndexCount;	///<  僋儔僀傾儞僩偐傜捠抦偝傟偨index悢
	TInt				iSongIndex;		///<  張棟偟偨嬋傾僀僥儉偺index悢
	TInt*				iIndexArray;	///<  僋儔僀傾儞僩偐傜捠抦偝傟偨捛壛傾僀僥儉偺Index攝楍曐帩梡

	TInt				iPLHandle;		///<  捛壛懳徾僾儗僀儕僗僩偺僴儞僪儖
	TInt				iIndex;			///<  捛壛懳徾僾儗僀儕僗僩偺堦棗儕僗僩撪index
	TInt				iInsertIndex;	///<  捛壛懳徾僾儗僀儕僗僩偵偍偗傞捛壛埵抲偺index
	CArrayFixFlat<TInt>	iHandleArray;	///<  MW傊搊榐傾僀僥儉傪搉偡偨傔偺傾僀僥儉僴儞僪儖攝楍
	RPointerArray<CSmbMusicMWLibSongItem>	iSongArray;	///<  捛壛偡傞嬋傾僀僥儉曐帩梡攝楍

	TInt				iOriginalCount;	///<  張棟奐巒慜偺傾僀僥儉悢
	};


SEMCJ_NAMESPACE_END

#endif	// __SMBMUSICAPSYNCSERVERCONTENTSSERVICEPLINSERTITEM_H__
// end of SmbMusicAPSyncServerContentsServicePLInsertItem.h

/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

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