template <>

class NaturalSyncClientImpl

Defined at line 1418 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/natural_messaging.h

Public Methods

::fidl::Result< ::fuchsia_media::ProfileProvider::RegisterHandlerWithCapacity> RegisterHandlerWithCapacity (::fidl::Request< ::fuchsia_media::ProfileProvider::RegisterHandlerWithCapacity> request)

Register a thread as a media thread. This notifies the media subsystem that this thread

should have an elevated scheduling profile applied to it in order to meet audio or video

deadlines.

`name` is the name of a system scheduling role to apply to the thread given by

`thread_handle` -- different products may customize the underlying scheduling strategy based

on the requested role. `period` is the suggested interval to be scheduled at. `period` may

be zero if the thread has no preferred scheduling interval. `capacity` is the proportion of

the scheduling interval the thread needs to be running to achieve good performance or to

meet the scheduling deadline defined by `period`. `capacity` may be zero if the workload has

no firm runtime requirements. Note that `capacity` should be a good faith estimate based on

the worst case runtime the thread requires each period. Excessive capacity requests may

be rejected or result in scaling back the performance of other threads to fit resource

limits.

Capacity, max runtime, and period have the following relationship:

capacity = max runtime / period

Where:

0

<

= max runtime

<

= period and 0

<

= capacity

<

= 1

For heterogeneous systems, the capacity should be planned / measured against the highest

performance processor(s) in the system. The system will automatically adjust the effective

capacity to account for slower processors and operating points and will avoid processors and

operating points that are too slow to meet the requested scheduling parameters (provided

they are reasonable).

Returns the period and capacity (actually maximum runtime) that was applied, either of which

may be zero to indicate not applicable.

::fidl::Result< ::fuchsia_media::ProfileProvider::UnregisterHandler> UnregisterHandler (::fidl::Request< ::fuchsia_media::ProfileProvider::UnregisterHandler> request)

Reset a thread's scheduling profile to the default.

::fidl::Result< ::fuchsia_media::ProfileProvider::RegisterMemoryRange> RegisterMemoryRange (::fidl::Request< ::fuchsia_media::ProfileProvider::RegisterMemoryRange> request)

Register a memory range as being used for media processing. This notifies the media

subsystem that this memory should have an elevated memory profile applied to it in order to

meet audio or video deadlines.

`name` is the name of a system memory role to apply to the memory given by

`vmar_handle` -- different products may customize the underlying memory strategy based

on the requested role.

::fidl::Result< ::fuchsia_media::ProfileProvider::UnregisterMemoryRange> UnregisterMemoryRange (::fidl::Request< ::fuchsia_media::ProfileProvider::UnregisterMemoryRange> request)

Reset a memory range's memory profile.