亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cameraappcontroller.cpp

?? SYMBIAN camera 樣例程序如果需要了解更多或缺少什么文件可以郵件聯系我
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
/*
* ============================================================================
*  Name     : CCameraAppController from CameraAppController.cpp
*  Part of  : CameraApp
*  Created  : 05/06/2006 by Forum Nokia
*  Version  : 2.0
*  Copyright: Nokia Corporation, 2006
* ============================================================================
*/

#include <AknViewAppUi.h>
#include <CameraApp.rsg>
#include <bautils.h>
#include <PathInfo.h>

#include "CameraAppController.h"
#include "CameraAppContainer.h"
#include "CameraAppBaseContainer.h"
#include "CameraAppView.h"
#include "CameraAppPortraitView.h"
#include "CameraAppAppUi.h"

#include "CameraCaptureEngine.h"

// Constants
const TInt KFileNameIndexMaxLength = 5;
_LIT(KCameraInUse, "Camera in use by another app.");
_LIT(KNoCamera, "Camera not available.");
_LIT(KSnapSoundFile, "Camera1a_2_8kHz.wav");
_LIT(KFocusedSoundFile, "focused.wav");
// For 2nd Edition emulator only
#ifdef __WINS__
_LIT(KEmulatorPath, "c:\\system\\Apps\\cameraapp\\");
#endif

/*
-----------------------------------------------------------------------------

	CCameraAppController::CCameraAppController()

	Description: C++ default constructor
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
CCameraAppController::CCameraAppController(CAknViewAppUi& aAppUi)
    :iAppUi( aAppUi ),
    iCameraMode( ECameraLandscapeMode ),
    iCameraCaptureEngine( 0 ),
    iContainer( 0 )
    {
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::PowerOff()

	Description: powers off the camera
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::PowerOff()
    {
    iCameraCaptureEngine->PowerOff();
    }

/*
-----------------------------------------------------------------------------

	CCameraAppController::~CCameraAppController()

	Description: destructor, free allocated resources
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
CCameraAppController::~CCameraAppController()
    {
    // Power off the camera
    PowerOff();

    delete iCameraCaptureEngine;
    delete iBitmapSnap;
    delete iImagePath;
    delete iPath;
    
    if (iSoundPlayer)
        {
        iSoundPlayer->Close();
        delete iSoundPlayer;
        }
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::ConstructL()

	Description: Symbian OS second phase constructor
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::ConstructL()
    {
    iEikEnv = CEikonEnv::Static();
    iPath = new(ELeave) TFileName;

    // Create the sound player here
    CreateSoundPlayerL();

    TFileName path = PathInfo::PhoneMemoryRootPath(); //Default 
    path.Append( PathInfo::ImagesPath() );
    iImagePath = HBufC::NewL( path.Length() );
    iImagePath->Des().Copy( path );
    }

/*
-----------------------------------------------------------------------------

	TCameraState CCameraAppController::CameraMode() const   

	Description: gets the camera mode
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
TCameraState CCameraAppController::CameraMode() const   
    {
    return iCameraMode;
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::SetCameraMode(TCameraState aCameraMode)

	Description: Set the camera display mode
	Comments   :

    Return value: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::SetCameraMode(TCameraState aCameraMode)
    {
    iCameraMode = aCameraMode;
    }


/*
-----------------------------------------------------------------------------

    void SetCaptureModeL(const TSize& aSize, TInt aFormat)
    
    Description: Set the capture mode,used for displaying information about 
                 image size/format
    
    Return value: N/A
         
-----------------------------------------------------------------------------
*/
void CCameraAppController::SetCaptureModeL(const TSize& aSize,
                                           TInt aFormat,
                                           TBool aAFSupported)
    {
    iCaptureFormat = aFormat;
    
    TBuf<32> text;
    text.Format( _L("[%1.1fM]"), TReal(aSize.iWidth * aSize.iHeight) / 1000000 );
    
    if( iCaptureFormat == CCamera::EFormatExif )
        {
        text.Append(_L("EXIF"));
        }
        
    if( aAFSupported )
        {
        text.Append(_L("/AF"));
        CCamAutoFocus::TAutoFocusRange range;
        iCameraCaptureEngine->FocusRange(range);
        switch( range )
            {            
            case CCamAutoFocus::ERangeMacro: 
                text.Append(_L("(m)")); 
                break;
            case CCamAutoFocus::ERangePortrait:
                text.Append(_L("(p)"));
                break;
            case CCamAutoFocus::ERangeNormal:
                text.Append(_L("(n)"));
                break;
            case CCamAutoFocus::ERangeInfinite:
                text.Append(_L("(i)"));
                break;
            default:
                break;
            }
        }
    
    CCameraAppBaseContainer* baseCon = 
        static_cast<CCameraAppBaseContainer*>(iContainer);
        
    baseCon->ShowCaptureModeL(text);
    }


/*
-----------------------------------------------------------------------------

    TBool IsPortraitModeSupported()
    
    Description: Checks whether the engine supports capturing in portrait
                 mode. Currently this is not possible when capturing in
                 EXIF JPEG format.
    
    Return value: TBool
         
-----------------------------------------------------------------------------
*/
TBool CCameraAppController::IsPortraitModeSupported()
    {
    return (iCaptureFormat != CCamera::EFormatExif);
    }


/*
-----------------------------------------------------------------------------

    TBool IsAutoFocusSupported()
    
    Description: Checks if AF is supported
    
    Return value: TBool
         
-----------------------------------------------------------------------------
*/
TBool CCameraAppController::IsAutoFocusSupported()
    {
    return iCameraCaptureEngine->IsAutoFocusSupported();
    }
    

/*
-----------------------------------------------------------------------------

	void CCameraAppController::SetFocusRangeL()
	
	Description: Sets the autofocus range. 

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::SetFocusRangeL( CCamAutoFocus::TAutoFocusRange aRange )
    {  
    iCameraCaptureEngine->SetFocusRangeL( aRange );            
    }
    
/*
-----------------------------------------------------------------------------

	TDisplayMode CCameraAppController::DisplayMode() const

	Description: Returns default display mode
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
TDisplayMode CCameraAppController::DisplayMode() const
    {
    return iCameraCaptureEngine->DisplayMode();
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::InitializeCameraL()     

	Description: Initialize still image capture engine
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::InitializeCameraL(const TRect& aRect)     
    {
    if (!iCameraCaptureEngine)
        {
        iCameraCaptureEngine = CCameraCaptureEngine::NewL( *this, aRect );
    
        //Create snap image
        iBitmapSnap = new (ELeave) CWsBitmap(iEikEnv->WsSession());
        User::LeaveIfError( iBitmapSnap->Create(aRect.Size(), DisplayMode()));
        }
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::ReleaseCamera()

	Description: releases a reserved camera
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::ReleaseCamera()
    {
    iCameraCaptureEngine->ReleaseCamera();
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::StartViewFinderL()

	Description: Starts the view finding operation 
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::StartViewFinderL()
    {
    if(iCameraCaptureEngine->GetEngineState() == EEngineNoHardware)
        {
        HandleError( KErrHardwareNotAvailable );
        return;
        }
    
    if(iCameraCaptureEngine->IsViewFinderActive())
        return;

    iCameraCaptureEngine->SetMode( iCameraMode );
    iCameraCaptureEngine->StartViewFinderL();
    }


/*
-----------------------------------------------------------------------------

	void CCameraAppController::SetAppContainer(CCoeControl* aAppContainer, 
			TCameraViewIds aViewId)

	Description: Gives reference to Active view container to Controller
	Comments   :

    Return values: N/A

-----------------------------------------------------------------------------
*/
void CCameraAppController::SetAppContainer( CCoeControl* aAppContainer, 
										    TCameraViewIds aViewId)
    {
    iContainer = aAppContainer;
    iActiveView = aViewId;
    }

/*
-----------------------------------------------------------------------------

	const TDesC& CCameraAppController::ImagePath() const

	Description: Returns the complete path of the saved image
	Comments   :

    Return values: Returns the complete path of the saved image

-----------------------------------------------------------------------------
*/
const TDesC& CCameraAppController::ImagePath() const
    {
    return *iImagePath;
    }

