📄 smbmusicaplibmwanalyzeitem.h
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
// FileName:
// SmbMusicAPLibMWAnalyzeItem.h
//
// Description:
// PTX810 Music傾僾儕丂嫟捠儔僀僽儔儕 夋憸忣曬夝愅僋儔僗
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅 |曄峏幰 |撪梕
//--------------+---------------+--------------------------------------
//2006/06/09 |娵壀 |怴婯嶌惉
//2006/08/19 |娵壀 |TRK6868懳墳
//2006/09/09 |娵壀 |TRK8888懳墳
//2006/09/26 |娵壀 |TRK10436懳墳
//2006/10/18 |娵壀 |TRK11656懳墳
//----PTX824----+---------------+--------------------------------------
//2007/03/29 |K3悪杮 |PTX824懳墳
//2007/06/23 |K3悪杮 |AAA夋憸懳墳
#ifndef __SMBMUSICAPLIBMWANALYZEITEM_H__
#define __SMBMUSICAPLIBMWANALYZEITEM_H__
#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif
#ifndef __SMBMUSICMWLIBCLIENT_H__
#include <SmbMusicMWLibClient.h>
#endif
#ifndef __SMBMUSICAPLIBDEF_H__
#include "SmbMusicAPLibImageDef.h"
#endif
SEMCJ_NAMESPACE_BEGIN
const TInt KSmbMusicAPLibImageAAAMax = 1; ///<AAA夋憸偺嵟戝悢
const TInt KSmbMusicAPLibImageJacketMax = 1; ///<僕儍働僢僩夋憸偺嵟戝悢
const TInt KSmbMusicAPLibImageStillMax = 2; ///<懸偪庴偗夋憸偺嵟戝悢
const TInt KSmbMusicAPLibImageLylicMax = 7; ///<壧帉夋憸偺嵟戝悢
/** 夋憸庢摼偺帠慜僠僃僢僋梡夋憸忣曬奿擺僋儔僗 */
struct TSmbMusicAPLibMWAnlyzeItemCheckImageInfo
{
CSmbMusicMWLibSongItem* iItem; ///<嬋傾僀僥儉僆僽僕僃僋僩乮強桳尃側偟乯
CSmbMusicMWLibImageInfo* iInfoItem; ///<MusicMW偺夋憸忣曬僋儔僗偺億僀儞僞
TSmbMusicMWLibImageIndividualInfo iInfo; ///<屄暿偺夋憸忣曬僋儔僗
TInt iIndex; ///<庢摼偡傞夋憸Index
};
/**
* Music傾僾儕 嫟捠儔僀僽儔儕 夋憸忣曬夝愅僋儔僗
*/
class CSmbMusicAPLibMWAnalyzeItem : public CActive
{
public:
/**
* 忬懺掕媊
**/
enum TSmbMusicAPLibAnalyzeItemState
{
ESmbMusicAPLibIdle = 0, ///<傾僀僪儖忬懺
ESmbMusicAPLibGetExInfo, ///<SD忣曬庢摼忬懺
ESmbMusicAPLibAnalyzeInfo, ///<夋憸忣曬夝愅忬懺
ESmbMusicAPLibGetInfo, ///<夋憸忣曬庢摼忬懺
ESmbMusicAPLibStartCheckImage, ///<夋憸庢摼偺帠慜僠僃僢僋奐巒忬懺
ESmbMusicAPLibCheckingImage, ///<夋憸庢摼偺帠慜僠僃僢僋忬懺
// ADD-S PTX824 k3-sugimoto
ESmbMusicAPLibGetExInfoforTarget, ///< SDBind忣曬庢摼忬懺
ESmbMusicAPLibGetAAAInfoforTarget, ///< AAA夋憸忣曬庢摼
ESmbMusicAPLibGetAAAIndivInfoforTarget, ///< AAA夋憸屄暿忣曬庢摼
ESmbMusicAPLibGetJacketInfoforTarget, ///< 僕儍働僢僩夋憸忣曬庢摼
ESmbMusicAPLibGetJacketIndivInfoforTarget, ///< 僕儍働僢僩夋憸屄暿忣曬庢摼
ESmbMusicAPLibGetStillInfoforTarget, ///< 懸庴夋憸忣曬庢摼
ESmbMusicAPLibGetStillIndivInfoforTarget, ///< 懸庴夋憸屄暿忣曬庢摼
ESmbMusicAPLibGetLyricInfoforTarget, ///< 壧帉夋憸忣曬庢摼
ESmbMusicAPLibGetLyricIndivInfoforTarget, ///< 壧帉夋憸屄暿忣曬庢摼
ESmbMusicAPLibGetAAACountforTarget, ///< AAA夋憸悢庢摼
ESmbMusicAPLibGetJacketCountforTarget, ///< 僕儍働僢僩夋憸悢庢摼
ESmbMusicAPLibGetStillCountforTarget, ///< 懸庴夋憸悢庢摼
ESmbMusicAPLibGetLyricCountforTarget, ///< 壧帉夋憸悢庢摼
// ADD-E PTX824 k3-sugimoto
};
/**
* 僐儞僗僩儔僋僞
**/
CSmbMusicAPLibMWAnalyzeItem();
/**
* 僨僗僩儔僋僞
**/
~CSmbMusicAPLibMWAnalyzeItem();
/**
* 嬋傾僀僥儉偺夋憸忣曬傪庢摼偡傞
* @param[in] aItem 嬋傾僀僥儉偺嶲徠
* @param[in] aExType 奼挘僼儔僌
* @param[in,out] aInfo 夋憸忣曬庢摼椞堟
* @param[in,out] aStatus 旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
* @return 張棟寢壥
**/
TInt GetImageInfo(
CSmbMusicMWLibSongItem& aItem,
TInt aExType,
TSmbMusicAPLibImageInfo& aInfo,
TRequestStatus& aStatus
);
/**
* 嬋傾僀僥儉偺夋憸忣曬庢摼張棟傪僉儍儞僙儖偡傞
* @return 張棟寢壥
**/
TInt CancelImageInfo();
/**
* 妝嬋偵娷傑傟傞夋憸僼傽僀儖偺僒僀僘傪挷傋傞
* @param[in] aItem 嬋傾僀僥儉偺嶲徠
* @param[in] aType 夋憸庬暿(僕儍働僢僩夋憸(懸庴夋憸傪娷傓)丄壧帉夋憸)
* @param[in] aIndex 夋憸斣崋巜掕
* @param[in] aStatus 旕摨婜墳摎
* @return 張棟寢壥
*/
TInt CheckImage(
CSmbMusicMWLibSongItem& aItem,
TSmbMusicMWLibImageType aType,
TInt aIndex,
TRequestStatus& aStatus
);
/**
* 帠慜僠僃僢僋偺拞巭
* @return 張棟寢壥
**/
TInt CancelCheckImage();
// ADD-S PTX824 k3-sugimoto
/**
* 巜掕偟偨庬暿偺夋憸忣曬傪庢摼偡傞
* @param[in] aItem 忣曬庢摼懳徾偺嬋傾僀僥儉
* @param[in] aTargetType 庢摼偟偨偄夋憸忣曬偺庬暿(僕儍働僢僩/壧帉)
* @param[in] aExType 奼挘僼儔僌
* @param[out] aTypeInfo 庢摼偝傟偨屄暿夋憸忣曬偺曐帩椞堟
* @param[in,out] aStatus 旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
* @return 張棟寢壥
**/
TInt GetImageTypeInfo(
CSmbMusicMWLibSongItem& aItem,
TSmbMusicAPLibImageType& aTargetType,
TInt aExType,
TSmbMusicAPLibImageTypeInfo& aTypeInfo,
TRequestStatus& aStatus
);
/**
* 巜掕庬暿夋憸忣曬庢摼梫媮偺僉儍儞僙儖
**/
void CancelGetImageTypeInfo();
/**
* 巜掕偟偨庬暿偺夋憸悢傪庢摼偡傞
* @param[in] aItem 庢摼懳徾偺嬋傾僀僥儉
* @param[in] aTargetType 庢摼偟偨偄夋憸忣曬偺庬暿(僕儍働僢僩/壧帉)
* @param[in] aExType 奼挘僼儔僌
* @param[out] aImageCount 庢摼偝傟偨夋憸悢
* @param[in,out] aStatus 旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
* @return 張棟寢壥
**/
TInt GetTargetImageCount(
CSmbMusicMWLibSongItem& aItem,
TSmbMusicAPLibImageType& aTargetType,
TInt aExType,
TInt& aImageCount,
TRequestStatus& aStatus
);
/**
* 巜掕庬暿夋憸悢庢摼梫媮偺僉儍儞僙儖
**/
void CancelGetTargetImageCount();
// ADD-E PTX824 k3-sugimoto
private:
/**
* 傾僋僥傿僽僆僽僕僃僋僩偺RunL娭悢
**/
void RunL();
/**
* 傾僋僥傿僽僆僽僕僃僋僩偺DoCancel
**/
void DoCancel();
/**
* 旕摨婜梫媮傪奐巒偡傞(AO傪Active偵僙僢僩偡傞)
**/
void Start();
/**
* 忬懺傪愝掕偡傞
* @param[in] aState 愝掕偡傞忬懺抣
**/
void SetState(TSmbMusicAPLibAnalyzeItemState aState);
/**
* 忬懺傪庢摼偡傞
* @return 尰嵼偺忬懺抣
**/
TSmbMusicAPLibAnalyzeItemState State();
/**
* 屄暿夋憸忣曬偑偁傟偽丄屄暿夋憸忣曬庢摼傪奐巒丟偦偆偱側偄応崌丄傕偟懠偺僞僀僾偺夋憸偑偁傟偽丄夋憸忣曬庢摼梫媮傪屇傃弌偡
**/
void StartAnalyzeInfo();
/**
* 慡晹偺屄暿夋憸庢摼張棟傪懕偗傞丟慡晹庢摼偟偨応崌丄傾僾儕偵姰椆捠抦傪搳偘傞
**/
void AnalyzeInfo();
/**
* 偁傞夋憸僞僀僾偵懳偟偰丄夋憸忣曬庢摼傪峴偆
* @return 張棟寢壥
*/
TInt GetInfo();
/**
* 師偺夋憸僞僀僾傪愝掕偡傞
* @return 懸偪庴偗夋憸/壧帉夋憸偵愝掕偟偨応崌丄ETrue傪曉偡
**/
TBool NextImageType();
/**
* 嵟弶偺夋憸僞僀僾傪愝掕偡傞
**/
void StartImageType();
/**
* 梫媮懁偵懳偟偰丄旕摨婜梫媮偺姰椆捠抦傪偡傞
* @param[in] aCode 姰椆僐乕僪
**/
void Complete(TInt aCode);
/**
* 惗惉偟偨僆僽僕僃僋僩傪嶍彍偡傞
* @param[in] aClearArray 奿擺椞堟偺攝楍傪僋儕傾偡傞偐偳偆偐(僨僼僅儖僩:ETrue=僋儕傾偡傞)
**/
void DeleteObjects(TBool aClearArray = ETrue);
/**
* 妝嬋偵奿擺偝傟偰偄傞夋憸僼傽僀儖偺嵟戝悢傪僠僃僢僋偡傞
* @param[in] aType 夋憸庬暿
* @param[in/out] aImageCount 夋憸偺嵟戝悢
**/
void CheckMaxImageCount(TSmbMusicMWLibImageType aType, TInt& aImageCount);
/**
* 旕摨婜墳摎偑惓忢廔椆偺応崌
* @param[in] aState 尰嵼偺忬懺
**/
void ResultKErrNone(TSmbMusicAPLibAnalyzeItemState aState);
/**
* 旕摨婜墳摎偑弨惓忢廔椆偺応崌
* @param[in] aState 尰嵼偺忬懺
**/
void ResultKErrNotSupport(TSmbMusicAPLibAnalyzeItemState aState);
/**
* 旕摨婜墳摎偑僄儔乕偺応崌
* @param[in] aState 尰嵼偺忬懺
**/
void ResultError(TSmbMusicAPLibAnalyzeItemState aState);
/**
* 庢摼偟偨夋憸忣曬傪奿擺偡傞
**/
void AppendImageInfo();
/**
* 妝嬋偵娷傑傟傞夋憸忣曬傪庢摼偡傞(夋憸庢摼偺帠慜僠僃僢僋梡)
* @return 張棟寢壥
**/
TInt GetInfoToCheckImage();
/**
* 妝嬋偵娷傑傟傞夋憸偑僒億乕僩僼傽僀儖僒僀僘偵廂傑偭偰偄傞偐傪僠僃僢僋偡傞(夋憸庢摼偺帠慜僠僃僢僋梡)
* @return 張棟寢壥
**/
TInt CheckSupportedSize();
/**
* 夋憸忣曬偑懚嵼偟側偄応崌偺僄儔乕張棟
**/
void ErrorInfo();
/**
* 旕摨婜墳摎偑弨惓忢廔椆偺応崌
* @param[in] aState 尰嵼偺忬懺
**/
void ResultKErrNotFound(TSmbMusicAPLibAnalyzeItemState aState);
// ADD-S PTX824 k3-sugimoto
/**
* 巜掕庬暿夋憸忣曬庢摼梫媮偺墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetImageTypeInfoRes(TInt aResult);
/**
* SDBind忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetExInfoforTarget(TInt aResult);
/**
* AAA夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetAAAInfoforTarget(TInt aResult);
/**
* AAA夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetAAAIndivInfoforTarget(TInt aResult);
/**
* 僕儍働僢僩夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetJacketInfoforTarget(TInt aResult);
/**
* 僕儍働僢僩夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetJacketIndivInfoforTarget(TInt aResult);
/**
* 懸庴夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetStillInfoforTarget(TInt aResult);
/**
* 懸庴夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetStillIndivInfoforTarget(TInt aResult);
/**
* 壧帉夋憸忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetLyricInfoforTarget(TInt aResult);
/**
* 壧帉夋憸屄暿忣曬庢摼墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetLyricIndivInfoforTarget(TInt aResult);
/**
* 夋憸忣曬庢摼姰椆張棟
*
* @return 張棟寢壥
**/
TInt CompleteGetImageInfo();
/**
* 屄暿忣曬庢摼奐巒
*
* @return 張棟寢壥
**/
TInt GetIndividualInfo();
/**
* 庢摼偱偒偨屄暿夋憸忣曬傪奿擺椞堟傊曐帩偡傞
*
* @return 張棟寢壥
**/
TInt AppendImageTypeInfo();
/**
* 巜掕庬暿夋憸悢庢摼梫媮偺墳摎偵懳偡傞張棟
*
* @param[in] aResult 旕摨婜墳摎偺抣
**/
void HandleGetImageTypeCountRes(TInt aResult);
// ADD-E PTX824 k3-sugimoto
private:
/** 屄暿夋憸忣曬庢摼僇僂儞僞 **/
TInt iAnalyzeCounter;
/** 庢摼偟偨夋憸忣曬椞堟偺億僀儞僞 **/
TSmbMusicAPLibImageInfo* iClientInfo;
/** 夋憸僼傽僀儖傪強桳偟偰偄傞嬋傾僀僥儉 **/
CSmbMusicMWLibSongItem* iClientItem;
/** 梫媮懁偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗傪堦帪曐懚梡儊儞僶乕曄悢 **/
TRequestStatus* iClientStatus;
/** 偁傞夋憸僞僀僾(僕儍働僢僩(懸庴夋憸娷傓)丄壧帉夋憸)偵懳偟偰丄嬋傾僀僥儉偑帩偭偰偄傞屄暿夋憸屄悢 **/
TInt iHasInfoMax;
/** 尰嵼丄庢摼張棟拞偱偁傞夋憸僞僀僾 **/
TSmbMusicMWLibImageType iImageType;
/** MusicMW偺夋憸忣曬僋儔僗偺億僀儞僞 **/
CSmbMusicMWLibImageInfo* iInfoItem;
/** MusicMW偺屄暿夋憸忣曬奿擺椞堟 **/
TSmbMusicMWLibImageIndividualInfo iInfo;
/** 僋儔僗忬懺 **/
TSmbMusicAPLibAnalyzeItemState iState;
/** SDBind忣曬 **/
TSmbMusicMWLibExtensionHeaderInfo iExtensionHeaderInfo;
/** 夋憸庢摼偺帠慜僠僃僢僋梡忣曬奿擺僋儔僗 **/
TSmbMusicAPLibMWAnlyzeItemCheckImageInfo iCheckInfo;
// ADD-S PTX824 k3-sugimoto
/** 庢摼偟偨夋憸忣曬奿擺椞堟偺億僀儞僞 **/
TSmbMusicAPLibImageTypeInfo* iClientTypeInfo;
/** 忣曬庢摼懳徾偺夋憸庬暿 **/
TSmbMusicAPLibImageType iTargetType;
/** 壧帉夋憸偺曐懚壜斲僼儔僌 **/
TBool iLyricStoreFlag;
/** 庢摼偟偨夋憸悢奿擺椞堟偺億僀儞僞 **/
TInt* iImageCount;
/** 奼挘僼儔僌 **/
TInt iExType;
// ADD-E PTX824 k3-sugimoto
};
SEMCJ_NAMESPACE_END
#endif //__SMBMUSICAPLIBMWANALYZEITEM_H__
// end of SmbMusicAPLibMWAnalyzeItem.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -