smbmusicapmainplayerfiltersyncserverprocess.cpp
来自「symbian」· C++ 代码 · 共 1,793 行 · 第 1/4 页
CPP
1,793 行
/* Copyright (C) 2006-2007 Sony Ericsson Mobile Communications Japan, Inc. */
/*-------------------------------------------------------------------------*/
// FileName:
// SmbMusicAPMainPlayerFilterSyncServerProcess.cpp
//
// Description:
// CSmbMusicAPMainPlayerFilterSyncServerProcess class source.
/*------------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+-----------+----------------------------------------------
//2006/06/09 |SDNA 彫椦 | 怴婯嶌惉
//2006/07/06 |SDNA 彫椦 | 曇廤宯張棟偱偺API梫媮庬暿傪愝掕偝傟側偄晄嬶崌傪廋惓
//2006/07/07 |SDNA 彫椦 | GetListItems偺巇條曄峏偵敽偆廋惓
//2006/07/08 |SDNA嶳壀 | 愝掕宯傪嶍彍
//2006/07/16 |SDNA嶳壀 | SyncEngine偺捛壛I/F偵懳墳
//2006/07/21 |SDNA 彫椦 | 僒儉僱僀儖昞帵懳墳
//2006/07/31 |SDNA 壀嶳 | 晄梫側張棟傪嶍彍
//2006/07/31 |SDNA 壀嶳 | Leave娭悢仺捠忢娭悢丄捠忢娭悢仺Leave娭悢傊偺曄峏
//2006/07/31 |SDNA 壀嶳 | RunL偵偰昁偢XXXXRequestCompleteL
//2006/07/31 |SDNA 壀嶳 | Cancel張棟傪幚憰
//2006/07/31 |SDNA 壀嶳 | 梫媮庬暿僐乕僪傪摑堦
//2006/08/31 |SDNA 壀嶳 | 梫媮尦暿偵張棟傪幚峴偱偒傞傛偆偵廋惓
//2006/09/11 |SDNA 彫椦 | GetImageCount傪捛壛
//2007/04/11 |SEMCJ暯壀 | PTX-824懳墳
//2007/05/17 |SEMCJ暯壀 | UIQ-1535懳墳
//2007/07/05 |SEMCJ暯壀| QAC++懳墳
#include <f32file.h>
#include <FjAfEnv.h>
#include "SmbMusicAPMainPlayerUtility.h"
#ifndef __SMBMUSICAPMAINPLAYERFILTERSYNCSERVERPROCESS_H__
#include "SmbMusicAPMainPlayerFilterSyncServerProcess.h"
#endif
SEMCJ_NAMESPACE_BEGIN
///////////////////////////////////////////////////////////////////////////////
/**
* 僐儞僗僩儔僋僞
*
* @param[in] aModel 儌僨儖僋儔僗
*/
CSmbMusicAPMainPlayerFilterSyncServerProcess::CSmbMusicAPMainPlayerFilterSyncServerProcess( CSmbMusicAPMainPlayerFilterSyncServerControllerForEachOwner& aController,
CSmbMusicAPSyncEngine& aEngine,
CSmbMusicAPLibImageFunc& aImageFunc,
MSmbMusicAPMainPlayerFilterSyncServerProcessResponseObserver& aObserver)
: CActive(EPriorityStandard)
, iController(aController)
, iEngine(aEngine)
, iImageFunc(aImageFunc)
, iRequestKind(ERequestUnknown)
, iStarted(EFalse)
, iObserver(aObserver)
, iResponce(ETrue)
, iMakeBitmap(EFalse)
, iLog(CAfEnv::Static()->Log())
{
//帺恎傪傾僋僥傿僽僗働僕儏乕儔偵捛壛偡傞
CActiveScheduler::Add(this);
}
/**
* 僨僗僩儔僋僞
*/
CSmbMusicAPMainPlayerFilterSyncServerProcess::~CSmbMusicAPMainPlayerFilterSyncServerProcess()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 00;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::~CSmbMusicAPMainPlayerFilterSyncServerProcess()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
//梫媮傪僉儍儞僙儖偡傞
Cancel();
if(EFalse != iResponce)
{
iResponce = EFalse;
iObserver.RequestCancel(iRequestKind, *this);
}
iSizeArray.Close();
ResetThumbnailBitmapArray();
iThumbnailBitmapArray.Close();
delete iOutput;
iIndexArray.Close();
delete iItemInfoArray;
ResetSongImageInfo();
//ADD-S TRK7502 2006/09/25 kobayashi
iConvertSizeArray.Close();
ResetConvertBitmapArray();
//ADD-E TRK7502 2006/09/25 kobayashi
}
/**
* 僒儉僱僀儖庢摼梫媮
*
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetPlayThumbnailImage(TInt aListHandle, TInt aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 10;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetPlayThumbnailImage(aListHandle:0x%08x, aIndex:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, aListHandle, aIndex);
#endif
iRequestKind = EDispRequestGetPlayThumbnailImage;
iListHandle = aListHandle;
iIndex = aIndex;
iFileName = KSmbMusicAPMainPlayerThumbnailImageFile;
}
/**
* 夋憸儕僒僀僘梫媮
*
* @param[in] aResizeSrcBitmap 尦夋憸
* @param[in] aResizeSrcMaskBitmap 尦夋憸(儅僗僋)
* @param[in] aReisizeSize 僒僀僘
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::ResizeImage( CFbsBitmap* aResizeSrcBitmap,
CFbsBitmap* aResizeSrcMaskBitmap,
TSize aReisizeSize)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 20;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::ResizeImage()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EDispRequestResizeImage;
iResizeSrcBitmap.iMainBitmap = aResizeSrcBitmap;
iResizeSrcBitmap.iMaskedBitmap = aResizeSrcMaskBitmap;
iReisizeSize = aReisizeSize;
}
/**
* 専嶕Top偐傜専嶕寢壥偺儕僗僩傪庢摼偡傞
*
* @param[in] aSearchCondition 専嶕忦審
* @param[in] aRequestListType 梫媮儕僗僩庬暿
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListFromSearchTop(TSmbMusicAPSyncEngineSearchCondition aSearchCondition,
TSmbMusicAPSyncEngineRequestListType aRequestListType)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 30;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListFromSearchTop()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = ESearchRequestGetListFromSearchTop;
iSearchCondition = aSearchCondition;
iRequestListType = aRequestListType;
}
/**
* 専嶕忦審傪巜掕偟偰専嶕寢壥偺儕僗僩傪庢摼偡傞
*
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
* @param[in] aListSearchCondition 儕僗僩専嶕忣曬
* @param[in] aRequestListType 梫媮儕僗僩庬暿
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListFromSearchCurrentList(TInt aListHandle,
TInt aIndex,
TSmbMusicAPSyncEngineListSearchCondition aListSearchCondition,
TSmbMusicAPSyncEngineRequestListType aRequestListType)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 40;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListFromSearchCurrentList()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = ESearchRequestGetListFromSearchCurrentList;
iListHandle = aListHandle;
iIndex = aIndex;
iListSearchInfo = aListSearchCondition;
iRequestListType = aRequestListType;
}
/**
* 嬋捛壛偺捛壛愭僾儗僀儕僗傪庢摼偡傞
*
* @param[in] 側偟
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetOriginalPlayListForInsert()
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 50;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetOriginalPlayListForInsert()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = ESearchRequestGetOriginalPlayListForInsert;
}
/**
* 儕僗僩偵娷傑傟傞傾僀僥儉傪庢摼偡傞
*
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
* @param[in] aCount 僇僂儞僩
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListItems(TInt aListHandle,
TInt aIndex,
TInt aCount)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 60;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetListItems(aListHandle:%08x, aIndex:%d, aCount:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt,aListHandle, aIndex, aCount);
#endif
iRequestKind = ESearchRequestGetListItems;
iListHandle = aListHandle;
iIndex = aIndex;
iCount = aCount;
}
/**
* 妝嬋僼傽僀儖丄僾儗僀儕僗僩摍偺傾僀僥儉偺幚懱傪嶍彍
*
* @param[in] aAllItem 慡審/巜掕僼儔僌
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndexArray 僀儞僨僢僋僗攝楍偺嶲徠
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::DeleteItems(TBool aAllItem, TInt aListHandle, const RArray<TInt>* aIndexArray)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 70;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::DeleteItems()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
if(aAllItem)
{
iRequestKind = EEditRequestDeleteAllItems;
}
else if((NULL != aIndexArray) && (1 == aIndexArray->Count()))
{
iRequestKind = EEditRequestDeleteItem;
}
else
{
iRequestKind = EEditRequestDeleteItems;
}
iAllItem = aAllItem;
iListHandle = aListHandle;
if(NULL != aIndexArray)
{
CopyRArray(*aIndexArray, iIndexArray);
}
}
/**
* 僾儗僀儕僗僩偐傜嬋傾僀僥儉傪搊榐夝彍偡傞
*
* @param[in] aAllItem 慡審/巜掕僼儔僌
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndexArray 僀儞僨僢僋僗攝楍偺嶲徠
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::RemoveSongFromPlaylist(TBool aAllItem, TInt aListHandle, const RArray<TInt>* aIndexArray)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 80;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::RemoveSongFromPlaylist()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
if(aAllItem)
{
iRequestKind = EEditRequestRemoveAllSongsFromPlaylist;
}
else if((NULL != aIndexArray) && (1 == aIndexArray->Count()))
{
iRequestKind = EEditRequestRemoveSongFromPlaylist;
}
else
{
iRequestKind = EEditRequestRemoveSongsFromPlaylist;
}
iAllItem = aAllItem;
iListHandle = aListHandle;
if(NULL != aIndexArray)
{
CopyRArray(*aIndexArray, iIndexArray);
}
}
/**
* 僐儞僥儞僣ID庢摼
*
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::GetContentsId(TInt aListHandle, TInt aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess | 90;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::GetContentsId(aListHandle:0x%08x, aIndex:%d)");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt, aListHandle, aIndex);
#endif
iRequestKind = EEditRequestGetContentsId;
iListHandle = aListHandle;
iIndex = aIndex;
}
/**
* 僾儗僀儕僗僩嶌惉
*
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aPlaylistTitle 嶌惉偡傞僾儗僀儕僗僩偺僞僀僩儖柤
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::CreatePlaylist(const TDesC& aPlaylistTitle, TInt aListHandle)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess |100;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::CreatePlaylist()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EEditRequestCreatePlaylist;
iListHandle = aListHandle;
iPlaylistTitle = aPlaylistTitle;
}
/**
* 僾儗僀儕僗僩偺僞僀僩儖傪曄峏偡傞
*
* @param[in] aPlaylistTitle 怴偟偄僾儗僀儕僗僩偺僞僀僩儖柤
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::EditPlaylistTitle(const TDesC& aPlaylistTitle, TInt aListHandle, TInt aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess |110;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::EditPlaylistTitle()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EEditRequestEditPlaylistTitle;
iPlaylistTitle = aPlaylistTitle;
iListHandle = aListHandle;
iIndex = aIndex;
}
// Add-S PTX-824懳墳丂暯壀
/**
* 僾儗僀儕僗僩暋惢
*
* @param[in] aPlaylistTitle 暋惢偡傞僾儗僀儕僗僩偺僞僀僩儖柤
* @param[in] aListHandle 儕僗僩僴儞僪儖
* @param[in] aIndex 僀儞僨僢僋僗
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::DuplicatePlaylist(const TDesC& aPlaylistTitle, TInt aListHandle, TInt aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess |110;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::DPlaylistTitle()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EEditRequestDuplicatePlaylist;
iPlaylistTitle = aPlaylistTitle;
iListHandle = aListHandle;
iIndex = aIndex;
}
// Add-E PTX-824懳墳丂暯壀
/**
* 嬋傾僀僥儉傪僾儗僀儕僗僩偵捛壛偡傞乮1審/暋悢審/慡審偵懳墳乯
* @param[in] aAllItem 慡審/巜掕僼儔僌
* @param[in] aListHandle 捛壛尦儕僗僩僴儞僪儖
* @param[in] aIndexArray 捛壛尦僀儞僨僢僋僗攝楍
* @param[in] aListHandle 捛壛愭僾儗僀儕僗僩傾僀僥儉偺儕僗僩僴儞僪儖
* @param[in] aIndex 捛壛愭僾儗僀儕僗僩傾僀僥儉偺Index斣崋
* @param[in] aInsertIndex 捛壛愭僾儗僀儕僗僩嬋堦棗偵偍偗傞憓擖埵抲乮Index斣崋乯
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::InsertItemsToPlaylist( TBool aAllItem,
TInt aSrcListHandle,
const RArray<TInt>* aIndexArray,
TInt aListHandle,
TInt aIndex,
TInt aInsertIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess |120;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::InsertItemsToPlaylist()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EEditRequestInsertItemsToPlaylist;
iAllItem = aAllItem;
iSrcListHandle = aSrcListHandle;
iListHandle = aListHandle;
iIndex = aIndex;
iInsertIndex = aInsertIndex;
if(NULL != aIndexArray)
{
CopyRArray(*aIndexArray, iIndexArray);
}
}
/**
* 嬋傾僀僥儉傪婛懚偺僾儗僀儕僗僩偵忋彂偒偡傞乮1審/暋悢審/慡審偵懳墳乯
*
* @param[in] aAllItem 慡審/巜掕僼儔僌
* @param[in] aListHandle 捛壛尦儕僗僩僴儞僪儖
* @param[in] aIndexArray 捛壛尦僀儞僨僢僋僗攝楍
* @param[in] aListHandle 捛壛愭僾儗僀儕僗僩傾僀僥儉偺儕僗僩僴儞僪儖
* @param[in] aIndex 捛壛愭僾儗僀儕僗僩傾僀僥儉偺Index斣崋
*/
void CSmbMusicAPMainPlayerFilterSyncServerProcess::OverWritePlaylist(TBool aAllItem,
TInt aSrcListHandle,
const RArray<TInt>* aIndexArray,
TInt aListHandle,
TInt aIndex)
{
#ifdef __DEBUG_LOG_MAINPLAYER__
TInt logCode = CLASS_CODE_CSmbMusicAPMainPlayerFilterSyncServerProcess |130;
_LIT(KLogFmt, "CSmbMusicAPMainPlayerFilterSyncServerProcess::OverWritePlaylist()");
SmbMusicAPMainPlayerUtility::OutputLog(iLog, logCode, ELogLevelNormal, KLogFmt);
#endif
iRequestKind = EEditRequestOverWritePlaylist;
iAllItem = aAllItem;
iSrcListHandle = aSrcListHandle;
iListHandle = aListHandle;
iIndex = aIndex;
if(NULL != aIndexArray)
{
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?