class VirtualLayer

Defined at line 38 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

A layer whose output can appear on multiple displays.

Protected Members

Vector displays_
Vector layers_
uint32_t width_
uint32_t height_

Public Methods

void ~VirtualLayer ()

Defined at line 45 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

void VirtualLayer (Display * display)

Defined at line 82 of file ../../src/graphics/display/bin/display-test/virtual-layer.cc

void VirtualLayer (const fbl::Vector<Display> & displays, bool tiled)

Defined at line 88 of file ../../src/graphics/display/bin/display-test/virtual-layer.cc

bool Init (const fidl::WireSyncClient<Coordinator> & dc)

Finish initializing the layer. All Set* methods should be called before this.

void StepLayout (int32_t frame_num)

Steps the local layout state to frame_num.

bool ReadyToRender (display::ConfigStamp latest_vsync_stamp)

Returns true iff the latest image on the layer should be rendered on the display, given that

the latest vsync stamp received from the display is `latest_vsync_stamp`.

void SendLayout (const fidl::WireSyncClient<Coordinator> & dc)

Sets the current layout to the display coordinator.

void Render (int32_t frame_num)

Renders the current frame (and signals the fence if necessary).

void * GetCurrentImageBuf ()
size_t GetCurrentImageSize ()
display::LayerId id (display::DisplayId display_id)

Gets the display coordinator layer ID for usage on the given display.

Defined at line 67 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

display::ImageId image_id (display::DisplayId display_id)

Gets the ID of the image on the given display.

void set_frame_done (display::DisplayId display_id)

Defined at line 79 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

bool is_done ()

Defined at line 87 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

void clear_done ()

Defined at line 95 of file ../../src/graphics/display/bin/display-test/virtual-layer.h

Protected Methods

custom_layer_t * CreateLayer (const fidl::WireSyncClient<Coordinator> & dc)

Defined at line 105 of file ../../src/graphics/display/bin/display-test/virtual-layer.cc

void SetLayerImages (const fidl::WireSyncClient<Coordinator> & dc, bool alt_image)

Defined at line 353 of file ../../src/graphics/display/bin/display-test/virtual-layer.cc