--- a/javauis/amms_qt/mmacontrol/src.emc/cammsemcreverbsourcecontrol.cpp Tue May 11 16:07:20 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,208 +0,0 @@
-/*
-* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Manipulates the settings of an audio effect reverb source.
-*
-*/
-
-
-// INCLUDE FILES
-#include <logger.h>
-#include "cammsemcreverbsourcecontrol.h"
-#include "cammsbasereverbcontrol.h"
-#include "cammsemcreverbcontrol.h"
-
-// CONSTANTS
-const TInt KAMMSDisconnectReverbSource = 2147483647; // From JSR-234
-
-#ifdef _DEBUG
-const TInt KAMMSMaxRoomLevel = 0;
-#endif // _DEBUG
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CAMMSEMCReverbSourceControl::NewLC
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-CAMMSEMCReverbSourceControl* CAMMSEMCReverbSourceControl::NewLC(
- CMMAPlayer* aPlayer,
- CAMMSBaseReverbControl* aBaseReverbControl)
-{
- CAMMSEMCReverbSourceControl* self =
- new(ELeave)CAMMSEMCReverbSourceControl(aPlayer, aBaseReverbControl);
-
- CleanupStack::PushL(self);
-
- return self;
-}
-
-// Destructor
-CAMMSEMCReverbSourceControl::~CAMMSEMCReverbSourceControl()
-{
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::~CAMMSEMCReverbSourceControl");
-
- // Perform DeallocateControl, if the state change has not yet performed it.
- DeallocateControl();
-
-}
-
-// -----------------------------------------------------------------------------
-// CAMMSEMCReverbSourceControl::SetRoomLevelL
-// Sets the object specific level for the reverberant sound.
-// -----------------------------------------------------------------------------
-//
-void CAMMSEMCReverbSourceControl::SetRoomLevelL(TInt aLevel)
-{
- LOG1( EJavaAMMS, EInfo, "AMMS:: CAMMSEMCReverbSourceControl::SetRoomLevelL +: %d", aLevel);
-// Check in debug build that aLevel is within valid range.
- __ASSERT_DEBUG(
- (aLevel <= KAMMSMaxRoomLevel) ||
- (aLevel == KAMMSDisconnectReverbSource),
- User::Invariant());
-
- // With the JSR-234 value Integer.MIN_VALUE, the reflected sound for the
- // given object can be disabled.
- if (aLevel == KMinTInt)
- {
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL(Integer.MIN_VALUE)");
- aLevel = 0;
- }
-
- // Check the allowed boundaries for room level.
- TInt minLevel = 0;
- TInt maxLevel = 0;
- iRoomLevelControl->LevelRange(minLevel, maxLevel);
- LOG2( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL boundaries %d, %d",
- minLevel, maxLevel);
-
- // Check the state of the effect. If it is in disabled state, enable it.
- TBool enabled;
- iRoomLevelControl->IsEnabled(enabled);
- if (!enabled)
- {
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL calling EnableL");
- iRoomLevelControl->Enable();
- }
-
- // With the JSR-234 value DISCONNECT, the object can be disconnected
- // from the reverb.
- if (aLevel == KAMMSDisconnectReverbSource)
- {
- // Do not call iReverbSource->DisableL(), instead set the room level to
- // _minimum_ value (= smallest negative gain -> maximum attenuation).
- // The CRoomLevel must also be kept enabled.
- aLevel = minLevel;
-
- LOG1( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL(DISCONNECT) %d",
- minLevel);
- }
- else
- {
- // Set the room level within allowed boundaries from EMC API
- aLevel = Min(aLevel, maxLevel);
- aLevel = Max(aLevel, minLevel);
- LOG1( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL setting value: %d", aLevel);
- }
-
- // Sets the RoomLevel level, it will leave if aRoomLevel is not within range
- // of Min and Max
- iRoomLevelControl->SetRoomLevel(aLevel);
-
- // Apply updated settings to EMC API.
- iRoomLevelControl->Apply();
-
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::SetRoomLevelL -");
-}
-
-// -----------------------------------------------------------------------------
-// CAMMSEMCReverbSourceControl::PrepareControlL
-// Function which is called after the correct state is set in Player.
-// -----------------------------------------------------------------------------
-//
-void CAMMSEMCReverbSourceControl::PrepareControlL()
-{
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::PrepareControlL");
-
- if (!iRoomLevelControl)
- {
- //Create RoomLevel Effect Control
- iStreamControl = (static_cast<CMMAEMCAudioPlayer*>(iMMAPlayer))->StreamControl();
- iFactory = (static_cast<CMMAEMCAudioPlayer*>(iMMAPlayer))->MMFactory();
-
- MEffectControl* temp(NULL);
- User::LeaveIfError(iFactory->CreateEffectControl(KRoomLevelEffectControl, temp));
- iRoomLevelControl = static_cast<MRoomLevelControl*>(temp);
-
-
- //Attach EMC Reverb Control to RoomLevelControl
- MReverbControl* reverbControl = iBaseReverbControl->GetReverbControlL();
- iRoomLevelControl->AttachReverb(*reverbControl);
-
- //Add Effect to Stream Control
- User::LeaveIfError(iStreamControl->AddEffect(*iRoomLevelControl));
- }
-
-
-}
-
-// -----------------------------------------------------------------------------
-// CAMMSEMCReverbSourceControl::DeallocateControl
-// Function which is called after the correct state is set in Player.
-// -----------------------------------------------------------------------------
-//
-void CAMMSEMCReverbSourceControl::DeallocateControl()
-{
- LOG( EJavaAMMS, EInfo, "AMMS::CAMMSEMCReverbSourceControl::DeallocateControl");
- if (iRoomLevelControl)
- {
- /*
- //idealy reverbControl should be checked for its existance and if it is there ,should be detached from RoomLevelControl.
- //But in this case reverbControl is deleted till this position,so need not to do it.
- if(reverbControl)
- {
- iRoomLevelControl->DetachReverb(*reverbControl);
- }
- */
- iStreamControl->RemoveEffect(*iRoomLevelControl);
- MEffectControl* objPtr2 = iRoomLevelControl;
- iFactory->DeleteEffectControl(objPtr2);
- iRoomLevelControl = NULL;
- }
-
-
-
-
-}
-
-const TDesC& CAMMSEMCReverbSourceControl::ClassName() const
-{
- return KAMMSEMCReverbSourceControl;
-}
-
-// -----------------------------------------------------------------------------
-// CAMMSEMCReverbSourceControl::CAMMSEMCReverbSourceControl
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-CAMMSEMCReverbSourceControl::CAMMSEMCReverbSourceControl(
- CMMAPlayer* aPlayer,
- CAMMSBaseReverbControl* aBaseReverbControl)
- : CAMMSBaseReverbSourceControl(aPlayer), iBaseReverbControl(aBaseReverbControl)
-{
-
- iMMAPlayer = aPlayer;
-
-}
-
-// End of File