Update XtcParser.h

This commit is contained in:
icannotttt 2026-01-29 23:56:20 +08:00 committed by GitHub
parent 9d0a5957e2
commit 9b4410cbc8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -61,20 +61,20 @@ class XtcParser {
/** /**
* @brief * @brief
* @return XtcError OK=PAGE_OUT_OF_RANGE== * @return XtcError Loading status: OK = success, PAGE_OUT_OF_RANGE = no more pages to load, others = loading failed.
*/ */
XtcError loadNextPageBatch(); XtcError loadNextPageBatch();
/** /**
* @brief * @brief Get the maximum page number that has been loaded currently.
* @return uint16_t * @return uint16_t The maximum valid page number loaded currently.
*/ */
uint16_t getLoadedMaxPage() const; uint16_t getLoadedMaxPage() const;
/** /**
* @brief * @brief Get the number of pages loaded dynamically each time (batch size).
* @return uint16_t 10 * @return uint16_t Page batch size, default is 10.
*/ */
uint16_t getPageBatchSize() const; uint16_t getPageBatchSize() const;
@ -84,22 +84,21 @@ uint32_t getChapterstartpage(int chapterIndex) {
return ChapterList[i].startPage; return ChapterList[i].startPage;
} }
} }
return 0; // 无此章节返回0 return 0; // Return 0 if the chapter does not exist.
} }
std::string getChapterTitleByIndex(int chapterIndex) { std::string getChapterTitleByIndex(int chapterIndex) {
Serial.printf("[%lu] [XTC] 已进入getChapterTitleByIndexchapterActualCount=%d\n", millis(),chapterActualCount); Serial.printf("[%lu] [XTC] Entered getChapterTitleByIndexchapterActualCount=%d\n", millis(),chapterActualCount);
for(int i = 0; i < 25; i++) { for(int i = 0; i < 25; i++) {
if(ChapterList[i].chapterIndex == chapterIndex) { if(ChapterList[i].chapterIndex == chapterIndex) {
return std::string(ChapterList[i].shortTitle); return std::string(ChapterList[i].shortTitle);
Serial.printf("[%lu] [XTC] getChapterTitleByIndex里第%d章名字为:%s %u\n", millis(), i, ChapterList[i].shortTitle); Serial.printf("[%lu] [XTC] In getChapterTitleByIndex, the title of chapter %d is: %s %u\n", millis(), i, ChapterList[i].shortTitle);
} }
} }
return ""; // 无此章节返回空字符串 return ""; // Return empty string if the chapter does not exist.
} }
/** /**
* Streaming page load * Streaming page load
* Memory-efficient method that reads page data in chunks. * Memory-efficient method that reads page data in chunks.
@ -152,8 +151,8 @@ std::string getChapterTitleByIndex(int chapterIndex) {
XtcError readTitle(); XtcError readTitle();
XtcError readAuthor(); XtcError readAuthor();
XtcError readChapters(); XtcError readChapters();
uint16_t m_loadBatchSize = 10; // 每次加载的页数(核心配置,可改) uint16_t m_loadBatchSize = 10; // pages for once load
uint16_t m_loadedMaxPage = 0; // 记录当前加载到的最大页码 uint16_t m_loadedMaxPage = 0; // Record the maximum page currently loaded
}; };
} // namespace xtc } // namespace xtc