40 DiagnosticBufferProvider::DiagnosticBufferProvider()
44 DiagnosticBufferProvider::~DiagnosticBufferProvider() { }
48 DiagnosticBufferProvider::build()
50 return diagnostics().reset();
57 if (!diagnostics().isCurrent (provider))
58 throw error::Invalid(
"given Provider doesn't match (current) diagnostic data record." 59 "This might be an lifecycle error. Did you build() this instance beforehand?");
68 DiagnosticBufferProvider::reset()
75 DiagnosticBufferProvider::isCurrent (
BufferProvider const& implInstance)
77 return &implInstance == pImpl_.get();
87 DiagnosticBufferProvider::buffer_was_used (uint bufferID)
const 89 return pImpl_->access_emitted(bufferID).was_used();
94 DiagnosticBufferProvider::buffer_was_closed (uint bufferID)
const 96 return pImpl_->access_emitted(bufferID).was_closed();
101 DiagnosticBufferProvider::accessMemory (uint bufferID)
const 103 return pImpl_->access_emitted(bufferID).accessMemory();
Helper for unit tests: Buffer provider reference implementation.
static lib::Depend< DiagnosticBufferProvider > diagnostics
Storage for the diagnostics frontend.
Steam-Layer implementation namespace root.
Access point to singletons and other kinds of dependencies designated by type.
Derived specific exceptions within Lumiera's exception hierarchy.
Metaprogramming tools for transforming functor types.
Dummy implementation of the BufferProvider interface to support writing unit tests.
simple BufferProvider implementation with additional allocation tracking.
Lumiera error handling (C++ interface).
A facility for writing unit-tests targeting the BufferProvider interface.
Interface: a facility providing and managing working buffers for media calculations.