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

📄 smbmusicapsyncserverplayerstatewaitpause.cpp

📁 索爱相关代码。实现功能是server。很有参考价值。代码很难弄到。symbian。
💻 CPP
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
// FileName:
//	SmbMusicAPSyncServerPlayerStateWaitPause.cpp
//
// Description:
//	PTX810 Music傾僾儕 摨婜僒乕僶 僋儔僗
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅			|曄峏幰			|撪梕
//--------------+---------------+--------------------------------------
//2006/06/09	|娵壀			|怴婯嶌惉
//2006/08/15	|娵壀			|TRK6286懳墳
//2006/09/26	|暯壀			|TRK10253懳墳
//----PTX824----+---------------+--------------------------------------
//2007/04/04	|K3悪杮			|PTX824懳墳


#ifndef __SMBMUSICAPSYNCSERVERPLAYERSTATEWAITPAUSE_H__
#include "SmbMusicAPSyncServerPlayerStateWaitPause.h"
#endif

#ifndef	__SMBMUSICAPSYNCSERVERUTIL_H__
#include "SmbMusicAPSyncServerUtil.h"
#endif	//  __SMBMUSICAPSYNCSERVERUTIL_H__

USING_NAMESPACE_SEMCJ


/**
 僐儞僗僩儔僋僞
 * @param [in]	aFunc		PlayerFunc僋儔僗偺嶲徠
 * @param [in]	aLog		儘僌僒乕僶僙僢僔儑儞偺嶲徠
 * @return	側偟
 */
CSmbMusicAPSyncServerPlayerStateWaitPause::CSmbMusicAPSyncServerPlayerStateWaitPause(CSmbMusicAPSyncServerPlayerFunc& aFunc, DCM_NAMESPACE::RLog& aLog)
	: CSmbMusicAPSyncServerPlayerStateBase(aFunc, aLog)
	{
	}

/**
 僨僗僩儔僋僞
 * @param	側偟
 * @return	側偟
 */
CSmbMusicAPSyncServerPlayerStateWaitPause::~CSmbMusicAPSyncServerPlayerStateWaitPause()
	{
	}

/**
 忬懺曄峏僀儀儞僩(Pause)
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::ChangeStateNtfy(TSmbMusicAPSyncServerPlayerState /* aState */)
	{
//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞堦帪掆巭
	iFunc.ReportCounterPause(CSmbMusicAPLibReportCounter::EPause);
//  ADD-E PTX824 k3-sugimoto

	iFunc.GetResume(ESmbMusicAPSyncServerPlayerStackLocalFromPlayer);

	//BG儕僜乕僗傪夝曻偡傞
	iFunc.ReleaseRsc(ESmbMusicAPSyncServerPlayerBGRsc);

	//堦帪掆巭墳摎傪敪峴偡傞
	iFunc.SendRes(KErrNone);

	//堦帪掆巭忬懺偵慗堏偟偨偙偲傪捠抦偡傞
	iFunc.SendNotify(ESmbMusicAPSyncEngineStopPlay);

//TRK10253懳墳丂Add-S
	//徣揹椡僞僀儅乕奐巒
	iFunc.StartPowerSaveTimer();
//TRK10253懳墳丂Add-E

	//傾僀僪儖(堦帪掆巭)忬懺
	return ESmbMusicAPSyncServerPlayerIdle;
	}

