diff -r 951a5db380a0 -r e0b5df5c0969 videoeditorengine/audioeditorengine/inc/AudProcessor.h --- a/videoeditorengine/audioeditorengine/inc/AudProcessor.h Fri Jan 29 14:08:33 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,158 +0,0 @@ -/* -* Copyright (c) 2010 Ixonos Plc. -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of the "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: -* Ixonos Plc -* -* Description: -* -*/ - - - - -#ifndef __AUDPROCESSOR_H__ -#define __AUDPROCESSOR_H__ - - -#include -#include - -#include "AudCommon.h" -#include "AudClipInfo.h" -#include "ProcClipInfoAO.h" -#include "ProcProcessAO.h" -#include "ProcVisualizationAO.h" -#include "ProcTimeEstimateAO.h" - -/* - * Forward declarations. - */ -class CAudSong; -class CAudClip; -class MProcProcessObserver; -class MProcClipInfoObserver; -class CProcClipInfoAO; -class CProcProcess; -class CProcVisualizationAO; -class CProcTimeEstimateAO; - -/** - * Audio processor. - */ -class CAudProcessor : public CBase - { -public: - - /** - * Constructors for instantiating new audio processors. - * Should reserve as little resources as possible at this point. - */ - static CAudProcessor* NewL(); - static CAudProcessor* NewLC(); - - - virtual ~CAudProcessor(); - - /** - * Starts a syncronous song processing - */ - TBool StartSyncProcessingL(const CAudSong* aSong); - - TBool ProcessSyncPieceL(HBufC8*& aFrame, TInt& aProgress, - TTimeIntervalMicroSeconds& aDuration); - - /** - * Cancel song processing. - */ - void CancelProcessing(MProcProcessObserver& aObserver); - - - - /** - * Read the header from the specified audio clip file and return its properties. - * - * - * Possible leave codes: - * - KErrNoMemory if memory allocation fails - * - KErrNotFound if there is no file with the specified name - * in the specified directory (but the directory exists) - * - KErrPathNotFound if the specified directory - * does not exist - * - KErrUnknown if the specified file is of unknown format - * - * @param aFileName name of the file to read - * @param aFileHandle handle of the file to read - * @param aProperties Output parameter. Properties of the input file. - * Allocated and released by the caller - * @param aObserver Observer to be notified as soon as operation completes - */ - void GetAudFilePropertiesL(const TDesC& aFileName, RFile* aFileHandle, - TAudFileProperties* aProperties, - MProcClipInfoObserver& aObserver, TInt aPriority); - - /** - * Starts an asynchronous visualization operation for a clip. Progress - * indications are sent to an observer - * - * @param aClip Clip to be visualized - * @param aSize Lenght of the visualization array, must be positive - * @param aPriority Priority of the operation - */ - void StartGetClipVisualizationL(const CAudClipInfo* aClipInfo, TInt aSize, - MAudVisualizationObserver& aObserver, - TInt aPriority); - - /** - * Cancels a clip visualization operation. If an operation is not running - * a TAudPanic::EVisualizationProcessNotRunning is thrown - */ - void CancelClipVisualization(); - - TBool StartTimeEstimateL(const CAudSong* aSong, MAudTimeEstimateObserver& aTEObserver); - - void CancelTimeEstimate(); - - - -protected: - CAudProcessor(); - - void ConstructL(); - -private: - - // clip info active object owned by this - CProcClipInfoAO* iClipInfoAO; - - // processing object owned by this - CProcProcess* iProcessingObject; - - // visualization active object owned by this - CProcVisualizationAO* iVisualizationAO; - - // Time estimation active object owned by this - CProcTimeEstimateAO* iTimeEstimateAO; - - - - // a flag to indicate whether there is some ongoing processing - TBool iProcessing; - - friend class CProcProcess; - friend class CProcClipInfoAO; - - - }; - - -#endif // __AudProcessor_H__ -