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
SD_PlayerSkeleton.hpp@1:c7968701f7b3, 2016-08-15 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Mon Aug 15 06:06:52 2016 +0000
- Revision:
- 1:c7968701f7b3
- Parent:
- 0:d310bb78455d
- Child:
- 2:511479736d6e
2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:d310bb78455d | 1 | //-------------------------------------------------------------- |
MikamiUitOpen | 0:d310bb78455d | 2 | // SD プレーヤー用抽象基底クラス(ヘッダ) |
MikamiUitOpen | 0:d310bb78455d | 3 | // |
MikamiUitOpen | 1:c7968701f7b3 | 4 | // 2016/08/15, Copyright (c) 2016 MIKAMI, Naoki |
MikamiUitOpen | 0:d310bb78455d | 5 | //-------------------------------------------------------------- |
MikamiUitOpen | 0:d310bb78455d | 6 | |
MikamiUitOpen | 0:d310bb78455d | 7 | #ifndef F746_SD_PLAYER_SKELETON_HPP |
MikamiUitOpen | 0:d310bb78455d | 8 | #define F746_SD_PLAYER_SKELETON_HPP |
MikamiUitOpen | 0:d310bb78455d | 9 | |
MikamiUitOpen | 0:d310bb78455d | 10 | #include "SAI_InOut.hpp" |
MikamiUitOpen | 1:c7968701f7b3 | 11 | #include "F746_GUI.hpp" |
MikamiUitOpen | 0:d310bb78455d | 12 | #include "FileSelectorWav.hpp" |
MikamiUitOpen | 0:d310bb78455d | 13 | #include "SD_WavReader.hpp" |
MikamiUitOpen | 0:d310bb78455d | 14 | |
MikamiUitOpen | 0:d310bb78455d | 15 | using namespace Mikami; |
MikamiUitOpen | 0:d310bb78455d | 16 | |
MikamiUitOpen | 0:d310bb78455d | 17 | namespace Mikami |
MikamiUitOpen | 0:d310bb78455d | 18 | { |
MikamiUitOpen | 0:d310bb78455d | 19 | class SD_PlayerSkeleton |
MikamiUitOpen | 0:d310bb78455d | 20 | { |
MikamiUitOpen | 0:d310bb78455d | 21 | public: |
MikamiUitOpen | 1:c7968701f7b3 | 22 | // リセット・ボタンを使う場合は reset を true とする |
MikamiUitOpen | 1:c7968701f7b3 | 23 | SD_PlayerSkeleton(string str, int fs, bool reset = false); |
MikamiUitOpen | 1:c7968701f7b3 | 24 | virtual ~SD_PlayerSkeleton() { if (reset_ != NULL) delete reset_; } |
MikamiUitOpen | 0:d310bb78455d | 25 | void Execute(); |
MikamiUitOpen | 0:d310bb78455d | 26 | |
MikamiUitOpen | 0:d310bb78455d | 27 | protected: |
MikamiUitOpen | 0:d310bb78455d | 28 | // ボタン用の定数 |
MikamiUitOpen | 0:d310bb78455d | 29 | static const uint16_t BG_LEFT_ = 414; |
MikamiUitOpen | 0:d310bb78455d | 30 | static const uint16_t BG_WIDTH_ = 66; |
MikamiUitOpen | 0:d310bb78455d | 31 | static const uint16_t BG_HEIGHT_ = 36; |
MikamiUitOpen | 0:d310bb78455d | 32 | |
MikamiUitOpen | 0:d310bb78455d | 33 | const int32_t FRAME_SIZE_; // フレームバッファのサイズ |
MikamiUitOpen | 0:d310bb78455d | 34 | Array<int16_t> sn_; // フレームバッファ |
MikamiUitOpen | 0:d310bb78455d | 35 | |
MikamiUitOpen | 0:d310bb78455d | 36 | SaiIO mySai_; |
MikamiUitOpen | 0:d310bb78455d | 37 | SD_WavReader sdReader_; // SD カード読み込み用オブジェクト |
MikamiUitOpen | 0:d310bb78455d | 38 | |
MikamiUitOpen | 0:d310bb78455d | 39 | string GetFileName() { return fileName_; } |
MikamiUitOpen | 0:d310bb78455d | 40 | |
MikamiUitOpen | 0:d310bb78455d | 41 | private: |
MikamiUitOpen | 0:d310bb78455d | 42 | string fileName_; // 選択されたファイル名 |
MikamiUitOpen | 0:d310bb78455d | 43 | Label title_; // 上部に表示されるタイトル |
MikamiUitOpen | 0:d310bb78455d | 44 | FileSelector selector_; |
MikamiUitOpen | 0:d310bb78455d | 45 | ButtonGroup menu_; |
MikamiUitOpen | 1:c7968701f7b3 | 46 | ResetButton *reset_; |
MikamiUitOpen | 1:c7968701f7b3 | 47 | bool resetActive_; |
MikamiUitOpen | 0:d310bb78455d | 48 | |
MikamiUitOpen | 0:d310bb78455d | 49 | // SD カードのファイルのオープン |
MikamiUitOpen | 0:d310bb78455d | 50 | int32_t SD_Open(); |
MikamiUitOpen | 0:d310bb78455d | 51 | // ファイルの選択 |
MikamiUitOpen | 0:d310bb78455d | 52 | void SelectFile(); |
MikamiUitOpen | 1:c7968701f7b3 | 53 | // パネル操作のチェック |
MikamiUitOpen | 1:c7968701f7b3 | 54 | void CheckCtrl(); |
MikamiUitOpen | 0:d310bb78455d | 55 | |
MikamiUitOpen | 0:d310bb78455d | 56 | //------------------------------------- |
MikamiUitOpen | 0:d310bb78455d | 57 | // 以下は仮想関数 |
MikamiUitOpen | 0:d310bb78455d | 58 | //------------------------------------- |
MikamiUitOpen | 0:d310bb78455d | 59 | // 1フレーム分の信号処理の実行 |
MikamiUitOpen | 0:d310bb78455d | 60 | virtual void SignalProcessing() = 0; |
MikamiUitOpen | 0:d310bb78455d | 61 | // サウンドエフェクタのパラメータ変更など |
MikamiUitOpen | 0:d310bb78455d | 62 | virtual void Modefy() {} |
MikamiUitOpen | 0:d310bb78455d | 63 | // 曲の再生中に表示する |
MikamiUitOpen | 0:d310bb78455d | 64 | virtual void Display() {} |
MikamiUitOpen | 0:d310bb78455d | 65 | // サウンドエフェクタ処理のデータ等のクリア |
MikamiUitOpen | 0:d310bb78455d | 66 | virtual void Clear() {} |
MikamiUitOpen | 0:d310bb78455d | 67 | }; |
MikamiUitOpen | 0:d310bb78455d | 68 | } |
MikamiUitOpen | 0:d310bb78455d | 69 | #endif // F746_SD_PLAYER_SKELETON_HPP |