diff -r 000000000000 -r bde4ae8d615e os/boardsupport/haitest/bspsvs/suite/bsp/sound/src/t_soundactivecallback.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os/boardsupport/haitest/bspsvs/suite/bsp/sound/src/t_soundactivecallback.cpp Fri Jun 15 03:10:57 2012 +0200 @@ -0,0 +1,102 @@ +/* +* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +/** +@test +@internalComponent + +This contains CT_SoundActiveCallback +*/ + +// User includes +#include "t_soundactivecallback.h" + +/** + * Two phase constructor + */ +CT_SoundActiveCallback* CT_SoundActiveCallback::NewL(CDataWrapperBase& aCallback, TInt aPriority) + { + CT_SoundActiveCallback* ret = NewLC(aCallback, aPriority); + CleanupStack::Pop(ret); + return ret; + } + +/** + * Two phase constructor + */ +CT_SoundActiveCallback* CT_SoundActiveCallback::NewLC(CDataWrapperBase& aCallback, TInt aPriority) + { + CT_SoundActiveCallback* ret = new (ELeave) CT_SoundActiveCallback(aCallback, aPriority); + CleanupStack::PushL(ret); + ret->ConstructL(); + return ret; + } + +/** + * Protected constructor. First phase construction + */ +CT_SoundActiveCallback::CT_SoundActiveCallback(CDataWrapperBase& aCallback, TInt aPriority) +: CActiveCallbackBase(aCallback, aPriority), + iDataPosition(0), + iSoundData(NULL), + iSection(NULL), + iBufferBlock(NULL, NULL, NULL) + { + } + +/** + * Public destructor + */ +CT_SoundActiveCallback::~CT_SoundActiveCallback() + { + if (iSoundData) + { + iSoundData->Close(); + delete iSoundData; + iSoundData = NULL; + } + } + +/** + * Set section + * + * @param aSection section name to set + * + * @return void + * + * @leave no + */ +void CT_SoundActiveCallback::SetSection(const TDesC& aSection) + { + this->iSection=const_cast(&aSection); + } + +/** + * Create sound data buffer + * + * @param aLength Length of the buffer to be created + * + * @return void + * + * @leave System wide error + */ +void CT_SoundActiveCallback::CreateSoundDataBufferL(TInt aLength) + { + iSoundData = new(ELeave) TSoundUtil::RAudioBuffer(); + User::LeaveIfError(iSoundData->Create(aLength)); + } +