📄 smbmusicapsyncservermodel.cpp
字号:
void CSmbMusicAPSyncServerModel::CheckPhone()
{
//僀儎僼僅儞偺忬懺傪庢摼偡傞
DCM_NAMESPACE::MEtWcdmaExtDevice::TEtEarphoneStatus state =
DCM_NAMESPACE::PGPropAgentStatus::GetEarphoneStatusL(iPropAgent);
if(DCM_NAMESPACE::MEtWcdmaExtDevice::EEtEarphoneConnecting == state)
{
//僀儎僼僅儞偁傝
iLineOutState.iPhone = ETrue;
}
else
{
//僀儎僼僅儞側偟
iLineOutState.iPhone = EFalse;
}
//@@TRK7490懳墳 delete Start
//儅僫乕儌乕僪OFF偵偟偨応崌偼儅僫乕儌乕僪拞偺嵞惗奐巒僼儔僌傪僋儕傾偡傞
// iLineOutState.iPlayWithManner = EFalse;
//@@TRK7490懳墳 delete Delete
}
/**
Music僾儗僀儎乕偺弌椡忬懺傪挷傋傞
* @param [in] 側偟
* @return 弌椡忬懺乮ETrue丗弌椡偁傝/EFalse丗弌椡側偟乯
*/
TBool CSmbMusicAPSyncServerModel::LineOut()
{
return iLineOutState.iLineOut;
}
/**
嵞惗宯 儗僕儏乕儉忣曬 桳岠僼儔僌傪愝掕偡傞
* @param [in] 桳岠僼儔僌乮ETrue丗桳岠/EFalse丗柍岠乯
* @return 側偟
*/
void CSmbMusicAPSyncServerModel::SetPlayerResumeInfoAvailable(TBool aAvailable)
{
iResumeInfoAvailablePlayer = aAvailable;
}
/**
僐儞僥儞僣宯 儗僕儏乕儉忣曬 桳岠僼儔僌傪愝掕偡傞
* @param [in] 桳岠僼儔僌乮ETrue丗桳岠/EFalse丗柍岠乯
* @return 側偟
*/
void CSmbMusicAPSyncServerModel::SetContentsResumeInfoAvailable(TBool aAvailable)
{
iResumeInfoAvailableContents = aAvailable;
}
/**
儗僕儏乕儉忣曬偺桳岠惈傪庢摼偡傞
* @param [in] 側偟
* @return 桳岠僼儔僌乮ETrue丗桳岠/EFalse丗柍岠乯
*/
TBool CSmbMusicAPSyncServerModel::GetResumeInfoAvailable()
{
if( EFalse != iResumeInfoAvailablePlayer &&
EFalse != iResumeInfoAvailableContents)
{
return ETrue;
}
else
{
return EFalse;
}
}
/**
儗僕儏乕儉忣曬傪徚嫀偡傞
* @param 側偟
* @return 側偟
*/
void CSmbMusicAPSyncServerModel::DeleteResume()
{
iResumeInfoAvailablePlayer = EFalse;
iResumeInfoAvailableContents = EFalse;
//儗僕儏乕儉攋婞僐儅儞僪傪敪峴偡傞
TSmbMusicAPSyncServerInternalCommandPkg commandPkg;
commandPkg.iCommand = ESmbMusicAPSyncServerDeleteResumeInfo;
iDispatcher->CommandL(commandPkg);
}
/**
Music僾儗僀儎乕偺弌椡忬懺曄峏
* @param [in] 側偟
* @return 側偟
*/
void CSmbMusicAPSyncServerModel::ChangeLineOutState()
{
TBool tmoLineOut = iLineOutState.iLineOut;
//儅僫乕儌乕僪拞偺嵞惗奐巒偐斲偐偱嫇摦偑堘偆
if(EFalse == iLineOutState.iPlayWithManner)
{
if((iLineOutState.iMannerMode != EFalse)&& (iLineOutState.iPhone == EFalse) )
{
//儅僫乕儌乕僪拞丄僀儎僼僅儞側偟応崌偺弌椡柍岠偲側傞
iLineOutState.iLineOut = EFalse;
}
else
{
//忋婰埲奜偼弌椡偁傝
iLineOutState.iLineOut = ETrue;
}
}
//@@TRK7490懳墳 delete Start
//
// else
// {
// //儅僫乕儌乕僪拞偺嵞惗奐巒僼儔僌偑桳岠偺応崌
// if(EFalse == iLineOutState.iMannerMode)
// {
// //儅僫乕儌乕僪OFF偵偟偨応崌偼儅僫乕儌乕僪拞偺嵞惗奐巒僼儔僌傪僋儕傾偡傞
// iLineOutState.iPlayWithManner = EFalse;
// }
// }
//
//@@TRK7490懳墳 delete End
//弌椡忬懺偵曄峏偑偁傟偽僐儅儞僪傪敪峴偡傞
if(tmoLineOut != iLineOutState.iLineOut)
{
//弌椡忬懺曄峏僐儅儞僪傪敪峴偡傞
TSmbMusicAPSyncServerInternalCommandPkg commandPkg;
commandPkg.iCommand = ESmbMsuicAPSyncServerCheckLineOut;
iDispatcher->CommandL(commandPkg);
}
}
//@@TRK9378 懳墳 Start
/**
Music僾儗僀儎乕偺嵞惗傪捠抦偡傞
* @param [in] aListHandle 嵞惗嬋儕僗僩偺僴儞僪儖
* @param [in] aPlayConfirm 嵞惗慜偺儅僫乕儌乕僪妋擣
* @return 嵞惗張棟偺惉斲乮僐儞僥儞僣宯偺張棟乯
*/
TBool CSmbMusicAPSyncServerModel::StartPlay(TInt aListHandle, TBool aPlayConfirm)
{
//弌椡偁傝偵愝掕偡傞
// iLineOutState.iLineOut = ETrue;
// //儅僫乕儌乕僪On 仌 僀儎僼僅儞Off 忬懺偐傜偺嵞惗偱偁傞偐傪挷傋傞
// if((EFalse != iLineOutState.iMannerMode) && (iLineOutState.iPhone == EFalse))
// {
// //儅僫乕儌乕僪拞偺嵞惗
// iLineOutState.iPlayWithManner = ETrue;
// }
// else
// {
// //儅僫乕儌乕僪夝彍忬懺偱偺嵞惗
// iLineOutState.iPlayWithManner = EFalse;
// }
//@@TRK10338懳墳 Start
TSmbPGMusicAPPlayerState musicState = SmbPGMusic::MusicAPPlayerStateL(iPropAgent);
//FF/FR偵傛傞嬋廔抂専弌偲嬋愭摢専弌屻偺Play偵懳偟偰偼丄偙偺僼儔僌憖嶌偼晄梫
if(ESmbPGMusicAPPlayerStatePlaying != musicState)
{
//嵞惗奐巒帪偵儅僫乕儌乕僪夝彍忬懺偱偺嵞惗
iLineOutState.iPlayWithManner = aPlayConfirm;
}
//@@TRK10338懳墳 End
//儅僫乕儌乕僪拞偺嵞惗奐巒偐斲偐偱嫇摦偑堘偆
if(EFalse == iLineOutState.iPlayWithManner)
{
if((iLineOutState.iMannerMode != EFalse)&& (iLineOutState.iPhone == EFalse) )
{
//儅僫乕儌乕僪拞丄僀儎僼僅儞側偟応崌偺弌椡柍岠偲側傞
iLineOutState.iLineOut = EFalse;
}
else
{
//忋婰埲奜偼弌椡偁傝
iLineOutState.iLineOut = ETrue;
}
}
else
{
//儅僫乕儌乕僪妋擣偟偨応崌偼昁偢弌椡忬懺偲側傞
iLineOutState.iLineOut = ETrue;
}
//@@TRK9378 懳墳 End
//儗僕儏乕儉曐懚僐儅儞僪傪敪峴偡傞
TBool result = EFalse;
TSmbMusicAPSyncServerInternalCommandPkg commandPkg;
commandPkg.iCommand = ESmbMusicAPSyncServerSetResumeInfo;
commandPkg.iParam.iSetResume.iListHandle = aListHandle;
commandPkg.iParam.iSetResume.iResult = &result;
iDispatcher->CommandL(commandPkg);
return result;
}
/**
奜晹儊儌儕偺忬懺曄峏僐儅儞僪傪敪峴偡傞
* @param [in] aType
* @param [in] aAvailable
* @return
*/
//@@TRK9519,9520懳墳 Start
void CSmbMusicAPSyncServerModel::SendExtMemCommand(CSmbExtMemWatcher::TType aType, TBool aAvailable)
{
TSmbMusicAPSyncServerInternalCommand command;
switch(aType)
{
//MS憓擖忬懺
case CSmbExtMemWatcher::EMs:
if(EFalse != aAvailable)
{
command = ESmbMsuicAPSyncServerInsertMS;
}
else
{
command = ESmbMsuicAPSyncServerRemoveMS;
}
break;
//SD憓擖忬懺
case CSmbExtMemWatcher::ESd:
if(EFalse != aAvailable)
{
command = ESmbMsuicAPSyncServerInsertSD;
}
else
{
command = ESmbMsuicAPSyncServerRemoveSD;
}
break;
//MassStorage忬懺
case CSmbExtMemWatcher::EMass:
command = ESmbMsuicAPSyncServerChangeExtMemState;
break;
default:
//Mass偺曄峏偲偄偆偙偲偱
command = ESmbMsuicAPSyncServerChangeExtMemState;
break;
}
//撪晹僐儅儞僪敪峴
TSmbMusicAPSyncServerInternalCommandPkg commandPkg;
commandPkg.iCommand = command;
iDispatcher->CommandL(commandPkg);
//奜晹儊儌儕乕偺忬懺偑曄峏偝傟偨偺偱儗僕儏乕儉傕攋婞偟傑偡
DeleteResume();
// if(ESmbMsuicAPSyncServerChangeExtMemState != command)
// {
// //奜晹儊儌儕乕偺忬懺偑曄峏偝傟偨偺偱儗僕儏乕儉傕攋婞偟傑偡
// DeleteResume();
// }
//@@TRK9519,9520懳墳 End
}
/**
僾儗僀儎乕偑嵞惗忬懺偺帪偼Key壒傪梷惂偡傞
* @param [in] aBool(ETrue:梷惂/EFalse:夝曻)
* @return
*/
void CSmbMusicAPSyncServerModel::StopKeySound(TBool aBool)
{
TRAPD(error, SmbPGMusic::SetAPPlayerStateForKeyToneL(iPropAgent, aBool));
if(KErrNone != error)
{
// 儘僌弌椡
TInt log = EMusicAPSyncServerClassNumber01 | EMusicAPSyncServerLocationNumber08;
_LIT(KSyncServerModel08, "SyncServerModel::StopKeySound Leave = %d");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelHighest, KSyncServerModel08, error);
}
}
// ADD-S PTX824 k3-sugimoto
/**
* MTP儌乕僪偺忬懺傪挷傋傞
**/
void CSmbMusicAPSyncServerModel::CheckMtpModeL()
{
TSmbPGMtpModeStatus mtpStatus(ESmbPGMtpModeStatusInitialValue);
mtpStatus = SmbPGMusic::MtpModeStatusL(iPropAgent); // MTP儌乕僪忬懺庢摼
TInt log = EMusicAPSyncServerClassNumber01 | EMusicAPSyncServerLocationNumber09;
_LIT(KSyncServerModel09, "SyncServerModel::CheckMtpModeL(State:%d) Flag:%d");
SmbMusicAPSyncServerLog(iLog, log, ELogLevelLowest, KSyncServerModel09, mtpStatus, iMtpStatus);
// MODIFY-S [D_82400015960]MTP偺忬懺捛壛偵傛傞廋惓
if ((mtpStatus == ESmbPGMtpModeStatusInitialValue) || // 弶婜忬懺
(mtpStatus == ESmbPGMtpModeStatusFailure)) // MTP婲摦幐攕
// MODIFY-E [D_82400015960]MTP偺忬懺捛壛偵傛傞廋惓
{ // MTP弶婜忬懺丒婲摦幐攕偺応崌
// MTP偑摦嶌偟偰偄側偄
if (iMtpStatus != EFalse)
{ // MTP儌乕僪偑夝彍偝傟偨応崌
iMtpStatus = EFalse;
// ADD-S [D_82400006419] MTP儌乕僪曄峏張棟偑嶍彍偝傟偰偄偨偺偱暅妶丒張棟捛壛
// 儗僕儏乕儉傪攋婞偟傑偡
DeleteResume();
// ADD-E [D_82400006419] MTP儌乕僪曄峏張棟偑嶍彍偝傟偰偄偨偺偱暅妶丒張棟捛壛
}
}
else
{ // MTP弶婜忬懺埲奜偺応崌
// MTP偑摦嶌拞(壓婰偺忬懺偑懳徾(UIQ2753))
// ESmbPGMtpModeStarting : MTP婲摦拞
// ESmbPGMtpModeConnect : MTP愙懕拞
// ESmbPGMtpModeSynchronizing : MTP揮憲拞
// ESmbPGMtpModeSynchronized : MTP揮憲姰椆
if (iMtpStatus == EFalse)
{ // MTP儌乕僪偵堏峴偟偨応崌
iMtpStatus = ETrue;
// 儗僕儏乕儉傪攋婞偟傑偡
DeleteResume();
}
}
}
// ADD-S 婜尷愗傟僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳
/**
* 傾僀僥儉僉儍僢僔儏傪攋婞偟傑偡
**/
void CSmbMusicAPSyncServerModel::DeleteCacheItemL()
{
// 傾僀僥儉僉儍僢僔儏攋婞僐儅儞僪傪敪峴偡傞
TSmbMusicAPSyncServerInternalCommandPkg commandPkg;
commandPkg.iCommand = ESmbMsuicAPSyncServerDeleteCacheItem;
iDispatcher->CommandL(commandPkg);
}
// ADD-E 婜尷愗傟僒僽僗僋儕僾僔儑儞偺僌儗乕傾僂僩懳墳
/**
* 僙僢僔儑儞悢庢摼
* @return 愙懕偝傟偰偄傞僙僢僔儑儞悢
**/
TInt CSmbMusicAPSyncServerModel::SessionCount() const
{
return iSession.Count();
}
// ADD-E PTX824 k3-sugimoto
// ADD-S [D_82400015039]僇儊儔傾僾儕偑慜柺偺応崌僆乕僩儗僕儏乕儉嵞惗傪偟側偄懳墳
DCM_NAMESPACE::RPGPropAgent& CSmbMusicAPSyncServerModel::PropAgent()
{
return iPropAgent;
}
// ADD-E [D_82400015039]僇儊儔傾僾儕偑慜柺偺応崌僆乕僩儗僕儏乕儉嵞惗傪偟側偄懳墳
// end of SmbMusicAPSyncServerModel.cpp
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -