class BufferCollection
Defined at line 28 of file ../../src/sysmem/server/buffer_collection.h
This class indirectly implements both V1 and V2 BufferCollection server.
This class can't directly implement both servers because FIDL completers for one-way messages
from client to server end up using the same type, which makes the overrride(s) ambiguous for any
one-way message with no parameters.
Public Methods
bool is_set_constraints_seen ()
LogicalBufferCollection uses these:
Defined at line 46 of file ../../src/sysmem/server/buffer_collection.h
BufferCollection & EmplaceInTree (fbl::RefPtr<LogicalBufferCollection> logical_buffer_collection, BufferCollectionToken * token, const CollectionServerEnd & server_end)
Use EmplaceInTree() instead of Create() (until we switch to llcpp when we can have a new
Create() that does what EmplaceInTree() currently does). The returned reference is valid while
this Node is in the tree under root_.
Defined at line 59 of file ../../src/sysmem/server/buffer_collection.cc
void ~BufferCollection ()
Defined at line 92 of file ../../src/sysmem/server/buffer_collection.cc
bool has_constraints ()
Defined at line 792 of file ../../src/sysmem/server/buffer_collection.cc
const fuchsia_sysmem2::BufferCollectionConstraints & constraints ()
has_constraints() must be true to call this.
Defined at line 794 of file ../../src/sysmem/server/buffer_collection.cc
fuchsia_sysmem2::BufferCollectionConstraints CloneConstraints ()
has_constraints() must be true to call this, and will stay true after calling this.
Defined at line 799 of file ../../src/sysmem/server/buffer_collection.cc
fbl::RefPtr<LogicalBufferCollection> logical_buffer_collection_shared ()
bool should_propagate_failure_to_parent_node ()
bool ReadyForAllocation ()
Node interface
Defined at line 942 of file ../../src/sysmem/server/buffer_collection.cc
void OnBuffersAllocated (const AllocationResult & allocation_result)
Defined at line 768 of file ../../src/sysmem/server/buffer_collection.cc
BufferCollectionToken * buffer_collection_token ()
Defined at line 944 of file ../../src/sysmem/server/buffer_collection.cc
const BufferCollectionToken * buffer_collection_token ()
Defined at line 946 of file ../../src/sysmem/server/buffer_collection.cc
BufferCollection * buffer_collection ()
Defined at line 948 of file ../../src/sysmem/server/buffer_collection.cc
const BufferCollection * buffer_collection ()
Defined at line 950 of file ../../src/sysmem/server/buffer_collection.cc
BufferCollectionTokenGroup * buffer_collection_token_group ()
Defined at line 952 of file ../../src/sysmem/server/buffer_collection.cc
const BufferCollectionTokenGroup * buffer_collection_token_group ()
Defined at line 954 of file ../../src/sysmem/server/buffer_collection.cc
OrphanedNode * orphaned_node ()
Defined at line 958 of file ../../src/sysmem/server/buffer_collection.cc
const OrphanedNode * orphaned_node ()
Defined at line 960 of file ../../src/sysmem/server/buffer_collection.cc
bool is_connected_type ()
Defined at line 962 of file ../../src/sysmem/server/buffer_collection.cc
bool is_currently_connected ()
Defined at line 964 of file ../../src/sysmem/server/buffer_collection.cc
const char * node_type_string ()
Defined at line 968 of file ../../src/sysmem/server/buffer_collection.cc
ConnectionVersion connection_version ()
Defined at line 970 of file ../../src/sysmem/server/buffer_collection.cc
void Bind (CollectionServerEnd collection_server_end)
Defined at line 108 of file ../../src/sysmem/server/buffer_collection.cc
Protected Methods
void BindInternalV1 (zx::channel collection_request, ErrorHandlerWrapper error_handler_wrapper)
Defined at line 112 of file ../../src/sysmem/server/buffer_collection.cc
void BindInternalV2 (zx::channel collection_request, ErrorHandlerWrapper error_handler_wrapper)
Defined at line 125 of file ../../src/sysmem/server/buffer_collection.cc
void BindInternalCombinedV1AndV2 (zx::channel server_end, ErrorHandlerWrapper error_handler_wrapper)
Defined at line 138 of file ../../src/sysmem/server/buffer_collection.cc
Friends
class FidlServer