mmfenh/advancedaudiocontroller/audiotonecontrollerplugin/src/mmfaudiotonecontroller.h
branchRCL_3
changeset 19 095bea5f582e
parent 0 71ca22bcf22a
child 20 0ac9a5310753
--- a/mmfenh/advancedaudiocontroller/audiotonecontrollerplugin/src/mmfaudiotonecontroller.h	Thu Aug 19 10:26:11 2010 +0300
+++ b/mmfenh/advancedaudiocontroller/audiotonecontrollerplugin/src/mmfaudiotonecontroller.h	Tue Aug 31 15:43:02 2010 +0300
@@ -28,6 +28,7 @@
 
 #include <mmf/common/mmfstandardcustomcommands.h>
 #include <mmf/server/sounddevice.h>
+#include <mmf/common/mmfdrmcustomcommands.h>
 
 
 /** 
@@ -46,12 +47,14 @@
 The public API for clients of the MMFAudioToneController
 @internalTechnology
 */
-
+class CConfigurationComponentsFactory;
+class CAudioOutputControlUtility; 
 class CMMFAudioToneController : public CMMFController, 
 							public MMMFAudioPlayDeviceCustomCommandImplementor,
 							public MMMFAudioPlayControllerCustomCommandImplementor,
 							public MDevSoundObserver,
-							public MMMFAudioPlayControllerSetRepeatsCustomCommandImplementor
+							public MMMFAudioPlayControllerSetRepeatsCustomCommandImplementor,
+							public MMMFDRMCustomCommandImplementor 
 	{
 public:
 	static CMMFController* NewL();
@@ -108,6 +111,12 @@
 	
 	//from MMMFAudioPlayControllerSetRepeatsCustomCommandImplementor
 	virtual TInt MapcSetRepeats(TInt aRepeatNumberOfTimes, const TTimeIntervalMicroSeconds& aTrailingSilence);
+	
+	// From MMMFDRMCustomCommandImplementor
+    virtual TInt MdcExecuteIntent(ContentAccess::TIntent aIntent);
+    virtual TInt MdcEvaluateIntent(ContentAccess::TIntent aIntent);
+    virtual TInt MdcDisableAutomaticIntent(TBool aDisableAutoIntent);
+    virtual TInt MdcSetAgentProperty(ContentAccess::TAgentProperty aProperty, TInt aValue);
 
 
 public:
@@ -140,7 +149,8 @@
 	TBool            IsValidStateTransition( TControllerState aState ) const;
 	TBool            Invariant() const;
 	TBool            IsValidState( TControllerState aState ) const ;
-	TBool            ResetPostCondition() const;
+	TBool            ResetPostCondition() const;	
+	
 
 	void             CalculateLeftRightBalance( TInt& aLeft, TInt& aRight, TInt aBalance ) const;
 	void			 CalculateBalance( TInt& aBalance, TInt aLeft, TInt aRight ) const;
@@ -158,6 +168,10 @@
 /** the Dev Sound that will be used to play the tone*/
 	CMMFDevSound*            iMMFDevSound;
 
+    // for drm CR/Error 417-45879/ESLM-82JAHL
+	CConfigurationComponentsFactory*   iFactory;
+	CAudioOutputControlUtility*        iAudioOutputControlUtility; // used for audio routing for DRM files
+	// end drm cr
 /** Current state of the controller, see TControllerState*/
 	TControllerState         iState;
 
@@ -172,6 +186,10 @@
 
 /** Used to store message */	
 	TMMFMessage*			 iMessage;
+
+	TBool                   iDisableAutoIntent;
+	
+	MDataSink*              iDataSink;
 	};