libtcspc C++ API
Streaming TCSPC and time tag data processing
Loading...
Searching...
No Matches
tcspc::new_delete_bucket_source< T > Class Template Referencefinal

Description

template<typename T>
class tcspc::new_delete_bucket_source< T >

Bucket source using regular memory allocation.

This bucket source provides buckets whose underlying memory is allocated via new[]. Extraction of the storage is supported and results in a std::unique_ptr<T[]>.

This bucket source is thread-safe: buckets (or their storage) may be created and destroyed on multiple threads simultaneously. (Access to an individual bucket is not thread-safe.)

Template Parameters
Tthe bucket data element type

Inherits tcspc::bucket_source< T >.

Public Member Functions

auto bucket_of_size (std::size_t size) -> bucket< T > override
 Implements bucket source requirement.
Public Member Functions inherited from tcspc::bucket_source< T >
virtual auto shared_view_of (bucket< T > const &bkt) -> bucket< T const >
 Create a shared view bucket that is a read-only view of the given bucket but may outlive the original bucket.
virtual auto supports_shared_views () const noexcept -> bool
 Return whether this bucket source is a sharable bucket source.

Static Public Member Functions

static auto create () -> std::shared_ptr< bucket_source< T > >
 Create an instance.

Member Function Documentation

◆ bucket_of_size()

template<typename T>
auto tcspc::new_delete_bucket_source< T >::bucket_of_size ( std::size_t size) -> bucket< T >
inlineoverridevirtual

Implements bucket source requirement.

Implements tcspc::bucket_source< T >.


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