template <>

class WireSyncClientImpl

Defined at line 3811 of file fidling/gen/sdk/fidl/fuchsia.hardware.network/fuchsia.hardware.network/cpp/fidl/fuchsia.hardware.network/cpp/wire_messaging.h

Methods to make a sync FIDL call directly on an unowned handle or a

const reference to a |::fidl::ClientEnd

<

::fuchsia_hardware_network::Port>|,

avoiding setting up a client.

Public Methods

::fidl::WireResult< ::fuchsia_hardware_network::Port::GetInfo> GetInfo ()

Obtain information about port.

- response `info` port information.

Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.

::fidl::WireResult< ::fuchsia_hardware_network::Port::GetStatus> GetStatus ()

Obtain the operating port status.

- response `status` snapshot of port's current status.

Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.

::fidl::OneWayStatus GetStatusWatcher (::fidl::ServerEnd< ::fuchsia_hardware_network::StatusWatcher> && watcher, uint32_t buffer)

Connects to a [`StatusWatcher`] to observe port status changes.

+ request `watcher` handle to the status watcher.

+ request `buffer` the number of status changes that the client requests

to be stored by `StatusWatcher`. Values are capped at

[`MAX_STATUS_BUFFER`]. A value of 0 or 1 causes the `StatusWatcher` to

not keep any buffers on status changed. Clients that need to observe all

changes to status (as opposed to only the current state) are encouraged

to set a buffer value larger than 1, so that all edges can be observed.

If `StatusWatcher`'s internal queue is filled and new status changes

occur, the oldest samples will be dropped to make room for new ones.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::OneWayStatus GetMac (::fidl::ServerEnd< ::fuchsia_hardware_network::MacAddressing> && mac)

Connects to a [`MacAddressing`] associated with the port.

+ request `mac` mac handle. Closed with `ZX_ERR_NOT_SUPPORTED` if this

port does not support mac addressing.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::OneWayStatus GetDevice (::fidl::ServerEnd< ::fuchsia_hardware_network::Device> && device)

Connects to the [`Device`] this port belongs to.

+ request `device` grants access to the parent device.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::OneWayStatus Clone (::fidl::ServerEnd< ::fuchsia_hardware_network::Port> && port)

Establishes a new connection to this port.

+ request `port` the server end for the new connection.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_hardware_network::Port::GetCounters> GetCounters ()

Retrieves a snapshot of traffic counters on this port.

Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.

::fidl::OneWayStatus GetDiagnostics (::fidl::ServerEnd< ::fuchsia_hardware_network::Diagnostics> && diagnostics)

Grants access to [`Diagnostics`] for this port.

+ request `diagnostics` grants access to diagnostics information.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.

::fidl::WireResult< ::fuchsia_hardware_network::Port::GetIdentity> GetIdentity ()

Retrieves a unique event handle that is always associated only with

this port.

This event may be used to uniquely identify a specific port instance

across different APIs in the system.

Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.