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

📄 smbmusicapsyncserverappfunc.h

📁 索爱相关代码。实现功能是server。很有参考价值。代码很难弄到。symbian。
💻 H
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
// FileName:
//	SmbMusicAPSyncServerAppFunc.h
//
// Description:
//	PTX810 Music傾僾儕 摨婜僒乕僶 傾僾儕摨婜偺AppFunc僋儔僗
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅			|曄峏幰			|撪梕
//--------------+---------------+--------------------------------------
//2006/05/31	|暯壀			|怴婯嶌惉
//2006/07/19	|娵壀			|TRK4008懳墳
//--------------+---------------+--------------------------------------
//2007/04/18	|K3悪杮			|PTX824懳墳(堦妵儔僀僙儞僗僠僃僢僋幚峴忬嫷愝掕/庢摼懳墳)


#ifndef __SMBMUSICAPSYNCSERVERAPPFUNC_H__
#define __SMBMUSICAPSYNCSERVERAPPFUNC_H__

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

#ifndef __SMBMUSICAPSYNCENGINEDEF_H__
#include <SmbMusicAPSyncEngineDef.h>
#endif

DCM_NAMESPACE_BEGIN
class RLog;
DCM_NAMESPACE_END


SEMCJ_NAMESPACE_BEGIN

class CSmbMusicAPSyncServerModel;

//@@TRK4008懳墳		Start
/**
	摨婜僒乕僶偲僙僢僔儑儞傪愙懕偟偰偄傞傾僾儕乮僀儀儞僩捠抦愭乯
*/
struct TSmbMusicAPSyncServerAppEventRequestSession
	{
	CSession2*								iConnectSession;	///<僙僢僔儑儞
	RArray<TSmbMusicAPSyncEngineSyncEvent>	iEvent;				///<僉儏乕僀儞僌偝傟偰偄傞僀儀儞僩
	};
//@@TRK4008懳墳		End


/**
 * 摨婜僒乕僶傾僾儕摨婜偺AppFunc僋儔僗
 *
 *
 */
