⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smbmusicaplibimageresizer.h

📁 索爱手机代码
💻 H
字号:
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */
/*--------------------------------------------------------------------*/
// FileName:
//	SmbMusicAPLibImageResizer.h
//
// Description:
//	PTX810 Music傾僾儕  嫟捠儔僀僽儔儕 Bitmap儕僒僀僘僋儔僗
/*--------------------------------------------------------------------*/
//曄峏棜楌
//擔晅			|曄峏幰			|撪梕
//--------------+---------------+--------------------------------------
//2006/06/09	|娵壀			|怴婯嶌惉
//----PTX824----+---------------+--------------------------------------
//2007/03/30	|K3悪杮			| PTX824懳墳(Scaler傪G2PF儔僢僷乕偵曄峏)
//2007/06/28	|K3悪杮			| [D_82400003832]GIF偺儕僒僀僘僄儔乕懳墳


#ifndef __SMBMUSICAPLIBIMAGERESIZER_H__
#define __SMBMUSICAPLIBIMAGERESIZER_H__


#ifndef __SMBCOMMONDEF_H__
#include <SmbCommonDef.h>
#endif

#ifndef __SMBMUSICAPLIBDEF_H__
#include "SmbMusicAPLibImageDef.h"
#endif


class CBitmapScaler;

SEMCJ_NAMESPACE_BEGIN
//  ADD-S PTX824 k3-sugimoto
#ifndef __SMBMUSICAPLIB_ENABLE_PTX810__
class CSmbImageMW;
#endif
//  ADD-S PTX824 k3-sugimoto

/**
 * Music嫟捠儔僀僽儔儕  儕僒僀僘僋儔僗
 */
class CSmbMusicAPLibImageResizer : public CActive
	{
public:
	/**
	 *  僐儞僗僩儔僋僞
	 **/
	CSmbMusicAPLibImageResizer();

	/**
	 *  僨僗僩儔僋僞
	 **/
	~CSmbMusicAPLibImageResizer();

	/**
	 *  戞擇僼僃乕僘僐儞僗僩儔僗僞
	 **/
	void ConstructL();

	/**
	 *  巜掕偝傟偨僒僀僘偵Bitmap傪儕僒僀僘偡傞
	 *
	 *  @param [in]		aSrcBitmap	儕僒僀僘偡傞尦Bitmap
	 *  @param [in]		aSize		巜掕偟偨僒僀僘
	 *  @param [in,out]	aDstBitmap	儕僒僀僘屻偺Bitmap
	 *  @param [in,out]	aStatus		旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
	 *  @param [in]		aBeSpread	奼戝儕僒僀僘幚峴僼儔僌(僨僼僅儖僩:EFalse=奼戝偟側偄)
	 *
	 *  @return	張棟寢壥
	 */
//  MODIFY-S PTX824 k3-sugimoto
	TInt ResizeBitmap(
			TSmbMusicAPLibImageBitmap& aSrcBitmap,
			TSize aSize,
			TSmbMusicAPLibImageBitmap& aDstBitmap,
			TRequestStatus& aStatus,
			TBool aBeSpread = EFalse
			);
//  MODIFY-E PTX824 k3-sugimoto

	/**
	 *  Bitmap儕僒僀僘張棟傪僉儍儞僙儖偡傞
	 **/
	TInt CancelResizeBitmap();

	/**
	 *  傾僋僥傿僽僆僽僕僃僋僩偺RunL娭悢
	 **/
	void RunL();

	/**
	 *  傾僋僥傿僽僆僽僕僃僋僩偺DoCancel張棟
	 **/
	void DoCancel();


private:
	/**
	 *  旕摨婜梫媮傪奐巒偡傞(AO傪Active偵偡傞)
	 **/
	void Start();

//  MODIFY-S PTX824 k3-sugimoto
	/**
	 *  弌椡夋憸偺夋僒僀僘傪寁嶼偡傞
	 *
	 *  @param[in]	aSize		僠僃僢僋偡傞僒僀僘
	 *  @param[in]	aBeSpread	2攞奼戝幚峴僼儔僌(ETrue:奼戝偡傞丄EFalse:奼戝偟側偄)
	 */
	void CheckSize(TSize aSize, TBool aBeSpread);
//  MODIFY-E PTX824 k3-sugimoto

	/**
	 *  尦偺Bitmap傪巜掕偝傟偨僒僀僘偺怴偨側Bitmap偵儕僒僀僘偡傞
	 *  @param[in]		aSrcBitmap	儕僒僀僘偡傞尦Bitmap
	 *  @param[in,out]	aDstBitmap	儕僒僀僘偟偨怴偨側Bitmap
	 *  @param[in,out]	aStatus		旕摨婜墳摎梡偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗
	 *  @return	張棟寢壥
	 **/
	TInt Resize(CFbsBitmap& aSrcBitmap, CFbsBitmap& aDstBitmap, TRequestStatus& aStatus);

	/**
	 *  惗惉偟偨僆僽僕僃僋僩傪嶍彍偟丄旕摨婜梫媮傪姰椆偡傞
	 *  @param	aCode	姰椆僐乕僪
	 **/
	void DeleteObjectsAndComplete(TInt aCode);


private:
	/** 儕僒僀僘偡傞尦Bitmap堦帪曐懚梡儊儞僶乕曄悢 **/
	TSmbMusicAPLibImageBitmap* iSrcBitmap;

	/** 儕僒僀僘偟偨Bitmap傊偺億僀儞僞 **/
	TSmbMusicAPLibImageBitmap* iDstBitmap;

	/** 巜掕偟偨僒僀僘堦帪曐懚梡儊儞僶乕曄悢 **/
	TSize iDstSize;

	/** 梫媮懁偺傾僋僥傿僽僆僽僕僃僋僩僗僥乕僞僗傪堦帪曐懚梡儊儞僶乕曄悢 **/
	TRequestStatus*	iClientStatus;

	/** Bitmap僗働乕儔  僋儔僗傊偺億僀儞僞 **/
	CBitmapScaler*	iBmScaler;

//  ADD-S [D_82400003832]GIF偺儕僒僀僘僄儔乕懳墳
	/**  價僢僩儅僢僾偺僴乕僪僂僃傾價僢僩儅僢僾僴儞僪儖  **/
	TInt			iHardwareBitmapHandle;
//  ADD-E [D_82400003832]GIF偺儕僒僀僘僄儔乕懳墳

#ifdef __SMBMUSICAPLIB_ENABLE_PTX810__
	/** 傾僗儁僋僩斾桳岠僼儔僌(傾僗儁僋僩斾堐帩偱偒傟偽ETrue)  **/
	TBool iAspectRatio;
#else	//  __SMBMUSICAPLIB_ENABLE_PTX810__
//  ADD-S PTX824 k3-sugimoto
	/** G2PF儔僢僷乕僆僽僕僃僋僩傊偺億僀儞僞 **/
	CSmbImageMW*	iG2Scaler;
//  ADD-E PTX824 k3-sugimoto
#endif	//  __SMBMUSICAPLIB_ENABLE_PTX810__
	};

SEMCJ_NAMESPACE_END


#endif //__SMBMUSICAPLIBIMAGERESIZER_H__

// end of SmbMusicAPLibImageResizer.h
/* Copyright (C) 2006 Sony Ericsson Mobile Communications Japan, Inc. */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -