📄 cameraappcontroller.cpp
字号:
-----------------------------------------------------------------------------
*/
void CCameraAppController::StopViewFinder()
{
iCameraCaptureEngine->StopViewFinder();
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::SnapL()
Description: Gets the snapped image from Camera driver
Comments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::SnapL()
{
iCameraCaptureEngine->SnapL();
}
/*
-----------------------------------------------------------------------------
CFbsBitmap& CCameraAppController::GetSnappedImage()
Description: Gives snapped image to be displayed in PostExposure view
Comments :
Return values: Snapped CFbsBitmap object reference
-----------------------------------------------------------------------------
*/
CFbsBitmap& CCameraAppController::GetSnappedImage()
{
return *iBitmapSnap;
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::SaveImageL()
Description: Saves the snapped image on disk
Comments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::SaveImageL()
{
// Get the next usable file name
GetNextUsableFileName();
// Save the image
iCameraCaptureEngine->SaveImageL( QualityFactor(), &iNewFileName, &iFs );
}
/*
-----------------------------------------------------------------------------
TJpegQualityFactor CCameraAppController::QualityFactor() const
Description: Returns current quality factor
Comments :
Return values: N/A
-----------------------------------------------------------------------------
*/
TJpegQualityFactor CCameraAppController::QualityFactor() const
{
return KHighQualityFactor;
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::CreateSoundPlayerL()
Description: Initializes snap sound player
Comments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::CreateSoundPlayerL()
{
iSoundPlayer = (STATIC_CAST(CAknAppUi*,CEikonEnv::Static()->AppUi()))->KeySounds();
if ( iSoundPlayer )
{
iSoundPlayer->AddAppSoundInfoListL( R_CAMERA_SNAP_SOUND );
}
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::PlaySnapSound( )
Description: Plays snap sound by calling engine's StartPlay()
Comments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::PlaySnapSound( )
{
if ( iSoundPlayer )
{
iSoundPlayer->PlaySound( KSnapSoundId );
}
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::ShowConversionStatusL( const TDesC &aStatus )
Description: show the status of the current image converting status
omments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::ShowConversionStatusL( const TDesC &aStatus )
{
if ( iContainer )
(STATIC_CAST(CCameraAppBaseContainer*, iContainer))->ShowConversionStatusL( aStatus );
}
/*
-----------------------------------------------------------------------------
TBool CCameraAppController::IsImageConversionInProgress()
Description: return to status showing whether the image conversion is
in progress or not.
omments :
Return values: true if image is being converted
-----------------------------------------------------------------------------
*/
TBool CCameraAppController::IsImageConversionInProgress()
{
return iCameraCaptureEngine->IsImageConversionInProgress();
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::RedrawNaviTabsL()
Description: redraw navi tabs, showing "Standard" and "Portrait"
omments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::RedrawNaviTabsL()
{
if ( iContainer )
(STATIC_CAST(CCameraAppBaseContainer*, iContainer))->RedrawNaviTabsL();
if ( iCameraCaptureEngine )
iCameraCaptureEngine->SetEngineState( EEngineIdle );
}
/*
-----------------------------------------------------------------------------
TEngineState CCameraAppController::GetEngineState()
Description: get engine state
omments :
Return values: engine state
-----------------------------------------------------------------------------
*/
TEngineState CCameraAppController::GetEngineState()
{
return iCameraCaptureEngine->GetEngineState();
}
/*
-----------------------------------------------------------------------------
TEngineState CCameraAppController::GetEngineState()
Description: set engine state
omments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::SetEngineState( TEngineState aState )
{
iCameraCaptureEngine->SetEngineState( aState );
}
// Disable the constant condition warning
#pragma warning ( disable: 4127 )
/*
-----------------------------------------------------------------------------
void CCameraAppController::GetNextUsableFileName()
Description: get the next usable file name
omments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::GetNextUsableFileName()
{
TInt index = 0;
do {
iNewFileName.Copy( iImagePath->Des() );
iNewFileName.Append( KImageFileName );
TBuf<5> num;
num.Num( index );
iNewFileName.Append( num );
iNewFileName.Append( KJpgFileExtension );
if ( !BaflUtils::FileExists( CEikonEnv::Static()->FsSession(),iNewFileName ) )
break;
index ++;
} while ( 1 );
}
/*
-----------------------------------------------------------------------------
void CCameraAppController::HandleError(TInt aError)
Description: handle to error messages from the capture engine
omments :
Return values: N/A
-----------------------------------------------------------------------------
*/
void CCameraAppController::HandleError(TInt aError)
{
TInt reason(KErrNone);
switch( aError )
{
case KErrNone:
reason = KErrNone;
break;
case KErrInUse:
{
reason = ECameraInUse;
// Since the camera is in use, we need to display a message,
// showing the message "Camera in use by another application"
if ( iContainer )
STATIC_CAST(CCameraAppBaseContainer*, iContainer)->ShowErrorMessage(
_L("Camera in use by another app.") );
}
break;
}
}
/*
-----------------------------------------------------------------------------
TBool CCameraAppController::IsCameraUsedByAnotherApp()
Description: return whether the camera is being used another app.
Comments :
Return values: true if it is used by another app.
-----------------------------------------------------------------------------
*/
TBool CCameraAppController::IsCameraUsedByAnotherApp()
{
return iCameraCaptureEngine->IsCameraUsedByAnotherApp();
}
/*
-----------------------------------------------------------------------------
TInt CCameraAppController::SetZoomL(TBool aEnable)
Description: Set the zoom factor. It will increase or decrease the zoom
factor
Comments :
Return values: zoom factor of the camera
-----------------------------------------------------------------------------
*/
TInt CCameraAppController::SetZoomL(TBool aEnable)
{
return iCameraCaptureEngine->SetZoomFactorL( aEnable );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -