sl@0: /* sl@0: * Copyright (c) 2002-2003 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: sl@0: * sl@0: */ sl@0: sl@0: #ifndef __MMF_TMMFAUDIO_DATA_SETTINGS_H__ sl@0: #define __MMF_TMMFAUDIO_DATA_SETTINGS_H__ sl@0: #include <e32std.h> sl@0: sl@0: /* sl@0: * Generic Audio Parameters sl@0: * sl@0: * class TMMFAudioDataSettings sl@0: * sl@0: */ sl@0: class TMMFAudioDataSettings sl@0: { sl@0: public: sl@0: enum TAudioCaps sl@0: { sl@0: // Sampled audio capabilities sl@0: ESampleRateFixed = 0x00000001, sl@0: ESampleRateAnyInRange = 0x00000002, sl@0: ESampleRate8000Hz = 0x00000010, sl@0: ESampleRate11025Hz = 0x00000040, sl@0: ESampleRate12000Hz = 0x00000080, sl@0: ESampleRate16000Hz = 0x00000100, sl@0: ESampleRate22050Hz = 0x00000400, sl@0: ESampleRate24000Hz = 0x00000800, sl@0: ESampleRate32000Hz = 0x00001000, sl@0: ESampleRate44100Hz = 0x00004000, sl@0: ESampleRate48000Hz = 0x00010000, sl@0: ESampleRate96000Hz = 0x00020000, sl@0: ESampleRate64000Hz = 0x00040000, sl@0: // Channel related - applies to sampled sl@0: EChannelsMono = 0x02000000, sl@0: EChannelsStereo = 0x04000000, sl@0: // Routing related sl@0: ERoutingControl = 0x08000000, sl@0: // True if data flow is synchronised with real time (e.g. stream) sl@0: ERealTime = 0x10000000 sl@0: }; sl@0: enum TAudioFlags sl@0: { sl@0: ENoLocalRouting = 0x00000001, sl@0: ENoNetworkRouting = 0x00000002 sl@0: }; sl@0: public: sl@0: inline TMMFAudioDataSettings(); sl@0: inline void Query(); // Call this when you just want to have caps and maxvolume filled sl@0: public: sl@0: // Fixed values - must be queried sl@0: TInt iCaps; sl@0: TInt iMaxVolume; // One means fixed volume (zero not valid) sl@0: // Variables sl@0: TInt iSampleRate; sl@0: TInt iChannels; sl@0: TInt iVolume; sl@0: TInt iFlags; sl@0: }; sl@0: sl@0: #endif //__MMF_TMMFAUDIO_DATA_SETTINGS_H__