Library for Skeleton of SD card player. SD カードプレーヤのための骨組みとして使うためのライブラリ.このライブラリを登録した際のプログラム:「F746_SD_Player_Demo」

Dependencies:   SDFileSystem_Warning_Fixed

Dependents:   F746_SD_Player_Demo F746_SD_VarableFilter F746_SD_GraphicEqualizer F746_MySoundMachine ... more

Revision:
13:3df6a1f66b1c
Parent:
10:303d6435a09b
Child:
14:284093250bab
--- a/SD_PlayerSkeleton.cpp	Thu Mar 16 23:47:50 2017 +0000
+++ b/SD_PlayerSkeleton.cpp	Fri Mar 17 16:47:54 2017 +0000
@@ -1,7 +1,7 @@
 //--------------------------------------------------------------
 //  SD プレーヤー用抽象基底クラス
 //
-//  2017/01/16, Copyright (c) 2017 MIKAMI, Naoki
+//  2017/03/18, Copyright (c) 2017 MIKAMI, Naoki
 //--------------------------------------------------------------
 
 #include "SD_PlayerSkeleton.hpp"
@@ -31,14 +31,14 @@
     // SD プレーヤーの処理の実行
     void SD_PlayerSkeleton::Execute()
     {
-        bool playAfterPause = false;
+        bool playOk = false;
         int32_t loopCount;
 
         WaitTouched(0); // OPEN がタッチされるまで待つ
 
         while (true)
         {
-            if (playAfterPause)     // PAUSE 後の PLAY の場合
+            if (playOk)             // PAUSE 後の PLAY の場合
                 loopCount = SD_Open();
             else                    // PAUSE 後の PLAY ではない場合
             {
@@ -47,9 +47,6 @@
                 WaitTouched(1);     // PLAY がタッチされるまで待つ
             }
 
-            selector_.Erase(0, 0, BG_LEFT_-4, 272);
-            title_.Draw();
-
             Display();  // アプリ固有の表示処理(仮想関数)
             if (reset_ != NULL) reset_->Draw();
 
@@ -57,7 +54,7 @@
             menu_.Activate(2);      // PAUSE ボタン有効
             menu_.Activate(4);      // STOP ボタン有効
 
-            playAfterPause = false;
+            playOk = false;
             bool stopOk = false;
 
             Clear();    // アプリ固有のクリア処理(仮想関数)
@@ -79,18 +76,18 @@
                     // PLAY か RESUME か STOP がタッチされるまで待つ
                     switch (WaitTouched())
                     {
-                        case 1: playAfterPause = true;  // 最初から PLAY
+                        case 1: playOk = true;      // 最初から PLAY
                                 break;
-                        case 3: mySai_.ResumeOut();     // PAUSE 箇所から PLAY 再開
+                        case 3: mySai_.ResumeOut(); // PAUSE 箇所から PLAY 再開
                                 menu_.Activate(2);
                                 menu_.Inactivate(3);
                                 menu_.TouchedColor(1);
                                 break;
-                        case 4: stopOk = true;          // STOP
+                        case 4: stopOk = true;      // STOP
                                 break;
                     }
                 }
-                if (playAfterPause || stopOk) break;
+                if (playOk || stopOk) break;
 
                 DoIfHandled();
                 // アプリ固有の1フレーム分の信号処理(純粋仮想関数)
@@ -136,6 +133,9 @@
             if (selector_.Select(fileName_))
                 menu_.Activate(1);    // PLAY ボタン有効
         while (!menu_.Touched(1));    // PLAY ボタンがタッチされるまで繰り返す
+
+        selector_.Erase(0, 0, BG_LEFT_-4, 272);
+        title_.Draw();
     }
 
     // パネルが操作された場合の処理
@@ -153,3 +153,4 @@
         return touchNum;
     }
 }
+