engine/inc/SoundEngine.h
branchsymbian1
changeset 135 2afd8af01d06
parent 130 92572a695a1d
child 136 cee38af14bcf
--- a/engine/inc/SoundEngine.h	Tue May 25 00:33:50 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2007-2010 Sebastian Brannstrom, Lars Persson, EmbedDev AB
-*
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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:
-* EmbedDev AB - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#ifndef SOUND_ENGINE_H
-#define SOUND_ENGINE_H
-#include <e32base.h>
-
-class CPodcastModel;
-
-const TInt KVolumeSteps = 10;
-
-enum TSoundEngineState
-{
-	ESoundEngineNotInitialized,
-	ESoundEngineOpening,
-	ESoundEnginePlaying,
-	ESoundEnginePaused,
-	ESoundEngineStopped
-};
-
-class MSoundEngineObserver
-{
-public:
-	virtual void PlaybackInitializedL() = 0;
-	virtual void PlaybackStartedL() = 0;
-	virtual void PlaybackStoppedL() = 0;
-	virtual void VolumeChanged(TUint aVolume, TUint aMaxVolume) = 0;
-};
-
-
-/**
- * This class handles all playback and audio associated resources that the application/client needs
- */
-class CSoundEngine : public CBase
-{
-public:
-	static CSoundEngine* NewL(CPodcastModel& aPodcastModel);
-	~CSoundEngine();
-	void OpenFileL(const TDesC& aFileName, TBool aPlayOnInit);
-	IMPORT_C void Play();
-	IMPORT_C void Stop(TBool aMarkPlayed=ETrue);
-	IMPORT_C TTimeIntervalMicroSeconds Position();
-	IMPORT_C void SetPosition(TUint aPos);
-	
-	IMPORT_C void Pause(TBool aOverrideState = EFalse);
-
-	IMPORT_C TSoundEngineState State();
-	IMPORT_C void AddObserver(MSoundEngineObserver* aObserver);
-	void RemoveObserver(MSoundEngineObserver* aObserver);
-			
-	const TFileName& LastFileName();
-	
-private:
-	void NotifyPlaybackStarted();
-	void NotifyPlaybackStopped();
-	void NotifyPlaybackInitialized();
-	void NotifyVolumeChanged();
-	
-protected:
-	CSoundEngine(CPodcastModel& aPodcastModel);
-	void ConstructL();	
-	
-private:    
-	CPodcastModel& iPodcastModel;
-	TSoundEngineState iState;
-	RArray<MSoundEngineObserver*> iObservers;
-	TFileName	iLastOpenedFileName;
-	TBool iPlayOnInit;
-	TTimeIntervalMicroSeconds iMaxPos;
-};
-
-#endif // SOUND_ENGINE_H
-