SPKT
Dependencies: SDFileSystem_Warning_Fixed
Dependents: DISCO-F746_WAV_PLAYER WAV
SD_PlayerSkeleton.hpp@20:84ca69a520f9, 2019-06-07 (annotated)
- Committer:
- phungductung
- Date:
- Fri Jun 07 05:39:43 2019 +0000
- Revision:
- 20:84ca69a520f9
- Parent:
- 18:6631cd0fbbcd
12
Who changed what in which revision?
User | Revision | Line number | New 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 |