SPKT

Dependencies:   SDFileSystem_Warning_Fixed

Committer:
phungductung
Date:
Fri Jun 07 05:39:43 2019 +0000
Revision:
20:84ca69a520f9
Parent:
18:6631cd0fbbcd
12

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:d310bb78455d 1 //--------------------------------------------------------------
MikamiUitOpen 0:d310bb78455d 2
MikamiUitOpen 0:d310bb78455d 3 #ifndef F746_SD_PLAYER_SKELETON_HPP
MikamiUitOpen 0:d310bb78455d 4 #define F746_SD_PLAYER_SKELETON_HPP
MikamiUitOpen 0:d310bb78455d 5
MikamiUitOpen 0:d310bb78455d 6 #include "SAI_InOut.hpp"
MikamiUitOpen 1:c7968701f7b3 7 #include "F746_GUI.hpp"
MikamiUitOpen 0:d310bb78455d 8 #include "FileSelectorWav.hpp"
MikamiUitOpen 0:d310bb78455d 9 #include "SD_WavReader.hpp"
MikamiUitOpen 0:d310bb78455d 10
MikamiUitOpen 0:d310bb78455d 11 using namespace Mikami;
MikamiUitOpen 0:d310bb78455d 12
MikamiUitOpen 0:d310bb78455d 13 namespace Mikami
MikamiUitOpen 0:d310bb78455d 14 {
MikamiUitOpen 0:d310bb78455d 15 class SD_PlayerSkeleton
MikamiUitOpen 0:d310bb78455d 16 {
MikamiUitOpen 0:d310bb78455d 17 public:
phungductung 18:6631cd0fbbcd 18 // Đặt resetButton thành true nếu sử dụng nút reset
MikamiUitOpen 16:299cc1052baa 19 SD_PlayerSkeleton(string str, bool resetButton = false);
MikamiUitOpen 1:c7968701f7b3 20 virtual ~SD_PlayerSkeleton() { if (reset_ != NULL) delete reset_; }
phungductung 18:6631cd0fbbcd 21 // thực thi xử lý trình phát SD
MikamiUitOpen 0:d310bb78455d 22 void Execute();
MikamiUitOpen 0:d310bb78455d 23
MikamiUitOpen 0:d310bb78455d 24 protected:
phungductung 18:6631cd0fbbcd 25
MikamiUitOpen 0:d310bb78455d 26 static const uint16_t BG_LEFT_ = 414;
MikamiUitOpen 0:d310bb78455d 27 static const uint16_t BG_WIDTH_ = 66;
MikamiUitOpen 0:d310bb78455d 28 static const uint16_t BG_HEIGHT_ = 36;
MikamiUitOpen 0:d310bb78455d 29
phungductung 18:6631cd0fbbcd 30 const int32_t BUFF_SIZE_; // Kích thước của bộ đệm
phungductung 18:6631cd0fbbcd 31 Array<int16_t> sn_; // bộ đệm
MikamiUitOpen 0:d310bb78455d 32
MikamiUitOpen 0:d310bb78455d 33 SaiIO mySai_;
phungductung 18:6631cd0fbbcd 34 SD_WavReader sdReader_; // Đối tượng đọc thẻ SD
MikamiUitOpen 0:d310bb78455d 35
phungductung 18:6631cd0fbbcd 36 // Lấy tên tệp đã chọn
MikamiUitOpen 0:d310bb78455d 37 string GetFileName() { return fileName_; }
phungductung 18:6631cd0fbbcd 38 // Nhận tên tệp đã chọn mà không có phần mở rộng
MikamiUitOpen 4:d730d024ac32 39 string GetFileNameNoExt();
MikamiUitOpen 0:d310bb78455d 40
MikamiUitOpen 0:d310bb78455d 41 private:
phungductung 18:6631cd0fbbcd 42 string fileName_; // Tên tệp đã chọn
phungductung 18:6631cd0fbbcd 43 Label title_; // Tiêu đề hiển thị ở trên cùng
MikamiUitOpen 0:d310bb78455d 44 FileSelector selector_;
MikamiUitOpen 0:d310bb78455d 45 ButtonGroup menu_;
phungductung 18:6631cd0fbbcd 46 ResetButton *reset_; // Con trỏ cho nut Reset
MikamiUitOpen 0:d310bb78455d 47
phungductung 18:6631cd0fbbcd 48 // Mở tệp thẻ SD
MikamiUitOpen 0:d310bb78455d 49 int32_t SD_Open();
phungductung 18:6631cd0fbbcd 50 // Chọn tệp
MikamiUitOpen 0:d310bb78455d 51 void SelectFile();
phungductung 18:6631cd0fbbcd 52 // Xử lý khi bảng điều khiển được vận hành
MikamiUitOpen 6:6fe2b62f259d 53 void DoIfHandled();
phungductung 18:6631cd0fbbcd 54 // Đợi trong khi thực hiện Do IfHandled () cho đến khi một trong các nút menu được chạm
MikamiUitOpen 6:6fe2b62f259d 55 int WaitTouched();
MikamiUitOpen 0:d310bb78455d 56
phungductung 18:6631cd0fbbcd 57 // Không sử dụng hàm tạo sao chép và toán tử gán đối tượng
MikamiUitOpen 2:511479736d6e 58 SD_PlayerSkeleton(const SD_PlayerSkeleton&);
MikamiUitOpen 2:511479736d6e 59 SD_PlayerSkeleton& operator=(const SD_PlayerSkeleton&);
MikamiUitOpen 2:511479736d6e 60
MikamiUitOpen 0:d310bb78455d 61 virtual void SignalProcessing() = 0;
phungductung 18:6631cd0fbbcd 62 // Thay đổi tham số xử lý tín hiệu, v.v.
MikamiUitOpen 0:d310bb78455d 63 virtual void Modefy() {}
phungductung 18:6631cd0fbbcd 64 // Hiển thị khi phát một bài hát
MikamiUitOpen 0:d310bb78455d 65 virtual void Display() {}
phungductung 18:6631cd0fbbcd 66 // *Xóa quá trình cần thiết để xử lý tín hiệu*//
MikamiUitOpen 0:d310bb78455d 67 virtual void Clear() {}
MikamiUitOpen 0:d310bb78455d 68 };
MikamiUitOpen 0:d310bb78455d 69 }
MikamiUitOpen 0:d310bb78455d 70 #endif // F746_SD_PLAYER_SKELETON_HPP