檔案簡要說明

在廣論App程式中存在許多二維陣列、三維陣列來代表資料,為讓資料更具有意義,末學將這些資料以資料結構類別來封裝。LamrimReader.Core中檔名以Util結尾的檔案是程式檔案,其他為資料結構。

處理程式

 

資料結構

  • LinearIndex.java    ----    線性座標,計算機字串處理時使用。
  • PLIndex.java    ----   頁、行、字座標,人類習慣定位用。
  • Subtitle.java    ----    代表字幕的資料結構。
  • TheoryParseListener.java    ----   TheoryUtil.java 的附屬 Listener,用在解讀廣論原文時使用。
  • Dot.java    ----   代表廣論原文中的標點符號。

 

定位系統說明

人類的閱讀習慣常以頁數、行數、第幾個字等座標指引論文位置(如全球廣論),而計算機在處理字串時則是以線性的 index 在指引位置(如String.chatAt(Index)),代表頁、行、字的資料結構為PLIndex.java,代表線性座標的資料結構為LinearIndex.java,在處理這類資料時常常需要轉換座標,轉換程式為 TheoryUtil.linearToPLIndex() 與 TheoryUtil.pliToLinearIndex()。

 

 

附註:

為降低程式複雜度,未將BookMap納入Core程式中,請參閱論文字幕對應表