/**
 嵞惗晄壜僼傽僀儖専弌僀儀儞僩
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::ErrSongNtfy(TSmbMusicAPSyncServerPlayerState  aState)
	{
//  DEL-S PTX824 k3-sugimoto
//	//専嶕忣曬傪峏怴偡傞昁梫偑偁傞偐傪栤偄崌傢偣傞
//	TBool res = iFunc.CheckUpdataSearchCondition();
//	if(EFalse != res)
//		{
//TRK6286懳墳	Start
//		//専嶕梡偺嵞惗夞悢傪峏怴偡傞乮懳徾嬋偺嵞惗偑姰椆偟偨応崌偺傒乯
//		iFunc.IncrementPlayTimesIfNecessary();
//TRK6286懳墳	End
//		}
//  DEL-E PTX824 k3-sugimoto

//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞儕僙僢僩(Callback桳)
	iFunc.ReportCounterReset(CSmbMusicAPLibReportCounter::EStart);
//  ADD-E PTX824 k3-sugimoto

	//嵞惗晄壜僼傽僀儖専弌捠抦偺嫟捠憖嶌(嵞惗掆巭墳摎傪敪峴偟丄嵞惗晄壜僼傽僀儖専弌傪捠抦偡傞)
	ComErrSongNtfy();

//	// 嵞惗晄壜僼傽僀儖専弌忬懺
//	return ESmbMusicApSyncServerPlayerErrSong;
	// 忬懺曄壔側偟
	return aState;

	}

/**
 嵞惗奐巒梫媮
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::Play(TSmbMusicAPSyncServerPlayerState  aState)
	{
	//堦帪掆巭梫媮偺墳摎傪敪峴偡傞
	iFunc.SendRes(KErrNone);

	//儊僢僙乕僕傪搉偡
	iFunc.StackRequestMsg(iMsg);

	//嵞惗奐巒梫媮
	TInt val = iFunc.Play();

	if (KErrNone != val)
		{
		//儘僌偼弌偟偲偒傑偟傚偆
		TInt log = EMusicAPSyncServerClassNumber66 | EMusicAPSyncServerLocationNumber00;
		_LIT(KServerPlayerState, "SyncServerPlayerStateWaitPause::Play PlayNG");
		SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KServerPlayerState, val, aState);

		//Play()偺栠傝抣偑僄儔乕偺応崌丄張棟傪廔偊偰僄儔乕傪曉偟丄
		//儕僜乕僗傪夝曻偟偰丄Idle偵慗堏偡傞
		iFunc.SendRes(KErrNotReady);
		iFunc.ReleaseRsc(ESmbMusicAPSyncServerPlayerBGRsc);

//TRK10253懳墳丂Add-S
		//徣揹椡僞僀儅乕奐巒
		iFunc.StartPowerSaveTimer();
//TRK10253懳墳丂Add-E

		//傾僀僪儖(堦帪掆巭)忬懺
		return ESmbMusicAPSyncServerPlayerIdle;
		}

	//嵞惗奐巒懸偪忬懺
	return ESmbMusicApSyncServerPlayerWaitStartPlay;
	}

/**
 儕僜乕僗夝曻梫媮
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::ReleaseRscReq(TSmbMusicAPSyncServerPlayerState /* aState */)
	{
//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞堦帪掆巭
	iFunc.ReportCounterPause(CSmbMusicAPLibReportCounter::EPause);
//  ADD-E PTX824 k3-sugimoto

	//儕僜乕僗奐曻梫媮偺嫟捠憖嶌
	ComReleaseRscReq(ESmbMusicAPSyncServerPlayerStackLocalFromPlayer);

	//僒僗儁儞僪忬懺
	return ESmbMusicApSyncServerPlayerSuspend;
	}

/**
 壒検愝掕傪峴偆
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::SetVolume(TSmbMusicAPSyncServerPlayerState aState)
	{
	//壒検愝掕偺嫟捠憖嶌
	ComSetVolume();

	//忬懺曄峏側偟
	return aState;
	}

/**
 儕僗僩嵞惗姰椆僀儀儞僩
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::FinishPlayListNtfy(TSmbMusicAPSyncServerPlayerState /* aState */)
	{
//  DEL-S PTX824 k3-sugimoto
//TRK6286懳墳	Start
//	//専嶕梡偺嵞惗夞悢傪峏怴偡傞乮懳徾嬋偺嵞惗偑姰椆偟偨応崌偺傒乯
//	iFunc.IncrementPlayTimesIfNecessary();
//TRK6286懳墳	End
//  DEL-E PTX824 k3-sugimoto

//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞儕僙僢僩(Callback桳)
	iFunc.ReportCounterReset(CSmbMusicAPLibReportCounter::EStart);
//  ADD-E PTX824 k3-sugimoto

	//堦帪掆巭梫媮偺墳摎傪敪峴偡傞
	iFunc.SendRes(KErrCancel);

	//儕僗僩嵞惗姰椆捠抦偺嫟捠憖嶌
	ComFinishPlayListNtfy();

	//傾僀僪儖(堦帪掆巭)忬懺
	return ESmbMusicAPSyncServerPlayerIdle;
	}