/*
-----------------------------------------------------------------------------

	const TDesC& CCameraAppController::ImagePath() const

	Description: Set the actual bitmap size
	Comments   :

    Return values: 

-----------------------------------------------------------------------------
*/
void CCameraAppController::SetActualVFSize( const TSize& /*aSize*/ )
    {
    if ( iContainer )
        {
        (STATIC_CAST(CCameraAppContainer*,iContainer))->
            ReDrawOffScreenBitmap( );
        }
    }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::ViewFinding( CFbsBitmap& aFrame )

	Description: Gets image from image capture engine, and displays it on 
				 screen, called by the capture engine to display the bitmap
	Comments   :

    Return values: 

-----------------------------------------------------------------------------
*/
void CCameraAppController::ViewFinding( CFbsBitmap& aFrame )
    {
    // skip frames if it was requested
    if ( iSkipFrames )
      {
      --iSkipFrames;      
      return;
      }
      
    if ( !iContainer )
        {
        return;
        }
        
   static_cast<CCameraAppBaseContainer*>(iContainer)->DrawImageNow( aFrame );        
   }

/*
-----------------------------------------------------------------------------

	void CCameraAppController::StopViewFinder()

	Description: Stops view finding
	Comments   :

    Return values: 

-----------------------------------------------------------------------------
*/
void CCameraAppController::StopViewFinder()
    {
    iCameraCaptureEngine->StopViewFinder();
    }

