bluetoothengine/btsac/btrcc/src/btrccplayerstarter.cpp
branchRCL_3
changeset 11 a42ed326b458
parent 0 f63038272f30
--- a/bluetoothengine/btsac/btrcc/src/btrccplayerstarter.cpp	Fri Mar 12 15:43:23 2010 +0200
+++ b/bluetoothengine/btsac/btrcc/src/btrccplayerstarter.cpp	Mon Mar 15 12:41:15 2010 +0200
@@ -33,6 +33,7 @@
 _LIT(KMpxPlayerExeName, "mpx.exe");
 
 _LIT(KMpxPlayerSearchPatternBySID, "*102072c3*");
+_LIT(KVideoPlayerSearchPatternBySID, "*200159B2*");
 
 static const TInt KPlayCmdToPlayerDelay = 6000000; // value will be tuned later 
 
@@ -243,7 +244,7 @@
         {
         return;
         }
-    if (!IsMusicPlayerRunning())
+    if (!IsMusicPlayerRunning() && !IsVideoPlayerRunning())
          {
          TRAPD(err, LaunchMusicPlayerL());
          // Send the response of play command to remote device
@@ -269,6 +270,22 @@
     return running;
     }
 
+TBool CPlayerStarter::IsVideoPlayerRunning()
+    {
+    TRACE_FUNC
+    // Video player is running if we can find a thread whose name contains 
+    // Video Player's SID.
+    TFindThread findt(KVideoPlayerSearchPatternBySID);
+    TFullName result;
+    TBool running(EFalse);
+    if (!findt.Next(result))
+        {
+        TRACE_INFO((_L("Thread '%S'is found"), &result));
+        running = ETrue;
+        }
+    return running;
+    }
+
 void CPlayerStarter::LaunchMusicPlayerL()
     {
     RApaLsSession ls;