sl@0: /* sl@0: * Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). sl@0: * All rights reserved. sl@0: * This component and the accompanying materials are made available sl@0: * under the terms of "Eclipse Public License v1.0" sl@0: * which accompanies this distribution, and is available sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: * sl@0: * Initial Contributors: sl@0: * Nokia Corporation - initial contribution. sl@0: * sl@0: * Contributors: sl@0: * sl@0: * Description: Implementation of the audio equalizer proxy class sl@0: * sl@0: */ sl@0: sl@0: sl@0: sl@0: sl@0: // INCLUDE FILES sl@0: sl@0: #ifdef _DEBUG sl@0: #include sl@0: #endif sl@0: sl@0: #include "TempAudioEqualizer.h" sl@0: sl@0: // ============================ MEMBER FUNCTIONS =============================== sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::CTempAudioEqualizer sl@0: // C++ default constructor can NOT contain any code, that sl@0: // might leave. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: CTempAudioEqualizer::CTempAudioEqualizer() sl@0: { sl@0: } sl@0: sl@0: // Destructor sl@0: CTempAudioEqualizer::~CTempAudioEqualizer() sl@0: { sl@0: } sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::NewL sl@0: // Static function for creating an instance of the Audio Equalizer object. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C CTempAudioEqualizer* CTempAudioEqualizer::NewL(TInt aNumberOfBands,CAudioEqualizer* aAudioEqualizer) sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::NewL")); sl@0: #endif sl@0: sl@0: CTempAudioEqualizer* self = new (ELeave) CTempAudioEqualizer(); sl@0: CleanupStack::PushL( self ); sl@0: self->ConstructL(aNumberOfBands,aAudioEqualizer); sl@0: CleanupStack::Pop(self); sl@0: return self; sl@0: } sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::ConstructL sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: void CTempAudioEqualizer::ConstructL(TInt aNumberOfBands, CAudioEqualizer* aAudioEqualizer) sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::ConstructL")); sl@0: #endif sl@0: sl@0: iAudioEqualizer = aAudioEqualizer; sl@0: iNumberOfBands = aNumberOfBands; sl@0: sl@0: TEfAudioEqualizerBand bandData; sl@0: for(TInt i=0; i< aNumberOfBands; i++) sl@0: { sl@0: if(iBandsData.Append(bandData)) sl@0: { sl@0: User::Leave(KErrNoMemory); sl@0: } sl@0: } sl@0: sl@0: sl@0: } sl@0: sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::ApplyL sl@0: // Apply the Audio Equalizer settings. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C void CTempAudioEqualizer::ApplyL() sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::Apply")); sl@0: #endif sl@0: sl@0: for(TInt i = 1; i <= iNumberOfBands; i++) sl@0: { sl@0: if(BandLevel(i) != iAudioEqualizer->BandLevel(i)) sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::Band %d Level %d"),i,BandLevel(i)); sl@0: #endif sl@0: sl@0: iAudioEqualizer->SetBandLevelL(i,BandLevel(i)); sl@0: } sl@0: } sl@0: if(iAudioEqualizer) sl@0: { sl@0: iAudioEqualizer->EnableL(); sl@0: // iAudioEqualizer->ApplyL(); sl@0: } sl@0: sl@0: } sl@0: sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::EnableL sl@0: // Enable the Audio EnvironmentalReverb settings. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C void CTempAudioEqualizer::EnableL() sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::EnableL")); sl@0: #endif sl@0: sl@0: iEnabled = ETrue; sl@0: ApplyL(); sl@0: } sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::DisableL sl@0: // Disable the Audio EnvironmentalReverb settings. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C void CTempAudioEqualizer::DisableL() sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::DisableL")); sl@0: #endif sl@0: sl@0: iEnabled = EFalse; sl@0: sl@0: if(iAudioEqualizer) sl@0: iAudioEqualizer->DisableL(); sl@0: } sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::IsEnableL sl@0: // Return enable flag. sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C TBool CTempAudioEqualizer::IsEnabled() const sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::IsEnabled")); sl@0: #endif sl@0: sl@0: TBool ifEnabled = EFalse; sl@0: if(iAudioEqualizer) sl@0: ifEnabled = iAudioEqualizer->IsEnabled(); sl@0: sl@0: return ifEnabled; sl@0: } sl@0: sl@0: sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::IsEnforced sl@0: // Return enForce flag sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C TBool CTempAudioEqualizer::IsEnforced() const sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::IsEnforced")); sl@0: #endif sl@0: sl@0: TBool ifEnforced = EFalse; sl@0: if(iAudioEqualizer) sl@0: ifEnforced = iAudioEqualizer->IsEnforced(); sl@0: sl@0: return ifEnforced; sl@0: sl@0: } sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::EnforceL sl@0: // Enforce the effect sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C void CTempAudioEqualizer::EnforceL( TBool aEnforced ) sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::EnforceL")); sl@0: #endif sl@0: sl@0: iEnforced = aEnforced; sl@0: sl@0: if(iAudioEqualizer) sl@0: iAudioEqualizer->EnforceL(aEnforced); sl@0: } sl@0: sl@0: sl@0: sl@0: // ----------------------------------------------------------------------------- sl@0: // CTempAudioEqualizer::HaveUpdateRights sl@0: // Return enForce flag sl@0: // ----------------------------------------------------------------------------- sl@0: // sl@0: EXPORT_C TBool CTempAudioEqualizer::HaveUpdateRights() const sl@0: { sl@0: #ifdef _DEBUG sl@0: RDebug::Print(_L("CTempAudioEqualizer::HaveUpdateRights")); sl@0: #endif sl@0: sl@0: TBool ifHaveUpdateRights = EFalse; sl@0: if(iAudioEqualizer) sl@0: ifHaveUpdateRights = iAudioEqualizer->HaveUpdateRights(); sl@0: sl@0: return ifHaveUpdateRights; sl@0: sl@0: } sl@0: sl@0: sl@0: sl@0: // ========================== OTHER EXPORTED FUNCTIONS ========================= sl@0: sl@0: // End of File