class CSmbMusicAPSyncServerAppFunc : public CBase
	{
public:

	/**
	 僐儞僗僩儔僋僞
	 * @param [in]	aModel		僒乕僶儌僨儖僋儔僗偺嶲徠
	 * @param [in]	aLog		儘僌僒乕僶僙僢僔儑儞偺嶲徠
	 * @return	側偟
	 */
	CSmbMusicAPSyncServerAppFunc(CSmbMusicAPSyncServerModel& aModel, DCM_NAMESPACE::RLog& aLog);

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

	/**
	 愙懕梫媮
	 * @param [in]	aSession	愙懕偡傞僙僢僔儑儞
	 * @return	側偟
	 */
	void Connect(CSession2& aSession);

	/**
	 愗抐梫媮
	 * @param [in]	aSession	愗抐偡傞僙僢僔儑儞
	 * @return	側偟
	 */
	void DisConnect(CSession2& aSession);

	/**
	 Hold梫媮捠抦
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void NotifyHoldReq(const RMessage2& aMessage);

	/**
	 Hold夝彍梫媮捠抦
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void NotifyCancelHoldReq(const RMessage2& aMessage);

	/**
	 強桳尃夝曻梫媮捠抦
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void NotifyReleaseReq(const RMessage2& aMessage);

	/**
	 強桳尃夝曻墳摎
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void ReturnReleaseRes(const RMessage2& aMessage);

	/**
	 夋柺峏怴捠抦
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void NotifyUpdateDisplay(const RMessage2& aMessage);

	/**
	 僀儀儞僩捠抦梫媮曐懚
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void StackNotifyMsg(const RMessage2& aMessage);

	/**
	 僀儀儞僩捠抦梫媮偺僉儍儞僙儖
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void CancelStackNotifyMsg(const RMessage2& aMessage);

	/**
	 傾僾儕働乕僔儑儞廔椆捠抦
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void NotifyAppExit(const RMessage2& aMessage);

	/**
	 摨婜僒乕僶傊偺傾僋僙僗妋擣
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	側偟
	 */
	void HasSyncServer(const RMessage2& aMessage);

	/**
	 傾僋僥傿僽僙僢僔儑儞偺栤偄崌傢偣
	 * @param [in]	aMessage	僋儔僀傾儞僩偐傜搉偝傟偨僨乕僞傪奿擺偟偨儊僢僙乕僕偺嶲徠
	 * @return	傾僋僥傿僽僙僢僔儑儞偐傜偺儊僢僙乕僕偐斲偐
	 */
	TBool IsActiveSession(const RMessage2& aMessage);

//  ADD-S PTX824 k3-sugimoto
	/**
	 *  堦妵儔僀僙儞僗僠僃僢僋幚峴忬嫷愝掕
	 *
	 *  @param[in]	aMessage	僋儔僀傾儞僩偐傜偺儊僢僙乕僕(僋儔僀傾儞僩偐傜偺僨乕僞桳)
	 **/
	void SetLicenceCheckCompletion(const RMessage2& aMessage);

	/**
	 *  堦妵儔僀僙儞僗僠僃僢僋幚峴忬嫷庢摼
	 *
	 *  @param[in]	aMessage	僋儔僀傾儞僩偐傜偺儊僢僙乕僕
	 **/
	void IsLicenceCheckCompletion(const RMessage2& aMessage);
//  ADD-S PTX824 k3-sugimoto


private:
	/**
	 攝怣偡傞僀儀儞僩傪搊榐偡傞
	 * @param [in]	aSession	攝怣傕偲偺僙僢僔儑儞
	 * @param [in]	aEvent		攝怣偡傞僀儀儞僩
	 * @return	側偟
	 */
	void AppendReuqestEvent(CSession2& aSession, TSmbMusicAPSyncEngineSyncEvent& aEvent);

	/**
	搊榐偝傟偨僀儀儞僩傪攝怣偡傞
	 * @return	側偟
	 */
	void BroadCast();

	/**
	 僙僢僔儑儞偺愗抐捠抦
	 * @param [in]	aSession	攝怣傕偲偺僙僢僔儑儞
	 * @param [in]	aEvent		攝怣偡傞僀儀儞僩
	 * @return	側偟
	 */
	void RemoveSession(CSession2& aSession);

private:

	/** 僀儀儞僩捠抦梡儊僢僙乕僕偺攝楍 */
	RArray<RMessage2> iNotifyMessage;

	/** 強桳尃庢摼梫媮帪偺梫媮儊僢僙乕僕 */
	RMessage2 iReqMessage;

	/** 梫媮儊僢僙乕僕偺悢 */
	TInt  		iReqCount;

	/** 傾僋僥傿僽僙僢僔儑儞偺億僀儞僞 */
	CSession2* iActiveSession;

	/** 僒乕僶儌僨儖僋儔僗偺嶲徠 */
	CSmbMusicAPSyncServerModel& iModel;

	/** 儘僌僒乕僶僙僢僔儑儞偺嶲徠 */
	DCM_NAMESPACE::RLog& iLog;

//@@TRK4008懳墳		Start
	/**	愙懕偟偰偄傞僙僢僔儑儞傊偺僀儀儞僩僉儏乕	*/
	RArray<TSmbMusicAPSyncServerAppEventRequestSession>	iSession;
//@@TRK4008懳墳		End

//  ADD-S PTX824 k3-sugimoto
	TBool	iLicenceCheckCompletion;	///<  堦妵儔僀僙儞僗僠僃僢僋幚峴忬嫷
//  ADD-E PTX824 k3-sugimoto
	};

SEMCJ_NAMESPACE_END


#endif //__SMBMUSICAPSYNCSERVERAPPFUNC_H__

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

⌨️ 快捷键说明

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