Namespaces
Enumerations
enum ObjType
| Name | Value |
|---|---|
| kChannel | 4u |
Defined at line 17 of file fidling/gen/sdk/fidl/fdf/fdf/cpp/fidl/fdf/cpp/common_types.h
enum LogSeverity
| Name | Value |
|---|---|
| TRACE | FUCHSIA_LOG_TRACE |
| DEBUG | FUCHSIA_LOG_DEBUG |
| INFO | FUCHSIA_LOG_INFO |
| WARN | FUCHSIA_LOG_WARNING |
| ERROR | FUCHSIA_LOG_ERROR |
| FATAL | FUCHSIA_LOG_FATAL |
Defined at line 69 of file ../../sdk/lib/driver/logging/cpp/logger.h
Records
-
class Arena -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class AsyncEventHandler -
class Channel -
class ChannelPair -
class ChannelRead -
class ChannelReadBase -
class Client -
class ClientEnd -
class Completer -
class Dispatcher -
class DriverBase -
class Endpoints -
class Logger -
class MmioBuffer -
class MmioBufferOps -
class MmioPinnedBuffer -
class MmioView -
class Namespace -
class OutgoingDirectory -
class OwnedChildNode -
class PDev -
class PrepareStopCompleter -
class Protocol -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Result -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class Server -
class ServerBinding -
class ServerBindingGroup -
class ServerBindingRef -
class ServerEnd -
class ServiceValidator -
class SharedClient -
class StartCompleter -
class SynchronizedDispatcher -
class Unowned -
class UnownedClientEnd -
class UnownedServerEnd -
class UnsynchronizedDispatcher -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireAsyncEventHandler -
class WireClient -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireServer -
class WireSharedClient -
class WireSyncClient -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class WireUnownedResult -
class debug -
class error -
class fatal -
class info -
class trace -
class warn
Functions
-
fuchsia_component_decl::Offer MakeOffer (std::string_view service_name, std::string_view instance_name)Defined at line 11 of file ../../sdk/lib/driver/component/cpp/node_add_args.cc
-
zx::result<> RunOnDispatcherSync (async_dispatcher_t * dispatcher, fit::closure task)Run |task| on the |dispatcher|, and wait until it is completed.
This will run all of the unmanaged dispatchers with |fdf_testing_run_until_idle|,
if there are any, to ensure the task can be completed.
This MUST be called from the main test thread.
Defined at line 10 of file ../../sdk/lib/driver/runtime/testing/cpp/sync_helpers.cc
-
zx::result<OwnedChildNode> AddOwnedChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name)Adds an owned child node under the given |parent|. The driver framework will NOT try to match
and bind a driver to this child as it is already owned by the current driver.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 10 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
template <typename FidlProtocol>WireSyncClient<FidlProtocol> <deduction guide for WireSyncClient> (ClientEnd<FidlProtocol> ) -
template <typename Protocol, typename AsyncEventHandlerReference>Client<Protocol> <deduction guide for Client> (fdf::ClientEnd<Protocol> , fdf_dispatcher_t * , AsyncEventHandlerReference && ) -
template <typename... Args>trace<Args...> <deduction guide for trace> (std::format_string<Args...> , Args &&... ) -
template <typename Protocol>Client<Protocol> <deduction guide for Client> (fdf::ClientEnd<Protocol> , fdf_dispatcher_t * ) -
template <typename... Args>debug<Args...> <deduction guide for debug> (std::format_string<Args...> , Args &&... ) -
template <typename... Args>info<Args...> <deduction guide for info> (std::format_string<Args...> , Args &&... ) -
template <typename... Args>warn<Args...> <deduction guide for warn> (std::format_string<Args...> , Args &&... ) -
template <typename... Args>error<Args...> <deduction guide for error> (std::format_string<Args...> , Args &&... ) -
template <typename... Args>fatal<Args...> <deduction guide for fatal> (std::format_string<Args...> , Args &&... ) -
template <typename Protocol, typename AsyncEventHandlerReference>SharedClient<Protocol> <deduction guide for SharedClient> (fdf::ClientEnd<Protocol> , fdf_dispatcher_t * , AsyncEventHandlerReference && , fidl::AnyTeardownObserver ) -
template <typename Protocol, typename AsyncEventHandlerReference>SharedClient<Protocol> <deduction guide for SharedClient> (fdf::ClientEnd<Protocol> , fdf_dispatcher_t * , AsyncEventHandlerReference && ) -
template <typename Protocol>SharedClient<Protocol> <deduction guide for SharedClient> (fdf::ClientEnd<Protocol> , fdf_dispatcher_t * ) -
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const std::string_view> values)String keys with string values
Defined at line 15 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_component_decl::wire::Offer MakeOffer (fidl::AnyArena & arena, std::string_view service_name, std::string_view instance_name)Defined at line 29 of file ../../sdk/lib/driver/component/cpp/node_add_args.cc
-
zx::result<> WaitFor (libsync::Completion & completion)Wait until the completion is signaled. When this function returns, the completion is signaled.
This will run all of the unmanaged dispatchers with |fdf_testing_run_until_idle|,
if there are any.
This MUST be called from the main test thread.
Defined at line 20 of file ../../sdk/lib/driver/runtime/testing/cpp/sync_helpers.cc
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, const std::string_view value)Defined at line 30 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Service>fuchsia_driver_framework::Offer MakeOffer2 (std::string_view instance_name)Defined at line 30 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, const std::string_view value)Defined at line 36 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
zx::result<fidl::ClientEnd<fuchsia_driver_framework::NodeController>> AddChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name, cpp20::span<const fuchsia_driver_framework::NodeProperty> properties, cpp20::span<const fuchsia_driver_framework::Offer> offers)Adds an un-owned child node under the given |parent|. The driver framework will try to match
and bind a driver to this child.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 37 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
fpromise::promise<void, fuchsia_driver_framework::wire::NodeError> AddChild (fidl::WireSharedClient<fuchsia_driver_framework::Node> & client, fuchsia_driver_framework::wire::NodeAddArgs args, fidl::ServerEnd<fuchsia_driver_framework::NodeController> controller, fidl::ServerEnd<fuchsia_driver_framework::Node> node)Adds a child to `client`, using `args`. `controller` must be provided, but
`node` is optional.
Defined at line 26 of file ../../sdk/lib/driver/promise/cpp/promise.cc
-
template <typename T>zx::result<T> WaitFor (std::shared_future<T> future)Wait until the future is resolved, then returns the resolved value of the future.
This will run all of the unmanaged dispatchers with |fdf_testing_run_until_idle|,
if there are any.
This MUST be called from the main test thread.
Defined at line 38 of file ../../sdk/lib/driver/runtime/testing/cpp/sync_helpers.h
-
zx_status_t ProtocolConnect (zx::channel token, fdf::Channel channel)Connects to the runtime protocol which was, or will be registered with the channel peer of
|token|. |channel| may be closed by the parent to terminate the connection.
Transfers ownership of |token| to the runtime, and ownership of |channel| to the driver
which registered the protocol.
# Errors:
ZX_ERR_BAD_HANDLE: |token| is not a valid channel handle, or |channel| is not a valid
FDF channel handle.
ZX_ERR_BAD_STATE: The dispatcher is shutting down.
Defined at line 40 of file ../../sdk/lib/driver/runtime/protocol.cc
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, cpp20::span<const std::string_view> values)Defined at line 41 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Protocol>fpromise::promise<fidl::WireSharedClient<Protocol>, zx_status_t> Connect (const fdf::Namespace & ns, async_dispatcher_t * dispatcher, const char * protocol_name)Connects to the given `protocol_name` in `ns`, and returns a fpromise::promise containing a
fidl::WireSharedClient on success.
Defined at line 41 of file ../../sdk/lib/driver/promise/cpp/promise.h
-
zx::result<fdf::Channel> ProtocolReceive (zx::channel token)Receives a driver channel that has been previously connected to with |token|'s pair
synchronously.
Transfers ownership of |token| to the runtime.
# Errors:
ZX_ERR_BAD_HANDLE: |token| is not a valid channel handle.
ZX_ERR_NOT_FOUND: |ProtocolConnect| has not been called on |token|'s pair.
Defined at line 45 of file ../../sdk/lib/driver/runtime/protocol.cc
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, const std::string_view value)Defined at line 46 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Service>fuchsia_driver_framework::wire::Offer MakeOffer2 (fidl::AnyArena & arena, std::string_view instance_name)Defined at line 46 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fpromise::promise<fidl::WireSharedClient<fuchsia_io::File>, zx_status_t> Open (const fdf::Namespace & ns, async_dispatcher_t * dispatcher, const char * path, fuchsia_io::Flags flags)Opens the given `path` in `ns`, and returns a fpromise::promise containing a
fidl::WireSharedClient on success.
Defined at line 50 of file ../../sdk/lib/driver/promise/cpp/promise.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, cpp20::span<const std::string_view> values)Defined at line 51 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Protocol, typename ServerImpl, typename OnUnbound = std::nullptr_t>ServerBindingRef<Protocol> BindServer (fdf_dispatcher_t * dispatcher, ServerEnd<Protocol> server_end, ServerImpl * impl, OnUnbound && on_unbound)|BindServer| starts handling message on |server_end| using implementation
|impl|, on a potentially multi-threaded |dispatcher|. Multiple requests may
be concurrently in-flight, and responded to synchronously or asynchronously.
The behavior of |fdf::BindServer| is identical to |fidl::BindServer|, the
specialization for channels. Please see documentation in channel.h for more
details.
Usually all template parameters can be automatically inferred.
Defined at line 51 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/server.h
-
template <typename T>zx::result<T> WaitFor (std::future<T> future)Wait until the future is resolved, then returns the resolved value of the future.
This will run all of the unmanaged dispatchers with |fdf_testing_run_until_idle|,
if there are any.
This MUST be called from the main test thread.
Defined at line 55 of file ../../sdk/lib/driver/runtime/testing/cpp/sync_helpers.h
-
template <typename T>bool operator== (const Unowned<T> & a, const Unowned<T> & b)Defined at line 57 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const char *> values)String keys with char* values
Defined at line 57 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::NodeProperty MakeProperty (std::string_view key, std::string_view value)Defined at line 60 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
template <typename T>bool operator!= (const Unowned<T> & a, const Unowned<T> & b)Defined at line 62 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
template <typename T>bool operator< (const Unowned<T> & a, const Unowned<T> & b)Defined at line 67 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
fuchsia_driver_framework::NodeProperty MakeProperty (std::string_view key, const char * value)Defined at line 67 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
template <typename Protocol, typename ServerImpl, typename OnUnbound = std::nullptr_t>ServerBindingRef<Protocol> BindServer (fdf_dispatcher_t * dispatcher, ServerEnd<Protocol> server_end, std::unique_ptr<ServerImpl> && impl, OnUnbound && on_unbound)Overload of |BindServer| that takes ownership of the server as a |unique_ptr|.
The pointer is destroyed on the same thread as the one calling |on_unbound|,
and happens right after |on_unbound|.
The behavior of |fdf::BindServer| is identical to |fidl::BindServer|, the
specialization for channels. Please see documentation in channel.h for more
details.
Defined at line 67 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/server.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, const char * value)Defined at line 68 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
zx::result<OwnedChildNode> AddOwnedChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name, fuchsia_driver_framework::DevfsAddArgs & devfs_args)Creates an owned child node with devfs support under the given |parent|. The driver framework
will NOT try to match and bind a driver to this child as it is already owned by the current
driver.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 68 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
template <typename T>bool operator> (const Unowned<T> & a, const Unowned<T> & b)Defined at line 72 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
fuchsia_driver_framework::NodeProperty MakeProperty (std::string_view key, bool value)Defined at line 72 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, const char * value)Defined at line 74 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename T>bool operator<= (const Unowned<T> & a, const Unowned<T> & b)Defined at line 77 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
fuchsia_driver_framework::NodeProperty MakeProperty (std::string_view key, uint32_t value)Defined at line 78 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, cpp20::span<const char *> values)Defined at line 79 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename T>bool operator>= (const Unowned<T> & a, const Unowned<T> & b)Defined at line 82 of file ../../sdk/lib/driver/runtime/include/lib/fdf/cpp/unowned.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, const char * value)Defined at line 84 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::wire::NodeProperty MakeProperty (fidl::AnyArena & arena, std::string_view key, std::string_view value)Defined at line 84 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
template <typename Protocol, typename ServerImpl, typename OnUnbound = std::nullptr_t>ServerBindingRef<Protocol> BindServer (fdf_dispatcher_t * dispatcher, ServerEnd<Protocol> server_end, std::shared_ptr<ServerImpl> impl, OnUnbound && on_unbound)Overload of |BindServer| that shares ownership of the server via a |shared_ptr|.
The pointer is destroyed on the same thread as the one calling |on_unbound|,
and happens right after |on_unbound|.
The behavior of |fdf::BindServer| is identical to |fidl::BindServer|, the
specialization for channels. Please see documentation in channel.h for more
details.
Defined at line 85 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/server.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, cpp20::span<const char *> values)Defined at line 89 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::wire::NodeProperty MakeProperty (fidl::AnyArena & arena, std::string_view key, const char * value)Defined at line 92 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const bool> values)String keys with bool values
Defined at line 95 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
zx::result<fidl::ClientEnd<fuchsia_driver_framework::NodeController>> AddChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name, fuchsia_driver_framework::DevfsAddArgs & devfs_args, cpp20::span<const fuchsia_driver_framework::NodeProperty> properties, cpp20::span<const fuchsia_driver_framework::Offer> offers)Creates an un-owned child node with devfs support under the given |parent|. The driver framework
will try to match and bind a driver to this child.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 96 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
fuchsia_driver_framework::wire::NodeProperty MakeProperty (fidl::AnyArena & arena, std::string_view key, bool value)Defined at line 98 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::wire::NodeProperty MakeProperty (fidl::AnyArena & arena, std::string_view key, uint32_t value)Defined at line 105 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, const bool value)Defined at line 109 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::NodeProperty2 MakeProperty2 (std::string_view key, std::string_view value)Defined at line 113 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, const bool value)Defined at line 115 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, cpp20::span<const bool> values)Defined at line 120 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::NodeProperty2 MakeProperty2 (std::string_view key, const char * value)Defined at line 120 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, const bool value)Defined at line 125 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::NodeProperty2 MakeProperty2 (std::string_view key, bool value)Defined at line 125 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
zx::result<fidl::ClientEnd<fuchsia_driver_framework::NodeController>> AddChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name, cpp20::span<const fuchsia_driver_framework::NodeProperty2> properties, cpp20::span<const fuchsia_driver_framework::Offer> offers)Adds an un-owned child node under the given |parent|. The driver framework will try to match
and bind a driver to this child.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 128 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, cpp20::span<const bool> values)Defined at line 130 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::NodeProperty2 MakeProperty2 (std::string_view key, uint32_t value)Defined at line 131 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const uint32_t> values)String keys with int values
Defined at line 136 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::wire::NodeProperty2 MakeProperty2 (fidl::AnyArena & arena, std::string_view key, std::string_view value)Defined at line 137 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::wire::NodeProperty2 MakeProperty2 (fidl::AnyArena & arena, std::string_view key, const char * value)Defined at line 145 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeBindRule (const std::string_view key, const fuchsia_driver_framework::Condition condition, const uint32_t value)Defined at line 150 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::wire::NodeProperty2 MakeProperty2 (fidl::AnyArena & arena, std::string_view key, bool value)Defined at line 151 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, const uint32_t value)Defined at line 156 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::wire::NodeProperty2 MakeProperty2 (fidl::AnyArena & arena, std::string_view key, uint32_t value)Defined at line 159 of file ../../sdk/lib/driver/component/cpp/node_add_args.h
-
zx::result<fidl::ClientEnd<fuchsia_driver_framework::NodeController>> AddChild (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent, fdf::Logger & logger, std::string_view node_name, fuchsia_driver_framework::DevfsAddArgs & devfs_args, cpp20::span<const fuchsia_driver_framework::NodeProperty2> properties, cpp20::span<const fuchsia_driver_framework::Offer> offers)Adds an un-owned child node under the given |parent|. The driver framework will try to match
and bind a driver to this child.
This is a synchronous call and requires that the dispatcher allow sync calls.
Defined at line 159 of file ../../sdk/lib/driver/node/cpp/add_child.cc
-
fuchsia_driver_framework::BindRule MakeAcceptBindRule (const std::string_view key, cpp20::span<const uint32_t> values)Defined at line 161 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, const uint32_t value)Defined at line 166 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule MakeRejectBindRule (const std::string_view key, cpp20::span<const uint32_t> values)Defined at line 171 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const std::string_view> values)String keys with string values
Defined at line 177 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, const std::string_view value)Defined at line 190 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, const std::string_view value)Defined at line 196 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, cpp20::span<const std::string_view> values)Defined at line 201 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, const std::string_view value)Defined at line 206 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, cpp20::span<const std::string_view> values)Defined at line 211 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>fdf::internal::SyncEndpointVeneer<fidl::internal::WireSyncClientImpl, FidlProtocol> WireCall (const ClientEnd<FidlProtocol> & client_end)|WireCall| is used to make method calls directly on a |fdf::ClientEnd|
without having to set up a client. Call it like:
fdf::Arena arena('EXAM');
fdf::WireCall(client_end).buffer(arena)->Method(args...);
Defined at line 215 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const char *> values)String keys with char* values
Defined at line 217 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, const char * value)Defined at line 228 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>fdf::internal::SyncEndpointVeneer<fidl::internal::WireSyncClientImpl, FidlProtocol> WireCall (const UnownedClientEnd<FidlProtocol> & client_end)|WireCall| is used to make method calls directly on a |fdf::ClientEnd|
without having to set up a client. Call it like:
fdf::Arena arena('EXAM');
fdf::WireCall(client_end).buffer(arena)->Method(args...);
Defined at line 228 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, const char * value)Defined at line 234 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, cpp20::span<const char *> values)Defined at line 239 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>fdf::internal::WeakEventSenderVeneer<fidl::internal::WireWeakBufferEventSender, FidlProtocol> WireSendEvent (const ServerBindingRef<FidlProtocol> & binding_ref)Return an interface for sending FIDL events containing wire domain objects
over the endpoint managed by |binding_ref|. Call it like:
fdf::WireSendEvent(server_binding_ref)->FooEvent(args...);
Defined at line 240 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, const char * value)Defined at line 244 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, cpp20::span<const char *> values)Defined at line 249 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>fdf::internal::WeakEventSenderVeneer<fidl::internal::WireWeakBufferEventSender, FidlProtocol> WireSendEvent (const ServerBinding<FidlProtocol> & binding)Return an interface for sending FIDL events containing wire domain objects
over the endpoint managed by |binding|. Call it like:
fdf::ServerBinding
<SomeProtocol
> server_binding_{...};
fdf::WireSendEvent(server_binding_)->FooEvent(args...);
Defined at line 254 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const bool> values)String keys with bool values
Defined at line 255 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, const bool value)Defined at line 267 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>internal::SyncEndpointVeneer<fidl::internal::WireEventSender, FidlProtocol> WireSendEvent (const ServerEnd<FidlProtocol> & server_end)Return an interface for sending FIDL events containing wire domain objects
over |server_end|. Call it like:
fdf::WireSendEvent(server_end)->FooEvent(args...);
Defined at line 267 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, const bool value)Defined at line 273 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, cpp20::span<const bool> values)Defined at line 278 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename FidlProtocol>internal::SyncEndpointVeneer<fidl::internal::WireEventSender, FidlProtocol> WireSendEvent (UnownedServerEnd<FidlProtocol> server_end)Return an interface for sending FIDL events containing wire domain objects
over |server_end|. Call it like:
fdf::WireSendEvent(server_end)->FooEvent(args...);
Defined at line 279 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/sync_call.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, const bool value)Defined at line 283 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, cpp20::span<const bool> values)Defined at line 288 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Protocol>zx::result<fdf::Endpoints<Protocol>> CreateEndpoints ()Creates a pair of fdf channel endpoints speaking the |Protocol| protocol.
Whenever interacting with LLCPP, using this method should be encouraged over
|fdf::ChannelPair::Create|, because this method encodes the precise protocol
type into its results at compile time.
The return value is a result type wrapping the client and server endpoints.
Given the following:
auto endpoints = fdf::CreateEndpoints
<MyProtocol
>();
The caller should first ensure that |endpoints.is_ok() == true|, after which
the channel endpoints may be accessed in one of two ways:
- Direct:
endpoints->client;
endpoints->server;
- Structured Binding:
auto [client_end, server_end] = std::move(endpoints.value());
Defined at line 288 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/transport.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, cpp20::span<const uint32_t> values)String keys with int values
Defined at line 294 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeBindRule2 (const std::string_view key, const fuchsia_driver_framework::Condition condition, const uint32_t value)Defined at line 306 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, const uint32_t value)Defined at line 312 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Protocol>zx::result<fdf::ServerEnd<Protocol>> CreateEndpoints (fdf::ClientEnd<Protocol> * out_client)Creates a pair of fdf channel endpoints speaking the |Protocol| protocol.
Whenever interacting with LLCPP, using this method should be encouraged over
|fdf::ChannelPair::Create|, because this method encodes the precise protocol
type into its results at compile time.
This overload of |CreateEndpoints| may lead to more concise code when the
caller already has the client endpoint defined as an instance variable.
It will replace the destination of |out_client| with a newly created client
endpoint, and return the corresponding server endpoint in a |zx::result|:
// |client_end_| is an instance variable.
auto server_end = fdf::CreateEndpoints(
&client
_end_);
if (server_end.is_ok()) { ... }
Defined at line 313 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/transport.h
-
fuchsia_driver_framework::BindRule2 MakeAcceptBindRule2 (const std::string_view key, cpp20::span<const uint32_t> values)Defined at line 317 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, const uint32_t value)Defined at line 322 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename... Args>void panic (std::format_string<Args...> fmt, Args &&... args)Defined at line 324 of file ../../sdk/lib/driver/logging/cpp/logger.h
-
fuchsia_driver_framework::BindRule2 MakeRejectBindRule2 (const std::string_view key, cpp20::span<const uint32_t> values)Defined at line 327 of file ../../sdk/lib/driver/component/cpp/composite_node_spec.h
-
template <typename Protocol>zx::result<fdf::ClientEnd<Protocol>> CreateEndpoints (fdf::ServerEnd<Protocol> * out_server)Creates a pair of fdf channel endpoints speaking the |Protocol| protocol.
Whenever interacting with LLCPP, using this method should be encouraged over
|fdf::ChannelPair::Create|, because this method encodes the precise protocol
type into its results at compile time.
This overload of |CreateEndpoints| may lead to more concise code when the
caller already has the server endpoint defined as an instance variable.
It will replace the destination of |out_server| with a newly created server
endpoint, and return the corresponding client endpoint in a |zx::result|:
// |server_end_| is an instance variable.
auto client_end = fdf::CreateEndpoints(
&server
_end_);
if (client_end.is_ok()) { ... }
Defined at line 336 of file ../../sdk/lib/fidl_driver/include/lib/fidl_driver/cpp/transport.h