1 #ifndef MF_TIMED_RING_H_
2 #define MF_TIMED_RING_H_
19 std::atomic<time_unit> last_write_time_{-1};
42 void end_write(time_unit written_duration);
Ring buffer.
Definition: ring.h:12
section_view_type begin_read_span(time_span)
Definition: timed_ring.cc:83
Generic ndarray_view where lower dimension(s) are type-erased.
Definition: ndarray_view_generic.h:25
section_view_type begin_read(time_unit)
Definition: timed_ring.cc:77
std::ptrdiff_t time_unit
Discrete time unit type.
Definition: common.h:52
time_span writable_time_span() const
Definition: timed_ring.cc:25
bool can_write_span(time_span) const
Definition: timed_ring.cc:43
section_view_type begin_write_span(time_span)
Definition: timed_ring.cc:71
void initialize()
Definition: timed_ring.cc:5
time_unit write_start_time() const noexcept
Definition: timed_ring.cc:38
void seek(time_unit)
Definition: timed_ring.cc:106
timed_ring(const frame_array_properties &prop)
Definition: timed_ring.h:25
section_view_type begin_write(time_unit)
Definition: timed_ring.cc:65
time_unit read_start_time() const noexcept
Definition: timed_ring.cc:33
void skip_span(time_span)
Definition: timed_ring.cc:97
time_unit current_time() const noexcept
Definition: timed_ring.h:29
Properties for construction of ndarray_generic and derived container objects.
Definition: ndarray_generic.h:15
void end_write(time_unit written_duration)
Definition: timed_ring.cc:11
ring(const frame_array_properties &)
Definition: ring.cc:10
Ring buffer which adds absolute time index to frames.
Definition: timed_ring.h:13
ndarray_timed_view_generic< 1 > timed_frame_array_view
Definition: frame.h:10
bool can_skip_span(time_span) const
Definition: timed_ring.cc:58
One-dimensional time span.
Definition: common.h:61
bool can_read_span(time_span) const
Definition: timed_ring.cc:50
timed_frame_array_view section_view_type
Definition: timed_ring.h:23
time_span readable_time_span() const
Definition: timed_ring.cc:17