/*
-----------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品成人一区二区三区四区| 91日韩精品一区| 欧美大肚乱孕交hd孕妇| 日韩国产欧美三级| 欧美一区二区三区在线观看视频| 五月激情综合色| 日韩欧美一卡二卡| 国产在线一区二区综合免费视频| 在线综合亚洲欧美在线视频| 国产精品麻豆久久久| 高清成人在线观看| 一卡二卡三卡日韩欧美| 欧美女孩性生活视频| 免费观看91视频大全| 久久欧美中文字幕| 99re在线精品| 蜜臀av性久久久久蜜臀aⅴ四虎 | 日本va欧美va精品发布| 91在线小视频| 26uuu久久综合| 波多野结衣在线一区| 一区二区三区在线免费观看| 日韩欧美中文字幕精品| 丁香亚洲综合激情啪啪综合| 伊人色综合久久天天| 日韩欧美成人午夜| 色综合 综合色| 久久国产欧美日韩精品| 亚洲视频在线观看三级| 制服丝袜亚洲网站| 99视频精品在线| 五月天欧美精品| 久久久久九九视频| 欧美日韩夫妻久久| 91污在线观看| 国产一级精品在线| 天天操天天干天天综合网| 国产精品视频免费看| 91麻豆精品91久久久久久清纯| 91视频免费看| 东方aⅴ免费观看久久av| 理论片日本一区| 国产精品欧美精品| 久久久久国产精品人| 6080国产精品一区二区| 91在线观看视频| av电影在线观看完整版一区二区| 风流少妇一区二区| 成人黄色片在线观看| 成人在线视频一区二区| 国产精品中文有码| 国产资源精品在线观看| 激情欧美一区二区| 国产一区美女在线| 国产一区二区三区在线看麻豆| 日韩福利视频导航| 青青草91视频| 另类小说综合欧美亚洲| 美女国产一区二区三区| 激情小说亚洲一区| 国产一区二区精品在线观看| 国产一二精品视频| 不卡视频一二三| 在线观看亚洲一区| 欧美老肥妇做.爰bbww| 欧美日韩国产影片| 欧美一区二区在线免费观看| 日韩一区二区在线观看视频播放| 日韩精品一区在线观看| 国产欧美一区二区精品忘忧草| 亚洲国产成人自拍| 亚洲色图一区二区三区| 午夜欧美视频在线观看| 天天免费综合色| 成人性生交大合| 欧美三电影在线| 日韩欧美一区在线| 国产精品人人做人人爽人人添| 亚洲欧美一区二区不卡| 亚洲超碰精品一区二区| 久久福利资源站| 成人国产亚洲欧美成人综合网| 色婷婷久久久久swag精品 | 一区二区三国产精华液| 天天综合日日夜夜精品| 国产精品亚洲一区二区三区在线| 日本韩国精品在线| 精品久久人人做人人爱| 亚洲一二三区在线观看| 韩国三级中文字幕hd久久精品| 一本色道久久综合亚洲aⅴ蜜桃| 欧美日韩精品专区| 亚洲精品国产无套在线观| 国产在线播放一区二区三区| 色婷婷综合久久久久中文一区二区 | 亚洲一卡二卡三卡四卡无卡久久| 蜜桃精品视频在线| 欧美三级电影精品| 综合激情成人伊人| 国产精品综合一区二区三区| 欧美日本一区二区| 国产精品不卡在线观看| 国产99久久久国产精品潘金网站| 欧美一区二区三区喷汁尤物| 亚洲一区电影777| 91免费视频网| 中文字幕一区在线| 成人性生交大片免费 | 狠狠狠色丁香婷婷综合激情 | 亚洲超碰精品一区二区| 国产成人夜色高潮福利影视| 3atv在线一区二区三区| 亚洲已满18点击进入久久| 色欧美片视频在线观看在线视频| 国产女人水真多18毛片18精品视频| 精品一区二区在线免费观看| 91精品国产综合久久福利| 日韩国产高清在线| 91麻豆精品国产自产在线| 青青草伊人久久| 精品国精品国产| 精品在线观看视频| 欧美激情一区二区在线| 99精品欧美一区二区三区小说 | 国产精品卡一卡二| 色欲综合视频天天天| 中文av一区二区| 国产成人在线色| 亚洲免费av观看| 欧美久久久久久久久中文字幕| 亚洲www啪成人一区二区麻豆 | 最好看的中文字幕久久| 91美女视频网站| 婷婷开心激情综合| 日韩一级高清毛片| 成人网在线免费视频| 夜夜精品视频一区二区| 日韩一区二区视频| 99精品视频一区二区| 午夜电影网一区| 国产欧美精品一区aⅴ影院| 色av一区二区| 激情综合色播五月| 亚洲少妇30p| 日韩欧美一区电影| 在线观看亚洲专区| 成人深夜视频在线观看| 亚洲成人动漫在线观看| 精品福利一二区| 欧美在线观看视频一区二区| 老鸭窝一区二区久久精品| 亚洲少妇30p| 久久综合九色综合欧美就去吻| 粗大黑人巨茎大战欧美成人| 国产欧美日韩三级| 欧美男女性生活在线直播观看| 顶级嫩模精品视频在线看| 免费在线观看视频一区| 亚洲欧洲av一区二区三区久久| 91精品国产品国语在线不卡| 色综合中文字幕国产 | 毛片一区二区三区| 亚洲精品免费一二三区| 日本一区免费视频| 日韩欧美一区二区在线视频| 99国产精品国产精品毛片| 国产成人av影院| 老司机一区二区| 日韩精品成人一区二区在线| 国产精品久久久久一区二区三区共 | 蜜桃一区二区三区在线观看| 视频一区二区国产| 亚洲va在线va天堂| 亚洲综合在线视频| 一区二区三区在线高清| 综合网在线视频| 中文字幕亚洲电影| 中文字幕高清不卡| 国产精品国产自产拍在线| 久久亚洲一级片| 精品国内片67194| 精品福利视频一区二区三区| 亚洲精品在线一区二区| 精品国产一区二区三区av性色| 日韩免费高清视频| 久久综合久久综合亚洲| 国产女主播视频一区二区| 中文字幕不卡的av| 中文字幕巨乱亚洲| 亚洲中国最大av网站| 视频精品一区二区| 久久电影国产免费久久电影 | 欧美酷刑日本凌虐凌虐| 日韩欧美国产1| 国产色综合久久| 亚洲日本在线a| 中文字幕日韩一区| 婷婷中文字幕一区三区| 国产在线视频不卡二| 色综合中文字幕国产 |