pub struct ProviderV2Proxy { /* private fields */ }Implementations§
Source§impl ProviderV2Proxy
impl ProviderV2Proxy
Sourcepub fn new(channel: AsyncChannel) -> Self
pub fn new(channel: AsyncChannel) -> Self
Create a new Proxy for fuchsia.tracing.provider/ProviderV2.
Sourcepub fn take_event_stream(&self) -> ProviderV2EventStream
pub fn take_event_stream(&self) -> ProviderV2EventStream
Get a Stream of events from the remote end of the protocol.
§Panics
Panics if the event stream was already taken.
Sourcepub fn initialize(&self, config: ProviderConfigV2) -> Result<(), Error>
pub fn initialize(&self, config: ProviderConfigV2) -> Result<(), Error>
Initialize tracing and prepare for writing trace records for events in
the specified categories into buffer.
Tracing hasn’t started yet, a Start() call is still required.
At most one trace can be active at a time. Subsequent Initialize()
requests received prior to a Terminate() call must be ignored.
Sourcepub fn start(
&self,
options: &StartOptions,
) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
pub fn start( &self, options: &StartOptions, ) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
Begin tracing.
If tracing has already started the provider must ignore the request.
Sourcepub fn stop(&self) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
pub fn stop(&self) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
Stop tracing.
If tracing has already stopped the provider must ignore the request.
Once the provider has finished writing any final events to the trace
buffer, it must send an OnStopped() event.
Note that multiple Start,Stop requests can be received between
Initialize,Terminate.
Sourcepub fn terminate(&self) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
pub fn terminate(&self) -> QueryResponseFut<(), DefaultFuchsiaResourceDialect>
Terminate tracing.
Tracing is stopped first if not already stopped.
Sourcepub fn get_known_categories(
&self,
) -> QueryResponseFut<Vec<KnownCategory>, DefaultFuchsiaResourceDialect>
pub fn get_known_categories( &self, ) -> QueryResponseFut<Vec<KnownCategory>, DefaultFuchsiaResourceDialect>
Gets the trace categories that might be produced by this provider.
Sourcepub fn notify_buffer_saved(
&self,
wrapped_count: u32,
durable_data_end: u64,
) -> Result<(), Error>
pub fn notify_buffer_saved( &self, wrapped_count: u32, durable_data_end: u64, ) -> Result<(), Error>
A buffer has been saved (streaming mode only).
Sourcepub fn flush(&self) -> Result<(), Error>
pub fn flush(&self) -> Result<(), Error>
Requests the provider its buffer to be read out, regardless of it is full or not.
Normally streaming mode only sends data once it has enough data to require a buffer swap and data flush. This produces fewer, but larger and bursty data transfers.
Some clients may want more regular smaller data transfers. These clients may instead manually invoke Flush whenever they are ready for data.
Trait Implementations§
Source§impl Clone for ProviderV2Proxy
impl Clone for ProviderV2Proxy
Source§fn clone(&self) -> ProviderV2Proxy
fn clone(&self) -> ProviderV2Proxy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProviderV2Proxy
impl Debug for ProviderV2Proxy
Source§impl ProviderV2ProxyInterface for ProviderV2Proxy
impl ProviderV2ProxyInterface for ProviderV2Proxy
type StartResponseFut = QueryResponseFut<()>
type StopResponseFut = QueryResponseFut<()>
type TerminateResponseFut = QueryResponseFut<()>
type GetKnownCategoriesResponseFut = QueryResponseFut<Vec<KnownCategory>>
fn initialize(&self, config: ProviderConfigV2) -> Result<(), Error>
fn start(&self, options: &StartOptions) -> Self::StartResponseFut
fn stop(&self) -> Self::StopResponseFut
fn terminate(&self) -> Self::TerminateResponseFut
fn get_known_categories(&self) -> Self::GetKnownCategoriesResponseFut
fn notify_buffer_saved( &self, wrapped_count: u32, durable_data_end: u64, ) -> Result<(), Error>
fn flush(&self) -> Result<(), Error>
Source§impl Proxy for ProviderV2Proxy
impl Proxy for ProviderV2Proxy
Source§type Protocol = ProviderV2Marker
type Protocol = ProviderV2Marker
Proxy controls.Source§fn from_channel(inner: AsyncChannel) -> Self
fn from_channel(inner: AsyncChannel) -> Self
Source§fn into_channel(self) -> Result<AsyncChannel, Self>
fn into_channel(self) -> Result<AsyncChannel, Self>
Source§fn as_channel(&self) -> &AsyncChannel
fn as_channel(&self) -> &AsyncChannel
Source§fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
fn into_client_end(self) -> Result<ClientEnd<Self::Protocol>, Self>
Source§fn on_closed(&self) -> OnSignals<'_, Unowned<'_, NullableHandle>>
fn on_closed(&self) -> OnSignals<'_, Unowned<'_, NullableHandle>>
PEER_CLOSED signal.