os/mm/devsoundextensions/effectspresets/AudioEqualizerUtility/src/TempAudioEqualizer.cpp
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
/*
sl@0
     2
* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). 
sl@0
     3
* All rights reserved.
sl@0
     4
* This component and the accompanying materials are made available
sl@0
     5
* under the terms of "Eclipse Public License v1.0"
sl@0
     6
* which accompanies this distribution, and is available
sl@0
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0
     8
*
sl@0
     9
* Initial Contributors:
sl@0
    10
* Nokia Corporation - initial contribution.
sl@0
    11
*
sl@0
    12
* Contributors:
sl@0
    13
*
sl@0
    14
* Description:   Implementation of the audio equalizer proxy class
sl@0
    15
*
sl@0
    16
*/
sl@0
    17
sl@0
    18
sl@0
    19
sl@0
    20
sl@0
    21
// INCLUDE FILES
sl@0
    22
sl@0
    23
#ifdef _DEBUG
sl@0
    24
#include <e32svr.h>
sl@0
    25
#endif
sl@0
    26
sl@0
    27
#include "TempAudioEqualizer.h"
sl@0
    28
sl@0
    29
// ============================ MEMBER FUNCTIONS ===============================
sl@0
    30
sl@0
    31
// -----------------------------------------------------------------------------
sl@0
    32
// CTempAudioEqualizer::CTempAudioEqualizer
sl@0
    33
// C++ default constructor can NOT contain any code, that
sl@0
    34
// might leave.
sl@0
    35
// -----------------------------------------------------------------------------
sl@0
    36
//
sl@0
    37
CTempAudioEqualizer::CTempAudioEqualizer()
sl@0
    38
    {
sl@0
    39
    }
sl@0
    40
sl@0
    41
// Destructor
sl@0
    42
CTempAudioEqualizer::~CTempAudioEqualizer()
sl@0
    43
    {
sl@0
    44
	}
sl@0
    45
sl@0
    46
// -----------------------------------------------------------------------------
sl@0
    47
// CTempAudioEqualizer::NewL
sl@0
    48
// Static function for creating an instance of the Audio Equalizer object.
sl@0
    49
// -----------------------------------------------------------------------------
sl@0
    50
//
sl@0
    51
EXPORT_C CTempAudioEqualizer* CTempAudioEqualizer::NewL(TInt aNumberOfBands,CAudioEqualizer* aAudioEqualizer)
sl@0
    52
    {
sl@0
    53
#ifdef _DEBUG
sl@0
    54
		    RDebug::Print(_L("CTempAudioEqualizer::NewL"));
sl@0
    55
#endif
sl@0
    56
sl@0
    57
    CTempAudioEqualizer* self = new (ELeave) CTempAudioEqualizer();
sl@0
    58
    CleanupStack::PushL( self );
sl@0
    59
	self->ConstructL(aNumberOfBands,aAudioEqualizer);
sl@0
    60
	CleanupStack::Pop(self);
sl@0
    61
    return self;
sl@0
    62
	}
sl@0
    63
sl@0
    64
// -----------------------------------------------------------------------------
sl@0
    65
// CTempAudioEqualizer::ConstructL
sl@0
    66
// -----------------------------------------------------------------------------
sl@0
    67
//
sl@0
    68
void CTempAudioEqualizer::ConstructL(TInt aNumberOfBands, CAudioEqualizer* aAudioEqualizer)
sl@0
    69
    {
sl@0
    70
#ifdef _DEBUG
sl@0
    71
    RDebug::Print(_L("CTempAudioEqualizer::ConstructL"));
sl@0
    72
#endif
sl@0
    73
sl@0
    74
	iAudioEqualizer = aAudioEqualizer;
sl@0
    75
	iNumberOfBands = aNumberOfBands;
sl@0
    76
sl@0
    77
	TEfAudioEqualizerBand bandData;
sl@0
    78
	for(TInt i=0; i< aNumberOfBands; i++)
sl@0
    79
		{
sl@0
    80
		if(iBandsData.Append(bandData))
sl@0
    81
			{
sl@0
    82
			User::Leave(KErrNoMemory);
sl@0
    83
			}
sl@0
    84
		}
sl@0
    85
sl@0
    86
sl@0
    87
	}
sl@0
    88
sl@0
    89
sl@0
    90
// -----------------------------------------------------------------------------
sl@0
    91
// CTempAudioEqualizer::ApplyL
sl@0
    92
// Apply the Audio Equalizer settings.
sl@0
    93
// -----------------------------------------------------------------------------
sl@0
    94
//
sl@0
    95
EXPORT_C void CTempAudioEqualizer::ApplyL()
sl@0
    96
	{
sl@0
    97
#ifdef _DEBUG
sl@0
    98
    RDebug::Print(_L("CTempAudioEqualizer::Apply"));
sl@0
    99
#endif
sl@0
   100
sl@0
   101
	for(TInt i = 1; i <= iNumberOfBands; i++)
sl@0
   102
		{
sl@0
   103
			if(BandLevel(i) != iAudioEqualizer->BandLevel(i))
sl@0
   104
				{
sl@0
   105
#ifdef _DEBUG
sl@0
   106
    RDebug::Print(_L("CTempAudioEqualizer::Band %d Level %d"),i,BandLevel(i));
sl@0
   107
#endif
sl@0
   108
sl@0
   109
					iAudioEqualizer->SetBandLevelL(i,BandLevel(i));
sl@0
   110
				}
sl@0
   111
		}
sl@0
   112
	if(iAudioEqualizer)
sl@0
   113
		{
sl@0
   114
		iAudioEqualizer->EnableL();
sl@0
   115
		//	iAudioEqualizer->ApplyL();
sl@0
   116
		}
sl@0
   117
sl@0
   118
	}
