📄 smbmusicaplibmwanalyzeitem.cpp
字号:
{
// 奼挘僿僢僟忣曬庢摼偺旕摨婜墳摎偑忋婰偺2偮埲奜丄
// 傑偨偼GetInfo()偱僄儔乕偑敪惗偟偨応崌偼丄
// 僄儔乕傪捠抦偟張棟廔椆
DeleteObjects();
Complete(result); // 撪晹偱張棟柍偟忬懺傊堏峴偟偰偄傞丅
}
}
/**
* AAA夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetAAAInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNone)
{
result = CompleteGetImageInfo();
if (result == KErrNone)
{ // 屄暿忣曬庢摼梫媮偑惉岟
// 屄暿忣曬庢摼懸偪忬懺傊
SetState(ESmbMusicAPLibGetAAAIndivInfoforTarget);
}
else if (result == KErrCompletion)
{ // 屄暿忣曬悢偑0偺応崌
// 僕儍働僢僩夋憸忣曬偺庢摼傪峴偆
iImageType = ESmbMusicMWLibImageTypeJacket;
result = GetInfo();
if (result == KErrNone)
{ // 夋憸忣曬庢摼梫媮偵惉岟偟偨応崌
// 師偺忬懺傊慗堏偡傞
SetState(ESmbMusicAPLibGetJacketInfoforTarget);
}
}
}
else
{ // 夋憸忣曬庢摼偺旕摨婜墳摎偑僄儔乕偩偭偨応崌
// 僕儍働僢僩夋憸忣曬偺庢摼傪峴偆
iImageType = ESmbMusicMWLibImageTypeJacket;
result = GetInfo();
if (result == KErrNone)
{
SetState(ESmbMusicAPLibGetJacketInfoforTarget);
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* AAA夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetAAAIndivInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNone)
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNone偱偁偭偨応崌
result = AppendImageTypeInfo();
if (result == KErrNone)
{
result = GetIndividualInfo();
if (result == KErrCompletion)
{ // AAA夋憸偺屄暿夋憸忣曬偑慡偰庢摼姰椆偟偨応崌
// 僕儍働僢僩夋憸忣曬偺庢摼傪峴偆
iImageType = ESmbMusicMWLibImageTypeJacket;
result = GetInfo();
if (result == KErrNone)
{
SetState(ESmbMusicAPLibGetJacketInfoforTarget);
}
}
else if (result == KErrNone)
{ // 屄暿夋憸忣曬庢摼梫媮偵惉岟
// Fail-Safe偲偟偰忬懺傪僙僢僩偟偰偍偔
SetState(ESmbMusicAPLibGetJacketIndivInfoforTarget);
}
}
}
else
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑僄儔乕偱偁偭偨応崌
// 僕儍働僢僩夋憸忣曬偺庢摼傪峴偆
iImageType = ESmbMusicMWLibImageTypeJacket;
result = GetInfo();
if (result == KErrNone)
{
SetState(ESmbMusicAPLibGetJacketInfoforTarget);
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 僕儍働僢僩夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetJacketInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNone)
{
result = CompleteGetImageInfo();
if (result == KErrNone)
{ // 屄暿忣曬庢摼梫媮偑惉岟
// 屄暿忣曬庢摼懸偪忬懺傊
SetState(ESmbMusicAPLibGetJacketIndivInfoforTarget);
}
else if (result == KErrCompletion)
{ // 屄暿忣曬悢偑0偺応崌
// 僕儍働僢僩夋憸偑0枃偺応崌懸庴夋憸偼懚嵼偟側偄偨傔
// 屄暿忣曬偑側偔側偭偨帪揰偱張棟偼廔椆偡傞(810CM:3645)
DeleteObjects(EFalse); // 攝楍僋儕傾側偟
Complete(KErrNone);
return;
}
}
else if (aResult == KErrNotSupported)
{ // 夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotSupported偩偭偨応崌
// 婛懚偺張棟偵偁傢偣KErrNotSupported傪弨惓忢宯偲偟偰埖偆偨傔丄
// 僟儈乕偺僕儍働僢僩夋憸屄暿忣曬傪捛壛偡傞
ErrorInfo();
result = AppendImageTypeInfo();
if (result == KErrNone)
{ // 屄暿忣曬偺捛壛偵惉岟
// 偦偺屻丄懸庴夋憸忣曬庢摼傪峴偆
iImageType = ESmbMusicMWLibImageTypeStill;
result = GetInfo();
if (result == KErrNone)
{
SetState(ESmbMusicAPLibGetStillInfoforTarget);
}
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 僕儍働僢僩夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetJacketIndivInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNotFound)
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotFound偱偁偭偨応崌
// 弨惓忢宯偲偟偰埖偆偨傔僟儈乕偺僨乕僞傪嶌惉
ErrorInfo();
}
if ((aResult == KErrNone) || (aResult == KErrNotFound))
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNone偐KErrNotFound偱偁偭偨応崌
result = AppendImageTypeInfo();
if (result == KErrNone)
{
result = GetIndividualInfo();
if (result == KErrCompletion)
{ // 僕儍働僢僩夋憸偺屄暿夋憸忣曬偑慡偰庢摼姰椆偟偨応崌
iImageType = ESmbMusicMWLibImageTypeStill;
result = GetInfo();
if (result == KErrNone)
{
SetState(ESmbMusicAPLibGetStillInfoforTarget);
}
}
else if (result == KErrNone)
{ // 屄暿夋憸忣曬庢摼梫媮偵惉岟
// Fail-Safe偲偟偰忬懺傪僙僢僩偟偰偍偔
SetState(ESmbMusicAPLibGetJacketIndivInfoforTarget);
}
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 懸庴夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetStillInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNone)
{
result = CompleteGetImageInfo();
if (result == KErrNone)
{ // 屄暿忣曬庢摼梫媮偑惉岟
// 屄暿忣曬庢摼懸偪忬懺傊
SetState(ESmbMusicAPLibGetStillIndivInfoforTarget);
}
else if (result == KErrCompletion)
{ // 屄暿忣曬悢偑0偺応崌
// 屄暿忣曬偑側偔側偭偨帪揰偱張棟偼廔椆偡傞丅
DeleteObjects(EFalse); // 攝楍僋儕傾側偟
Complete(KErrNone);
return;
}
}
else if (aResult == KErrNotSupported)
{ // 夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotSupported偩偭偨応崌
// 師偵庢傞傋偒夋憸忣曬偼側偄偺偱偙偙偱張棟姰椆
DeleteObjects(EFalse); // 攝楍僋儕傾側偟
Complete(KErrNone);
return;
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 懸庴夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetStillIndivInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNotFound)
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotFound偱偁偭偨応崌
// 弨惓忢宯偲偟偰埖偆偨傔僟儈乕偺僨乕僞傪嶌惉
ErrorInfo();
}
if ((aResult == KErrNone) || (aResult == KErrNotFound))
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNone偐KErrNotFound偱偁偭偨応崌
result = AppendImageTypeInfo();
if (result == KErrNone)
{
result = GetIndividualInfo();
if (result == KErrCompletion)
{ // 懸庴夋憸偺屄暿夋憸忣曬偑慡偰庢摼姰椆偟偨応崌
DeleteObjects(EFalse);
Complete(KErrNone);
return;
}
else if (result == KErrNone)
{ // 屄暿夋憸忣曬庢摼梫媮偵惉岟
// Fail-Safe偲偟偰忬懺傪僙僢僩偟偰偍偔
SetState(ESmbMusicAPLibGetStillIndivInfoforTarget);
}
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 壧帉夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetLyricInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNone)
{
result = CompleteGetImageInfo();
if (result == KErrNone)
{ // 屄暿忣曬庢摼梫媮偑惉岟
// 屄暿忣曬庢摼懸偪忬懺傊
SetState(ESmbMusicAPLibGetLyricIndivInfoforTarget);
}
else if (result == KErrCompletion)
{ // 屄暿忣曬悢偑0偺応崌
// 屄暿忣曬偑側偔側偭偨帪揰偱張棟偼廔椆偡傞丅
DeleteObjects(EFalse); // 攝楍僋儕傾側偟
Complete(KErrNone);
return;
}
}
else if (aResult == KErrNotSupported)
{ // 夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotSupported偩偭偨応崌
// 師偵庢傞傋偒夋憸忣曬偼側偄偺偱偙偙偱張棟姰椆
DeleteObjects(EFalse); // 攝楍僋儕傾側偟
Complete(KErrNone);
return;
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 壧帉夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void CSmbMusicAPLibMWAnalyzeItem::HandleGetLyricIndivInfoforTarget(TInt aResult)
{
TInt result(aResult);
if (aResult == KErrNotFound)
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNotFound偱偁偭偨応崌
// 弨惓忢宯偲偟偰埖偆偨傔僟儈乕偺僨乕僞傪嶌惉
ErrorInfo();
}
if ((aResult == KErrNone) || (aResult == KErrNotFound))
{ // 屄暿夋憸忣曬庢摼偺旕摨婜墳摎偑KErrNone偐KErrNotFound偱偁偭偨応崌
result = AppendImageTypeInfo();
if (result == KErrNone)
{
result = GetIndividualInfo();
if (result == KErrCompletion)
{ // 壧帉夋憸偺屄暿夋憸忣曬偑慡偰庢摼姰椆偟偨応崌
DeleteObjects(EFalse);
Complete(KErrNone);
return;
}
else if (result == KErrNone)
{ // 屄暿夋憸忣曬庢摼梫媮偵惉岟
// Fail-Safe偲偟偰忬懺傪僙僢僩偟偰偍偔
SetState(ESmbMusicAPLibGetLyricIndivInfoforTarget);
}
}
}
if (result != KErrNone)
{ // 偙傟傑偱偺張棟偱僄儔乕偑敪惗偟偨傜偙偙偱廔椆
DeleteObjects();
Complete(result);
}
}
/**
* 屄暿忣曬庢摼奐巒
*
* @return 張棟寢壥
**/
TInt CSmbMusicAPLibMWAnalyzeItem::CompleteGetImageInfo()
{
iHasInfoMax = iInfoItem -> EntryCount();
if (iHasInfoMax < 0)
{
TUint32 logCode = EMusicAPLibClassNumber_CSmbMusicAPLibMWAnalyzeItem | EMusicAPLibLocationNumber37;
_LIT(KMusicAPLibMWAnalyzeItem37, "CSmbMusicAPLibMWAnalyzeItem::CompleteGetImageInfo() [Err]:iHasInfoMax = %d");
SmbMusicAPLibLog(logCode, ELogLevelHigh, KMusicAPLibMWAnalyzeItem37, iHasInfoMax);
return iHasInfoMax;
}
iAnalyzeCounter = 0; // 屄暿夋憸忣曬庢摼梫媮屇弌帪偵+1偡傞偨傔
TInt result(KErrNone);
if (iHasInfoMax > 0)
{ // 屄暿忣曬悢偑0傛傝懡偄応崌
//奺夋憸庬暿偵傛傞僒億乕僩偡傞嵟戝枃悢傪挷傋傞
CheckMaxImageCount(iImageType, iHasInfoMax);
// 屄暿夋憸忣曬庢摼梫媮
result = GetIndividualInfo();
}
else
{ // 屄暿忣曬悢偑0偺応崌
result = KErrCompletion; // 屇傃尦偱惓忢廔椆偲偟偰敾抐偡
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -