template <>
class WireServer
Defined at line 1207 of file fidling/gen/sdk/fidl/fuchsia.tracing.provider/fuchsia.tracing.provider/cpp/fidl/fuchsia.tracing.provider/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_tracing_provider::Provider>|
and |::fidl::ServerEnd
<
::fuchsia_tracing_provider::Provider>|).
Public Methods
void Initialize (::fuchsia_tracing_provider::wire::ProviderInitializeRequest * request, InitializeCompleter::Sync & completer)
Initialize tracing and prepare for writing trace records for events in
the specified `categories` into `buffer` using `fifo` for signaling.
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::wire::ProviderStartRequest * request, StartCompleter::Sync & completer)
Begin tracing.
If tracing has already started the provider must ignore the request.
There is no result. The provider must send a `TRACE_PROVIDER_STARTED`
packet on `fifo` to indicate success/failure of starting.
void Stop (StopCompleter::Sync & completer)
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 a `TRACE_PROVIDER_STOPPED` packet on `fifo`.
Note that multiple `Start,Stop` requests can be received between
`Initialize,Terminate`.
void Terminate (TerminateCompleter::Sync & completer)
Terminate tracing.
Tracing is stopped first if not already stopped.
After tracing has fully terminated the provider must close both
`buffer` and `fifo` to indicate to the trace manager that tracing is
finished.
void GetKnownCategories (GetKnownCategoriesCompleter::Sync & completer)
Gets the trace categories that might be produced by this provider.
void WireServer ()
Defined at line 1210 of file fidling/gen/sdk/fidl/fuchsia.tracing.provider/fuchsia.tracing.provider/cpp/fidl/fuchsia.tracing.provider/cpp/wire_messaging.h
Handler bind_handler (async_dispatcher_t * dispatcher)
|bind_handler| returns a handler that binds incoming connections to this
server implementation.
The returned handler borrows the server instance.
The server must outlive the provided |dispatcher|. Only after
the dispatcher is shutdown will it be safe to destroy the servers.
The server should not be moved.
void ~WireServer ()
Defined at line 1211 of file fidling/gen/sdk/fidl/fuchsia.tracing.provider/fuchsia.tracing.provider/cpp/fidl/fuchsia.tracing.provider/cpp/wire_messaging.h