class FlatlandPresenterImpl
Defined at line 21 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.h
Public Methods
void FlatlandPresenterImpl (async_dispatcher_t * main_dispatcher, scheduling::FrameScheduler & frame_scheduler)
The |main_dispatcher| must be the dispatcher that GFX sessions run and update on. That thread
is typically refered to as the "main thread" or "render thread".
FrameScheduler is what FlatlandPresenterImpl will use for frame scheduling calls.
Defined at line 18 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc
std::vector<zx::event> TakeReleaseFences ()
Return all release fences that were accumulated during calls to UpdateSessions(). The caller
takes responsibility for signaling these fences when it is safe for clients to reuse the
associated resources.
Defined at line 42 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc
void ScheduleUpdateForSession (zx::time requested_presentation_time, scheduling::SchedulingIdPair id_pair, bool unsquashable, std::vector<zx::event> release_fences, bool schedule_asap)
|FlatlandPresenter|
Defined at line 51 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc
std::vector<scheduling::FuturePresentationInfo> GetFuturePresentationInfos ()
|FlatlandPresenter|.
Defined at line 73 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc
void RemoveSession (scheduling::SessionId session_id, std::optional<zx::event> release_fence)
|FlatlandPresenter|
Defined at line 79 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc
void AccumulateReleaseFences (const std::unordered_map<scheduling::SessionId, scheduling::PresentId> & sessions_to_update)
Called at FrameScheduler's UpdateSessions() time.
Takes the release fences up to the corresponding PresentId for each SessionId in
|sessions_to_update| and moves them to the set of fences to be returned by the next call to
TakeReleaseFences().
This way the caller can get all fences accumulated since the last call to
TakeReleaseFences(), i.e. the complete set of fences for one frame (allowing for multiple
UpdateSessions() calls per frame).
Defined at line 22 of file ../../src/ui/scenic/lib/flatland/flatland_presenter_impl.cc