sl@0: /* sl@0: * Copyright (c) 2005-2009 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: /** sl@0: @test sl@0: @internalComponent sl@0: sl@0: This contains CT_SoundActiveCallback sl@0: */ sl@0: sl@0: #if (!defined __T_SOUNDACTIVECALLBACK_H__) sl@0: #define __T_SOUNDACTIVECALLBACK_H__ sl@0: sl@0: // User includes sl@0: #include "sound_util.h" sl@0: #include "ActiveCallbackBase.h" sl@0: sl@0: /** sl@0: * Callback class for playing and recording processes sl@0: */ sl@0: class CT_SoundActiveCallback : public CActiveCallbackBase sl@0: { sl@0: public: sl@0: sl@0: /** sl@0: * Two phase constructor sl@0: * sl@0: * @leave system wide error sl@0: */ sl@0: static CT_SoundActiveCallback* NewL(CDataWrapperBase& aCallback, TInt aPriority=EPriorityStandard); sl@0: sl@0: /** sl@0: * Two phase constructor sl@0: * sl@0: * @leave system wide error sl@0: */ sl@0: static CT_SoundActiveCallback* NewLC(CDataWrapperBase& aCallback, TInt aPriority=EPriorityStandard); sl@0: sl@0: /** sl@0: * Public destructor sl@0: */ sl@0: ~CT_SoundActiveCallback(); sl@0: sl@0: /** sl@0: * Setter method for section name sl@0: */ sl@0: void SetSection(const TDesC& aSection); sl@0: sl@0: /** sl@0: * Method for creating sound data buffer. sl@0: */ sl@0: void CreateSoundDataBufferL(TInt aLength); sl@0: sl@0: protected: sl@0: sl@0: /** sl@0: * Protected constructor. First phase construction sl@0: */ sl@0: CT_SoundActiveCallback(CDataWrapperBase& aCallback, TInt aPriority); sl@0: sl@0: public: sl@0: /** Position in buffer being played or recorded to */ sl@0: TInt iDataPosition; sl@0: /** Buffer being played or recorded to */ sl@0: TSoundUtil::RAudioBuffer* iSoundData; sl@0: /** Section name associated with command */ sl@0: TDesC* iSection; sl@0: /** Block in buffer */ sl@0: TPtr8 iBufferBlock; sl@0: }; sl@0: sl@0: #endif /* __T_SOUNDACTIVECALLBACK_H__ */