19 void record(
const std::string& lineId,
const std::string& speaker,
const std::string&
text);
23 int getHistoryCount()
const;
25 std::string getHistoryLineId(
int index)
const;
27 std::string getHistorySpeaker(
int index)
const;
29 std::string getHistoryText(
int index)
const;
32 std::string plainText(
const std::string& richText)
const;
34 int getTextActionCount(
const std::string& richText)
const;
41 void setAutoDelay(
float seconds);
45 bool updateAuto(
float dt,
bool voicePlaying);
50 bool setSkipMode(
const std::string& mode);
54 void markRead(
const std::string& lineId);
56 bool isRead(
const std::string& lineId)
const;
58 bool shouldSkip(
const std::string& lineId)
const;
67 const HistoryEntry* historyAt(
int index)
const;
69 std::vector<HistoryEntry> history_;
70 std::unordered_set<std::string> readLines_;
71 bool autoMode_ =
false;
72 float autoDelay_ = 1.5f;
73 float autoElapsed_ = 0.f;
74 std::string skipMode_ =
"off";