mmapitest/devsoundexthaitest/inc/T_CRestrictedAudioOutputData.h
author hgs
Thu, 24 Jun 2010 10:37:45 +0100
changeset 26 c36d67f77f75
permissions -rw-r--r--
2010wk21_04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     1
/*
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     2
* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     3
* All rights reserved.
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     8
*
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
     9
* Initial Contributors:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    11
*
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    12
* Contributors:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    13
*
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    14
* Description: 
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    15
*
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    16
*/
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    17
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    18
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    19
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    20
#ifndef T_CRESTRICTEDAUDIOOUTPUTDATA_H_
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    21
#define T_CRESTRICTEDAUDIOOUTPUTDATA_H_
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    22
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    23
//User Includes
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    24
#include "datawrapperbase.h"
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    25
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    26
//Epoc Includes
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    27
#include <restrictedaudiooutput.h>//CRestrictedAudioOutput
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    28
#include <restrictedaudiooutputmessagetypes.h>
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    29
#include <sounddevice.h>//CMMFDevSound
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    30
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    31
/** 
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    32
 * This class tests the CRestrictedAudioOutput API's 
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    33
 */
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    34
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    35
class CT_CRestrictedAudioOutputData : public CDataWrapperBase
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    36
	{
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    37
public:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    38
	~CT_CRestrictedAudioOutputData();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    39
	static CT_CRestrictedAudioOutputData* NewL();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    40
	virtual TAny* GetObject();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    41
	virtual TBool DoCommandL(const TTEFFunction& aCommand, const TTEFSectionName& aSection, const TInt /*aAsyncErrorIndex*/);
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    42
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    43
private:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    44
	void DestroyData();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    45
protected:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    46
	void DoCmdNewL(const TTEFSectionName& aSection);
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    47
	void DoCmdDestructor();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    48
	void DoCmdAppendAllowedOutput(const TTEFSectionName& aSection);
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    49
	void DoCmdRemoveAllowedOutput(const TTEFSectionName& aSection);
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    50
	void DoCmdGetAllowedOutput(const TTEFSectionName& aSection);
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    51
	void DoCmdGetAllowedOutputCount();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    52
	void DoCmdReset();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    53
	void DoCmdCommit();
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    54
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    55
private:
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    56
	/**
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    57
	 * Wrapped object
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    58
	 */
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    59
	CRestrictedAudioOutput* iRestrictedAudioOutput;		
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    60
	/**
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    61
	 * Enum that contain allowed output preference
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    62
	 */
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    63
	static const TEnumEntryTable iEnumAllowedOutputPreference[];
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    64
	};
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    65
	
c36d67f77f75 2010wk21_04
hgs
parents:
diff changeset
    66
#endif /*T_CRESTRICTEDAUDIOOUTPUTDATA_H_*/