smbmusicapmainplayerfilterprocesseditplaylisttitle.cpp
来自「symbian」· C++ 代码 · 共 637 行 · 第 1/2 页
CPP
637 行
/* Copyright (C) 2005-2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterProcess.cpp
//
// Description:
// 儈儏乕僕僢僋儊僀儞僾儗僀儎
// 僾儗僀儕僗僩柤曇廤張棟僋儔僗
/*-------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//---------------------------------------------------------------------------
//2006/08/20 |SDNA嶳壀 |怴婯嶌惉
//2006/08/24 |SDNA嶳壀 |柤慜曄峏屻偺傾僀僥儉庢摼傪捛壛
#include <FjAfEnv.h>
#include "SmbMusicAPMainPlayerUtility.h"
#include "SmbMusicAPMainPlayerFilterProcessEditPlaylistTitle.h"
USING_NAMESPACE_DCM
SEMCJ_NAMESPACE_BEGIN
/**
僐儞僗僩儔僋僞
* @param[in] aObserver 僆僽僓乕僶偺億僀儞僞
* @param[in] aSyncServerController 摨婜僒乕僶惂屼偺嶲徠
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle(
MSmbMusicAPMainPlayerFilterProcessObserver& aObserver,
CSmbMusicAPMainPlayerFilterSyncServerController& aSyncServerController)
:CSmbMusicAPMainPlayerFilterProcess(aObserver)
, iEvent(EFilterProcessEditPlaylistTitleEventStart)
, iState(EFilterProcessEditPlaylistTitleStateIdle)
, iSyncServer(aSyncServerController)
, iSetResultIndex(EFalse)
, iLog(CAfEnv::Static()->Log())
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 00;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
}
/**
僨僗僩儔僋僞
* @param 側偟
* @return 側偟
*/
CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::~CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 10;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::~CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
if(EFilterProcessEditPlaylistTitleStateRename == iState)
{
iSyncServer.CancelRequest(iRequestId, EFalse);
}
iItems.Close();
// SyncServerController偺捠抦僆僽僓乕僶搊榐傪夝彍偡傞
iSyncServer.RemoveSyncServerNotifyContentsObserver(this);
}
/**
僷儔儊乕僞愝掕
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
* @param[in] aTitle 僾儗僀儕僗僩柤
* @return 愝掕偺惉斲
*/
TBool CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::SetParam(TInt aListHandle,
TInt aIndex,
const TDesC& aTitle)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 20;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::SetParam(aListHandle:0x%08x aTitle:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, aListHandle, aIndex);
#endif
if( EFilterProcessEditPlaylistTitleStateIdle == iState ||
EFilterProcessEditPlaylistTitleStateWaitStart == iState )
{
iListHandle = aListHandle;
iIndex = aIndex;
iPlaylistTitle = aTitle;
iState = EFilterProcessEditPlaylistTitleStateWaitStart;
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 21;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::SetParam() Cannot Set in This State %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
return EFalse;
}
}
/**
儕僗僩僴儞僪儖庢摼
* @param 側偟
* @return 儕僗僩僴儞僪儖
*/
TInt CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetParamListHandle()
{
return iListHandle;
}
/**
傾僀僥儉偺愭摢僀儞僨僢僋僗庢摼
* @param[out] aTopIndex 愭摢僀儞僨僢僋僗 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetTopIndex(TInt& aTopIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 30;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetTopIndex() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EFilterProcessEditPlaylistTitleStateEnd == iState)
{
aTopIndex = iTopIndex;
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 32;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetTopIndex() Process Not Complete %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState);
aTopIndex = 0;
return EFalse;
}
}
/**
傾僀僥儉悢傪庢摼
* @param[out] aCount 傾僀僥儉悢 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetCount(TInt& aCount)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 40;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetCount() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EFilterProcessEditPlaylistTitleStateEnd == iState)
{
aCount = iCount;
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 41;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetCount() Process Not Complete %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState);
aCount = 0;
return EFalse;
}
}
/**
傾僀僥儉忣曬庢摼
* @param[out] aItems 傾僀僥儉忣曬 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetItems(RArray<TSmbMusicAPSyncEngineListItemInfo>& aItems)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 50;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetItems() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EFilterProcessEditPlaylistTitleStateEnd == iState)
{
aItems.Reset();
TInt count = iItems.Count();
for(TInt i=0; i<count; i++)
{
TInt error = aItems.Append(iItems[i]);
if(KErrNone != error)
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 51;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetItems() Append Err %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHighest, KLogFmt, error);
PANIC(9100005);
}
}
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 52;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetItems() Process Not Complete %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState);
return EFalse;
}
}
/**
憓擖偝傟偨僀儞僨僢僋僗庢摼
* @param[out] aIndex 僀儞僨僢僋僗 奿擺応強偺嶲徠
* @return 庢摼偺惉斲乮張棟偑廔椆偟偰偄傞偐偳偆偐乯
*/
TBool CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetIndex(TInt& aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 6;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetIndex() iState:%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, iState);
#endif
if(EFilterProcessEditPlaylistTitleStateEnd == iState)
{
aIndex = iResultIndex;
return ETrue;
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 61;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::GetItems() Process Not Complete %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, iState);
aIndex = 0;
return EFalse;
}
}
/**
* 梫媮姰椆
*
* @param[in] aKind 梫媮庬暿
* @param[in] aResult 張棟寢壥
* @param[in] aResponse 墳摎僋儔僗偺嶲徠乮忣曬庢摼梡乯
*/
void CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::RequestComplete(TSmbMusicAPMainPlayerRequest aKind,
TInt aResult,
MSmbMusicAPMainPlayerFilterSyncServerProcessResponse& aResponse)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 70;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::RequestComplete(aResult:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, aResult);
#endif
if(EEditRequestEditPlaylistTitle == aKind)
{
if(KErrNone == aResult)
{
iEvent = EFilterProcessEditPlaylistTitleEventSyncServerComplete;
}
else
{
iResult = aResult;
iEvent = EFilterProcessEditPlaylistTitleEventSyncServerErr;
}
DoSequence();
}
else if(ESearchRequestGetListItems == aKind)
{
if(0<aResult)
{
iItems.Reset();
CArrayFixFlat<TSmbMusicAPSyncEngineListItemInfo>& items = aResponse.GetResultItemInfoArray();
TInt count = aResult;
for(TInt i=0; i<count; i++ )
{
TInt error = iItems.Append(items[i]);
if(KErrNone != error)
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 71;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::RequestComplete() Append Err %d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHighest, KLogFmt, error);
PANIC(9100006);
}
}
iEvent = EFilterProcessEditPlaylistTitleEventSyncServerComplete;
}
else
{
iResult = aResult;
iEvent = EFilterProcessEditPlaylistTitleEventSyncServerErr;
}
DoSequence();
}
else
{
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle | 72;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterProcessEditPlaylistTitle::RequestComplete() Unknown Event :%d");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelHigh, KLogFmt, aKind);
}
}
/**
* 梫媮僉儍儞僙儖
*
* @param[in] aKind 梫媮庬暿
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?