/**
 捠忢嵞惗奐巒壒柭摦僀儀儞僩
 * @param [in]	aState		嵞惗宯偺忬懺
 * @return	嵞惗宯偺忬懺
 */
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::StartPlayRes(TSmbMusicAPSyncServerPlayerState aState)
	{
//  DEL-S PTX824 k3-sugimoto
//TRK6286懳墳	Start
//	//専嶕梡偺嵞惗夞悢傪峏怴偡傞乮懳徾嬋偺嵞惗偑姰椆偟偨応崌偺傒乯
//	iFunc.IncrementPlayTimesIfNecessary();
//TRK6286懳墳	End
//  DEL-E PTX824 k3-sugimoto

//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞儕僙僢僩(Callback桳)
	iFunc.ReportCounterReset(CSmbMusicAPLibReportCounter::EStart);
//  ADD-E PTX824 k3-sugimoto

	//暿偺嬋嵞惗捠抦(嵞惗嬋偑曄峏偝傟壒柭摦傪奐巒偟偨)
	iFunc.SendNotify(ESmbMusicAPSyncEngineChangePlaySong);

//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞僞僀儅奐巒
	iFunc.ReportCounterStart();
//  ADD-E PTX824 k3-sugimoto

	//忬懺曄峏側偟
	return aState;
	}


//  ADD-S PTX824 k3-sugimoto
/**
 *  梫儐乕僓妋擣捠抦(僌儗乕僗僺儕僆僪撪)
 *
 *  @param[in]	aState		嵞惗宯偺忬懺
 *
 *  @return	嵞惗宯偺忬懺
 **/
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::ConfirmGracePriod(TSmbMusicAPSyncServerPlayerState /*aState*/)
	{
//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞儕僙僢僩(Callback桳)
	iFunc.ReportCounterReset(CSmbMusicAPLibReportCounter::EStart);
//  ADD-E PTX824 k3-sugimoto

	//  梫儐乕僓妋擣捠抦(僌儗乕僗僺儕僆僪撪)嫟捠張棟
	ComConfirmGracePriod();

	//  儐乕僓妋擣忬懺(僌儗乕僗僺儕僆僪撪)傊堏峴
	return ESmbMusicAPSyncServerPlayerConfirmGracePeriod;
	}

/**
 *  梫儐乕僓妋擣捠抦(夞悢惂尷)
 *
 *  @param[in]	aState		嵞惗宯偺忬懺
 *
 *  @return	嵞惗宯偺忬懺
 **/
TSmbMusicAPSyncServerPlayerState CSmbMusicAPSyncServerPlayerStateWaitPause::ConfirmLimitCount(TSmbMusicAPSyncServerPlayerState /*aState*/)
	{
//  ADD-S PTX824 k3-sugimoto
	//  棙梡棜楌峏怴僇僂儞僞儕僙僢僩(Callback桳)
	iFunc.ReportCounterReset(CSmbMusicAPLibReportCounter::EStart);
//  ADD-E PTX824 k3-sugimoto

	//  梫儐乕僓妋擣捠抦(夞悢惂尷)嫟捠張棟
	ComConfirmLimitCount();

	//  儐乕僓妋擣忬懺(嵞惗夞悢惂尷)傊堏峴
	return ESmbMusicAPSyncServerPlayerConfirmCntLimit;
	}
//  ADD-E PTX824 k3-sugimoto


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

⌨️ 快捷键说明

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