Update contrib.
2 * Copyright (c) 2002-2005 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
18 #ifndef __MMF_TMMFAUDIO_PCM16_TO_IMAADPCM_CODEC_H__
19 #define __MMF_TMMFAUDIO_PCM16_TO_IMAASPCM_CODEC_H__
21 #include "MMFAudioCodecBase.h"
22 #include "MMFImaAudioCodecState.h"
26 * TMMFAudioPcm16ToImaAdpcmCodec
29 const TInt KImaAdpcmCodecIndexTableSize = 16;
30 const TInt KImaAdpcmCodecStepTableSize = 89;
34 * class TMMFAudioPcm16ToImaAdpcmCodec
37 class TMMFAudioPcm16ToImaAdpcmCodec : public TMMFAudioCodecBase
40 inline TMMFAudioPcm16ToImaAdpcmCodec();
41 IMPORT_C virtual void Convert(TUint8* aSrc, TUint8* aDst, TInt aSamples);
42 IMPORT_C void SetState(const TMMFImaAdpcmCodecState& aState);
43 IMPORT_C const TMMFImaAdpcmCodecState& GetState();
45 TMMFImaAdpcmCodecState iState; //supports mono only
47 static const TInt KIndexTable[KImaAdpcmCodecIndexTableSize];
48 static const TInt KStepSizeTable[KImaAdpcmCodecStepTableSize];
53 inline TMMFAudioPcm16ToImaAdpcmCodec::TMMFAudioPcm16ToImaAdpcmCodec() : iBufferStep(ETrue), iBuffer(0) {}
54 #endif //__MMF_TMMFAUDIO_PCM16_TO_IMAADPCM_CODEC_H__