tree: 74503f2f163ae9ee35d30728fc06fb8300cc080f [path history] [tgz]
  1. tests/
  2. BUILD.gn
  3. composed_service_dir.h
  4. lazy_dir.h
  5. node.h
  6. pseudo_dir.h
  7. pseudo_file.h
  8. README.md
  9. remote_dir.h
  10. service.h
  11. vfs_cpp.api
  12. vmo_file.h
sdk/lib/vfs/cpp/README.md

SDK C++ VFS

Overview

This library provides basic pseudo-filesystem functionality, which can be useful for exposing items in a component's outgoing namespace (including services). This allows creation of pseudo-directories that can be modified at runtime, pseudo/VMO-backed files, service connectors, and remote nodes.

Unlike the in-tree VFS (//src/storage/lib/vfs/cpp), this library is not intended for filesystems development.

WARNING: This library is currently undergoing an API overhaul. Please avoid new uses and prefer using the in-tree VFS at //src/storage/lib/vfs/cpp where possible. See https://fxbug.dev/311176363 for details.

Thread Safety

The node types this library implements are thread safe, however they must only be used with a single-threaded asynchronous dispatcher. Multiple connections may be created to a given node, as long as the same dispatcher is used.

Connections to a node are automatically closed when a node is destroyed. This includes connections to child entries, if applicable, which were opened via a parent node.

Use of a multi-threaded asynchronous dispatcher is not supported.