class Client

Defined at line 50 of file ../../src/graphics/display/drivers/coordinator/client.h

Manages the state associated with a display coordinator client connection.

This class is not thread-safe. The constructor, destructor and all methods

must run on the coordinator driver dispatcher.

Public Members

static const uint32_t kMaxImageHandles

Public Methods

void Client (const Client & )

Defined at line 61 of file ../../src/graphics/display/drivers/coordinator/client.h

Client & operator= (const Client & )

Defined at line 62 of file ../../src/graphics/display/drivers/coordinator/client.h

inspect::Node & node ()

Defined at line 74 of file ../../src/graphics/display/drivers/coordinator/client.h

std::list<ConfigStampPair> & pending_displayed_config_stamps ()

Defined at line 80 of file ../../src/graphics/display/drivers/coordinator/client.h

ClientId id ()

Defined at line 120 of file ../../src/graphics/display/drivers/coordinator/client.h

display::ClientPriority priority ()

Defined at line 121 of file ../../src/graphics/display/drivers/coordinator/client.h

uint8_t GetMinimumRgb ()

Defined at line 124 of file ../../src/graphics/display/drivers/coordinator/client.h

void Client (Controller * controller, display::ClientPriority priority, ClientId client_id, fidl::ServerEnd<fuchsia_hardware_display::Coordinator> coordinator_server_end, fidl::ClientEnd<fuchsia_hardware_display::CoordinatorListener> coordinator_listener_client_end)

`controller` must outlive the newly created client.

`priority`, `client_id`, `coordinator_server_end` and

`coordinator_listener_client_end` must be valid.

Defined at line 1612 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ~Client ()

Defined at line 1631 of file ../../src/graphics/display/drivers/coordinator/client.cc

void AttachInspectNode (inspect::Node client_node)

Must be called exactly once.

Defined at line 1707 of file ../../src/graphics/display/drivers/coordinator/client.cc

void OnDisplayVsync (display::DisplayId display_id, zx_instant_mono_t timestamp, display::DriverConfigStamp driver_config_stamp)

Defined at line 1656 of file ../../src/graphics/display/drivers/coordinator/client.cc

void OnCaptureComplete ()

Defined at line 1647 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SubmitSpecialConfigs ()

Defined at line 1638 of file ../../src/graphics/display/drivers/coordinator/client.cc

void UpdateConfigStampMapping (ConfigStampPair stamps)

Defined at line 1696 of file ../../src/graphics/display/drivers/coordinator/client.cc

void OnDisplaysChanged (std::span<const display::DisplayId> added_display_ids, std::span<const display::DisplayId> removed_display_ids)

Defined at line 1279 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetOwnership (bool is_owner)

Defined at line 1208 of file ../../src/graphics/display/drivers/coordinator/client.cc

void NotifyDisplayChanges (std::span<const fuchsia_hardware_display::wire::Info> added_display_infos, std::span<const fuchsia_hardware_display_types::wire::DisplayId> removed_display_ids)

Defined at line 1220 of file ../../src/graphics/display/drivers/coordinator/client.cc

void NotifyOwnershipChange (bool client_has_ownership)

Defined at line 1249 of file ../../src/graphics/display/drivers/coordinator/client.cc

void NotifyVsync (display::DisplayId display_id, zx::time_monotonic timestamp, display::ConfigStamp config_stamp, display::VsyncAckCookie vsync_ack_cookie)

Defined at line 1263 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SubmitLastCommittedConfig ()

Submits the latest committed configuration.

Called when the client gains ownership of the displays.

This method is a no-op if the Client instance has not committed any

configuration.

Defined at line 1130 of file ../../src/graphics/display/drivers/coordinator/client.cc

void OnFenceSignaled (Fence & fence)

`FenceListener`:

Defined at line 1425 of file ../../src/graphics/display/drivers/coordinator/client.cc

void CloseFidlConnection (zx_status_t epitaph)

Closes the FIDL connection.

Called when the Coordinator is shutting down. Under normal operation, the Coordinator

services a client until it closes the FIDL connection.

Defined at line 1452 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ReleaseResources ()

Releases resources allocated for this client.

Must be called before the Client instance is destroyed.

Defined at line 1477 of file ../../src/graphics/display/drivers/coordinator/client.cc

void CaptureCompleted ()

Defined at line 1435 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ImportImage (ImportImageRequestView request, ImportImageCompleter::Sync & completer)

fidl::WireServer

<fuchsia

