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

Description

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

Bucket source wrapper for unit testing.

This bucket source delegates bucket creation to a backing source. It fills each new bucket with the specified value before returning.

In addition, the number of buckets created can be queried.

Template Parameters
Tthe bucket data element type

Inherits tcspc::bucket_source< T >.

Public Member Functions

auto bucket_count () const noexcept -> std::size_t
 Return the number of buckets created so far.
auto bucket_of_size (std::size_t size) -> bucket< T > override
 Implements bucket source requirement.
auto shared_view_of (bucket< T > const &bkt) -> bucket< T const > override
 Implements sharable bucket source requirement.
auto supports_shared_views () const noexcept -> bool override
 Implements sharable bucket source requirement.

Static Public Member Functions

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

Member Function Documentation

◆ bucket_of_size()

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

Implements bucket source requirement.

Implements tcspc::bucket_source< T >.

◆ shared_view_of()

template<typename T>
auto tcspc::test_bucket_source< T >::shared_view_of ( bucket< T > const & bkt) -> bucket< T const >
inlinenodiscardoverridevirtual

Implements sharable bucket source requirement.

Reimplemented from tcspc::bucket_source< T >.

◆ supports_shared_views()

template<typename T>
auto tcspc::test_bucket_source< T >::supports_shared_views ( ) const -> bool
inlinenodiscardoverridevirtualnoexcept

Implements sharable bucket source requirement.

Reimplemented from tcspc::bucket_source< T >.


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