OSDN Git Service

停止時でも再生位置を移動できるようにした。
authorSFPGMR <sfpg@git.sourceforge.jp>
Mon, 3 Oct 2011 20:59:03 +0000 (05:59 +0900)
committerSFPGMR <sfpg@git.sourceforge.jp>
Mon, 3 Oct 2011 20:59:03 +0000 (05:59 +0900)
async/application.cpp
async/application.h

index 1376a97..c2d0016 100644 (file)
@@ -242,10 +242,13 @@ namespace sf {
         read_index_ = 0;
         change_status(status_backup_);
         break;
+      case player_prep_stop:
+        break;
       case player_stop:
         reader_->reset_data_position();
         ringbuffer_.reset();
         output_counter_ = 0;
+        change_status(player_ready);
         break;
       }
       Sleep(1);
@@ -322,8 +325,11 @@ loop_end:
         break;
       case player_seek:
         break;
-      case player_stop:
+      case player_prep_stop:
         wasapi_->stop();
+        change_status(player_stop);
+        break;
+      case player_stop:
         break;
       }
       Sleep(0);
@@ -380,7 +386,7 @@ loop_end:
 
   void application::stop()
   {
-    change_status(player_stop);
+    change_status(player_prep_stop);
     window_->stop();
   }
 
index f6e99e6..f3067a1 100644 (file)
@@ -54,6 +54,7 @@ public:
   enum player_status 
   {
     player_ready,
+    player_prep_stop,
     player_stop,
     player_play,
     player_end,