Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
BufferProxyProvider Class Reference

#include "steam/engine/buffer-proxy-provider.hpp"

Description

Adapter to expose access to data blocks via BuffHandle and the BufferProvider protocol.

Todo:
WIP-WIP 12/2024 this is a design sketch to explore extension capabilities of BufferProvider

Definition at line 56 of file buffer-proxy-provider.hpp.

Classes

class  ForwardingBufferProvider
 

Public Member Functions

template<class LIS , typename = lib::meta::disable_if_self<BufferProxyProvider, LIS>>
 BufferProxyProvider (LIS &&listener)
 
template<typename TAR >
BuffHandle lockBuffer (TAR &dataBlock)
 

Private Types

using Listener = std::function< void(size_t, BufferState)>
 

Private Attributes

ForwardingBufferProvider passThroughProvider_
 

Additional Inherited Members

- Private Member Functions inherited from NonCopyable
 ~NonCopyable ()=default
 
 NonCopyable ()=default
 
 NonCopyable (NonCopyable const &)=delete
 
NonCopyableoperator= (NonCopyable const &)=delete
 

Constructor & Destructor Documentation

◆ BufferProxyProvider()

template<class LIS , typename = lib::meta::disable_if_self<BufferProxyProvider, LIS>>
BufferProxyProvider ( LIS &&  listener)
inline

Definition at line 106 of file buffer-proxy-provider.hpp.

Member Typedef Documentation

◆ Listener

using Listener = std::function<void(size_t,BufferState)>
private

Definition at line 60 of file buffer-proxy-provider.hpp.

Member Function Documentation

◆ lockBuffer()

template<typename TAR >
BuffHandle lockBuffer ( TAR &  dataBlock)
inline

Definition at line 112 of file buffer-proxy-provider.hpp.

Member Data Documentation

◆ passThroughProvider_

ForwardingBufferProvider passThroughProvider_
private

Definition at line 101 of file buffer-proxy-provider.hpp.

+ Inheritance diagram for BufferProxyProvider:
+ Collaboration diagram for BufferProxyProvider:

The documentation for this class was generated from the following file: