file_reader.hpp 749 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include <string>
  3. #include <memory>
  4. #include "sd-card-api.h"
  5. #include "filesystem-api.h"
  6. class FileReader {
  7. private:
  8. char file_buf[48];
  9. size_t file_buf_cnt = 0;
  10. SdCard_Api* sd_ex_api;
  11. FS_Api* fs_api;
  12. public:
  13. FileReader() {
  14. sd_ex_api = static_cast<SdCard_Api*>(furi_record_open("sdcard-ex"));
  15. fs_api = static_cast<FS_Api*>(furi_record_open("sdcard"));
  16. reset();
  17. }
  18. ~FileReader() {
  19. furi_record_close("sdcard");
  20. furi_record_close("sdcard-ex");
  21. }
  22. std::string getline(File* file);
  23. void reset(void) {
  24. file_buf_cnt = 0;
  25. }
  26. SdCard_Api& get_sd_api() {
  27. return *sd_ex_api;
  28. }
  29. FS_Api& get_fs_api() {
  30. return *fs_api;
  31. }
  32. };