--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/musicplayer_plat/mpx_music_player_app_api/inc/mpxtlshelper.h Thu Dec 17 08:45:05 2009 +0200
@@ -0,0 +1,180 @@
+/*
+* Copyright (c) 2006 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: MPX TLS helper implementation
+*
+*/
+
+
+
+#ifndef C_MPXTLSHELPER_H
+#define C_MPXTLSHELPER_H
+
+
+// INCLUDES
+#include <e32base.h>
+#include <mpxconstants.h>
+
+
+// DATA TYPES
+
+/**
+ * Structure used to store information in TLS.
+ */
+NONSHARABLE_STRUCT( TMPXTlsStruct )
+ {
+ /**
+ * Host application UID. Used in embedded mode.
+ */
+ TUid iHostUid;
+
+ /**
+ * Flag to indicate save is allowed. Used in embedded mode.
+ */
+ TBool iNeedSave;
+
+ /**
+ * Flag to indicate move is allowed. Used in embedded mode.
+ */
+ TBool iAllowMove;
+
+ /**
+ * Player init mode. Used in embedded mode.
+ */
+ TMPXLaunchMode iLaunchMode;
+
+ /**
+ * Usage count.
+ */
+ TInt useCount;
+
+ /**
+ * File Name of the saved clip
+ */
+ TFileName iFilePath;
+ };
+
+
+// CLASS DECLARATION
+
+/**
+ * MPX TLS Helper.
+ *
+ * @lib mpxcommonui.lib
+ * @since S60 v3.2.3
+ */
+NONSHARABLE_CLASS( MPXTlsHelper )
+ {
+public:
+
+ /**
+ * Initialize TLS for storing application information.
+ *
+ * @since S60 v3.2.3
+ */
+ IMPORT_C static void InitializeL();
+
+ /**
+ * Uninitialize TLS data storage. Must be called
+ * before exiting application to unload resources.
+ *
+ * @since S60 v3.2.3
+ */
+ IMPORT_C static void Uninitialize();
+
+ /**
+ * Store host application UID to TLS.
+ *
+ * @since S60 v3.2.3
+ * @param aUid Host application UIDs
+ */
+ IMPORT_C static void SetHostUidL( const TUid& aUid );
+
+ /**
+ * Fetch host application UID from TLS.
+ *
+ * @since S60 v3.2.3
+ * @return Host application UID if application is in embedded mode
+ */
+ IMPORT_C static TUid HostUid();
+
+ /**
+ * Set 'need save' flag. If the flag is set,
+ * user is asked to save the track when exiting embedded mode.
+ *
+ * @since S60 v3.2.3
+ * @param aNeedSave ETrue if save query should be shown on exit
+ */
+ IMPORT_C static void SetNeedSave( TBool aNeedSave );
+
+ /**
+ * Get 'need save' flag. If the flag is set,
+ * user is asked to save the track when exiting embedded mode.
+ *
+ * @since S60 v3.2.3
+ * @return ETrue If save query should be shown on exit
+ */
+ IMPORT_C static TBool NeedSave();
+
+ /**
+ * Sets Allow Move flag.
+ *
+ * @since S60 v3.2.3
+ * @param aAllowMove ETrue if the clip should be moved instead of copy
+ */
+ IMPORT_C static void SetAllowMove( TBool aAllowMove );
+
+ /**
+ * Gets Allow Move flag.
+ *
+ * @since S60 v3.2.3
+ * @return ETrue if the clip should be moved instead of copy
+ */
+ IMPORT_C static TBool AllowMove();
+
+ /**
+ * Set launch mode.
+ *
+ * @since S60 v3.2.3
+ * @param aMode Launch mode in embedded mode, see TMPXLaunchMode
+ */
+ IMPORT_C static void SetLaunchModeL( TMPXLaunchMode aMode );
+
+ /**
+ * Get launch mode.
+ *
+ * @since S60 v3.2.3
+ * @return Launch mode in embedded mode, see TMPXLaunchMode
+ */
+ IMPORT_C static TMPXLaunchMode LaunchMode();
+
+ /**
+ * Get the full path of saved file name.
+ *
+ * @since S60 v3.2.3
+ * @return path to saved clip
+ */
+ IMPORT_C static TFileName FilePath();
+
+ /**
+ * Set the full path of saved file name.
+ *
+ * @since S60 v3.2.3
+ * @param aFilePath
+ */
+ IMPORT_C static void SetFilePath( const TDesC& aFilePath );
+ };
+
+#endif // C_MPXTLSHELPER_H
+
+// End of File