38 double GetHint(
double time_in_seconds);
46 std::shared_ptr<const CueEvent>
GetNext(
double hint_in_seconds);
50 std::shared_ptr<const CueEvent>
PromoteAt(
double time_in_seconds);
55 bool HasMore(
double hint_in_seconds)
const;
63 std::shared_ptr<const CueEvent> PromoteAtNoLocking(
double time_in_seconds);
66 absl::CondVar sync_condition_ ABSL_GUARDED_BY(mutex_);
67 size_t thread_count_ = 0;
68 size_t waiting_thread_count_ = 0;
69 bool cancelled_ =
false;
71 std::map<double, std::shared_ptr<CueEvent>> unpromoted_;
72 std::map<double, std::shared_ptr<CueEvent>> promoted_;