camerauis/cameraapp/generic/inc/audioplayer/camtoneplayerwrapper.h
changeset 0 1ddebce53859
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerauis/cameraapp/generic/inc/audioplayer/camtoneplayerwrapper.h	Thu Jan 07 16:18:56 2010 +0200
@@ -0,0 +1,116 @@
+/*
+* Copyright (c) 2007 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:  Wrapper for Tone Player Utility
+*
+*/
+
+
+#ifndef CAM_TONEPLAYERWRAPPER_H
+#define CAM_TONEPLAYERWRAPPER_H
+
+// ===========================================================================
+// Includes
+#include <mdaaudiotoneplayer.h>   // for MMdaAudioToneObserver
+
+
+// ===========================================================================
+// Forward declarations
+class MCamPlayerObserver;
+
+// ===========================================================================
+// Class definitions
+
+/**
+* Tone Player Wrapper class
+*
+*/
+class CCamTonePlayerWrapper : public CBase,
+                              public MMdaAudioToneObserver
+  {
+  // =======================================================
+  // methods
+
+  // -------------------------------------------------------
+  // constructors and destructor
+  public: 
+
+    static CCamTonePlayerWrapper* NewL( MCamPlayerObserver& aObserver );
+    virtual ~CCamTonePlayerWrapper();
+
+  // -------------------------------------------------------
+  // from MMdaAudioToneObserver
+  public: 
+  
+    virtual void MatoPrepareComplete( TInt aStatus );
+    virtual void MatoPlayComplete   ( TInt aStatus );
+  
+  // -------------------------------------------------------
+  // new public
+  public: 
+
+    void PlayTone( TInt    aToneInHz, 
+                   TInt    aLengthInUs, 
+                   TReal32 aVolumeInPercent,
+                   TBool   aCallback );
+
+    void CancelPlay();
+
+  // -------------------------------------------------------
+  // new private
+  private: 
+
+    void InitL();
+    void NotifyPlayComplete( TInt aStatus );
+
+  // -------------------------------------------------------
+  // private constructors
+  private: 
+
+    void ConstructL();
+    CCamTonePlayerWrapper( MCamPlayerObserver& aObserver );
+
+  // =======================================================
+  // data
+  private: 
+
+    enum TCamTonePlayerWrapperState
+      {
+      EIdle         = 0,
+      EInitializing = 1,
+      EPlaying      = 2
+      };
+
+    MCamPlayerObserver&        iObserver;
+    CMdaAudioToneUtility*      iTone;
+    TCamTonePlayerWrapperState iState;
+
+    TBool                      iCallback;
+
+  // =======================================================
+  };
+
+#ifdef _DEBUG
+    static const TUint16* KCamTonePlayerWrapperStateNames[] = 
+      {
+      (const TUint16*)_S16("EIdle"),
+      (const TUint16*)_S16("EInitializing"),
+      (const TUint16*)_S16("EPlaying")
+      };
+#endif // _DEBUG
+
+
+#endif // CAM_TONEPLAYERWRAPPER_H
+
+// ===========================================================================
+// end of file