_hardware_display::Coordinator> overrides:

Defined at line 98 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ReleaseImage (ReleaseImageRequestView request, ReleaseImageCompleter::Sync & completer)

Defined at line 182 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ImportEvent (ImportEventRequestView request, ImportEventCompleter::Sync & completer)

Defined at line 211 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ReleaseEvent (ReleaseEventRequestView request, ReleaseEventCompleter::Sync & completer)

Defined at line 304 of file ../../src/graphics/display/drivers/coordinator/client.cc

void CreateLayer (CreateLayerRequestView request, CreateLayerCompleter::Sync & completer)

Defined at line 313 of file ../../src/graphics/display/drivers/coordinator/client.cc

void DestroyLayer (DestroyLayerRequestView request, DestroyLayerCompleter::Sync & completer)

Defined at line 343 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetDisplayMode (SetDisplayModeRequestView request, SetDisplayModeCompleter::Sync & completer)

Defined at line 383 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetDisplayColorConversion (SetDisplayColorConversionRequestView request, SetDisplayColorConversionCompleter::Sync & completer)

Defined at line 437 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetDisplayLayers (SetDisplayLayersRequestView request, SetDisplayLayersCompleter::Sync & completer)

Defined at line 486 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetLayerPrimaryConfig (SetLayerPrimaryConfigRequestView request, SetLayerPrimaryConfigCompleter::Sync & completer)

Defined at line 543 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetLayerPrimaryPosition (SetLayerPrimaryPositionRequestView request, SetLayerPrimaryPositionCompleter::Sync & completer)

Defined at line 572 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetLayerPrimaryAlpha (SetLayerPrimaryAlphaRequestView request, SetLayerPrimaryAlphaCompleter::Sync & completer)

Defined at line 617 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetLayerColorConfig (SetLayerColorConfigRequestView request, SetLayerColorConfigCompleter::Sync & completer)

Defined at line 652 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetLayerImage2 (SetLayerImage2RequestView request, SetLayerImage2Completer::Sync & completer)

Defined at line 689 of file ../../src/graphics/display/drivers/coordinator/client.cc

void CheckConfig (CheckConfigCompleter::Sync & completer)

Defined at line 742 of file ../../src/graphics/display/drivers/coordinator/client.cc

void DiscardConfig (DiscardConfigCompleter::Sync & completer)

Defined at line 749 of file ../../src/graphics/display/drivers/coordinator/client.cc

void CommitConfig (CommitConfigRequestView request, CommitConfigCompleter::Sync & completer)

Defined at line 751 of file ../../src/graphics/display/drivers/coordinator/client.cc

void GetLatestCommittedConfigStamp (GetLatestCommittedConfigStampCompleter::Sync & completer)

Defined at line 863 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetVirtconMode (SetVirtconModeRequestView request, SetVirtconModeCompleter::Sync & completer)

Defined at line 869 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ImportBufferCollection (ImportBufferCollectionRequestView request, ImportBufferCollectionCompleter::Sync & completer)

Defined at line 229 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetBufferCollectionConstraints (SetBufferCollectionConstraintsRequestView request, SetBufferCollectionConstraintsCompleter::Sync & completer)

Defined at line 278 of file ../../src/graphics/display/drivers/coordinator/client.cc

void ReleaseBufferCollection (ReleaseBufferCollectionRequestView request, ReleaseBufferCollectionCompleter::Sync & completer)

Defined at line 257 of file ../../src/graphics/display/drivers/coordinator/client.cc

void IsCaptureSupported (IsCaptureSupportedCompleter::Sync & completer)

Defined at line 882 of file ../../src/graphics/display/drivers/coordinator/client.cc

void StartCapture (StartCaptureRequestView request, StartCaptureCompleter::Sync & completer)

Defined at line 931 of file ../../src/graphics/display/drivers/coordinator/client.cc

void AcknowledgeVsync (AcknowledgeVsyncRequestView request, AcknowledgeVsyncCompleter::Sync & completer)

Defined at line 1596 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetMinimumRgb (SetMinimumRgbRequestView request, SetMinimumRgbCompleter::Sync & completer)

Defined at line 977 of file ../../src/graphics/display/drivers/coordinator/client.cc

void SetDisplayPowerMode (SetDisplayPowerModeRequestView request, SetDisplayPowerModeCompleter::Sync & completer)

Defined at line 994 of file ../../src/graphics/display/drivers/coordinator/client.cc

Records