sl@0
   119
sl@0
   120
sl@0
   121
// -----------------------------------------------------------------------------
sl@0
   122
// CTempAudioEqualizer::EnableL
sl@0
   123
// Enable the Audio EnvironmentalReverb settings.
sl@0
   124
// -----------------------------------------------------------------------------
sl@0
   125
//
sl@0
   126
EXPORT_C void CTempAudioEqualizer::EnableL()
sl@0
   127
   {
sl@0
   128
    #ifdef _DEBUG
sl@0
   129
   	RDebug::Print(_L("CTempAudioEqualizer::EnableL"));
sl@0
   130
   	#endif
sl@0
   131
   	
sl@0
   132
   	iEnabled = ETrue;
sl@0
   133
    ApplyL();   
sl@0
   134
   }
sl@0
   135
sl@0
   136
// -----------------------------------------------------------------------------
sl@0
   137
// CTempAudioEqualizer::DisableL
sl@0
   138
// Disable the Audio EnvironmentalReverb settings.
sl@0
   139
// -----------------------------------------------------------------------------
sl@0
   140
//
sl@0
   141
EXPORT_C void CTempAudioEqualizer::DisableL()
sl@0
   142
   {
sl@0
   143
   #ifdef _DEBUG   
sl@0
   144
   	 RDebug::Print(_L("CTempAudioEqualizer::DisableL"));
sl@0
   145
   #endif
sl@0
   146
   	 
sl@0
   147
   	iEnabled = EFalse; 
sl@0
   148
	
sl@0
   149
	if(iAudioEqualizer)
sl@0
   150
	  iAudioEqualizer->DisableL();	    
sl@0
   151
   }
sl@0
   152
sl@0
   153
// -----------------------------------------------------------------------------
sl@0
   154
// CTempAudioEqualizer::IsEnableL
sl@0
   155
// Return enable flag.
sl@0
   156
// -----------------------------------------------------------------------------
sl@0
   157
//
sl@0
   158
EXPORT_C TBool CTempAudioEqualizer::IsEnabled() const
sl@0
   159
   {
sl@0
   160
    #ifdef _DEBUG 
sl@0
   161
   	 RDebug::Print(_L("CTempAudioEqualizer::IsEnabled"));
sl@0
   162
   #endif
sl@0
   163
   
sl@0
   164
    TBool ifEnabled = EFalse;
sl@0
   165
    if(iAudioEqualizer)
sl@0
   166
	   ifEnabled = iAudioEqualizer->IsEnabled();	    
sl@0
   167
    
sl@0
   168
    return ifEnabled;
sl@0
   169
   }
sl@0
   170
sl@0
   171
sl@0
   172
sl@0
   173
// -----------------------------------------------------------------------------
sl@0
   174
// CTempAudioEqualizer::IsEnforced
sl@0
   175
// Return enForce flag
sl@0
   176
// -----------------------------------------------------------------------------
sl@0
   177
//
sl@0
   178
EXPORT_C TBool CTempAudioEqualizer::IsEnforced() const
sl@0
   179
   {
sl@0
   180
     #ifdef _DEBUG 
sl@0
   181
   RDebug::Print(_L("CTempAudioEqualizer::IsEnforced"));
sl@0
   182
   #endif
sl@0
   183
   
sl@0
   184
    TBool ifEnforced = EFalse;   
sl@0
   185
    if(iAudioEqualizer)
sl@0
   186
	  ifEnforced = iAudioEqualizer->IsEnforced();	    	
sl@0
   187
    
sl@0
   188
    return ifEnforced;
sl@0
   189
   
sl@0
   190
   }
sl@0
   191
sl@0
   192
// -----------------------------------------------------------------------------
sl@0
   193
// CTempAudioEqualizer::EnforceL
sl@0
   194
// Enforce the effect
sl@0
   195
// -----------------------------------------------------------------------------
sl@0
   196
//
sl@0
   197
EXPORT_C void CTempAudioEqualizer::EnforceL( TBool aEnforced )
sl@0
   198
   {
sl@0
   199
   #ifdef _DEBUG 
sl@0
   200
   RDebug::Print(_L("CTempAudioEqualizer::EnforceL"));
sl@0
   201
   #endif    
sl@0
   202
sl@0
   203
   iEnforced = aEnforced;
sl@0
   204
   
sl@0
   205
   if(iAudioEqualizer)
sl@0
   206
	  iAudioEqualizer->EnforceL(aEnforced);	   	
sl@0
   207
   }
sl@0
   208
sl@0
   209
sl@0
   210
sl@0
   211
// -----------------------------------------------------------------------------
sl@0
   212
// CTempAudioEqualizer::HaveUpdateRights
sl@0
   213
// Return enForce flag
sl@0
   214
// -----------------------------------------------------------------------------
sl@0
   215
//
sl@0
   216
EXPORT_C TBool CTempAudioEqualizer::HaveUpdateRights() const
sl@0
   217
   {
sl@0
   218
   #ifdef _DEBUG 
sl@0
   219
   RDebug::Print(_L("CTempAudioEqualizer::HaveUpdateRights"));
sl@0
   220
   #endif
sl@0
   221
    
sl@0
   222
    TBool ifHaveUpdateRights = EFalse;   
sl@0
   223
    if(iAudioEqualizer)
sl@0
   224
	  ifHaveUpdateRights = iAudioEqualizer->HaveUpdateRights();	    	
sl@0
   225
    
sl@0
   226
    return ifHaveUpdateRights;
sl@0
   227
	
sl@0
   228
   }
sl@0
   229
sl@0
   230
sl@0
   231
sl@0
   232
// ========================== OTHER EXPORTED FUNCTIONS =========================
sl@0
   233
sl@0
   234
// End of File