class ProviderV2
Defined at line 2930 of file fidling/gen/sdk/fidl/fuchsia.tracing.provider/fuchsia.tracing.provider/hlcpp/fuchsia/tracing/provider/cpp/fidl.h
The provider interface which applications must implement and register
with the `TraceRegistry` to participate in tracing.
Public Methods
void ~ProviderV2 ()
void Initialize (::fuchsia::tracing::provider::ProviderConfigV2 config)
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.
void Start (::fuchsia::tracing::provider::StartOptions options, StartCallback callback)
Begin tracing.
If tracing has already started the provider must ignore the request.
void Stop (StopCallback callback)
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`.
void Terminate (TerminateCallback callback)
Terminate tracing.
Tracing is stopped first if not already stopped.
void GetKnownCategories (GetKnownCategoriesCallback callback)
Gets the trace categories that might be produced by this provider.
void NotifyBufferSaved (uint32_t wrapped_count, uint64_t durable_data_end)
A buffer has been saved (streaming mode only).
void Flush ()
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.
Protected Methods
void handle_unknown_method (uint64_t ordinal, bool method_has_response)
Friends
class ProviderV2_Stub