#ifndef __JABYENGINE_CD_FILE_PROCESSOR_HPP__ #define __JABYENGINE_CD_FILE_PROCESSOR_HPP__ #include "../cd_file_types.hpp" #include "file_processor.hpp" namespace CDFileProcessor { class State { private: FileProcessor::State file_processor_state; const uint32_t* data_adr; public: State() = default; void setup(uint16_t lba, uint16_t size, const CDFile::Payload& payload); bool process(); }; template static void load_from_cd(const OverlayLBA* overlay_lbas, const CDFile (&cd_files)[Size]) { State state; for(const auto& file : cd_files) { const auto& lba_info = overlay_lbas[file.rel_lba_idx]; state.setup(lba_info.lba, lba_info.size, file.payload); //while(state.process());??? } } } // This will be used as the file processor but will work on cd types // Will probably use file_processor // Will also setup the circular buffer for the CD code #endif //!__JABYENGINE_CD_FILE_PROCESSOR_HPP__