|
| NumericSampleStream (size_t BufferSizeInSamples) |
| Constructs a NumericSampleStream instance setting the limits on the sample values to the respective data type's (SampleT ) full range. More...
|
|
| NumericSampleStream (size_t BufferSizeInSamples, SampleT MinValue, SampleT MaxValue) |
| Constructs a NumericSampleStream instance setting the limits on the sample values to the the range [MinValue , MaxValue ]. More...
|
|
virtual | ~NumericSampleStream ()=default |
|
bool | IsBasicSampleConvertible () const noexcept override final |
| Determines whether the data stream holds samples which are compatible to BasicSample . More...
|
|
void | SetLimits (SampleT MinValue, SampleT MaxValue) |
| Sets new sample value limits. More...
|
|
auto | GetMinValue () const noexcept |
| Getter for the minimal allowed sample value. More...
|
|
auto | GetMaxValue () const noexcept |
| Getter for the maximal allowed sample value. More...
|
|
| CircularDataStream (size_t BufferSizeInSamples) |
| Constructs a CircularDataStream instance. More...
|
|
virtual | ~CircularDataStream ()=default |
|
constexpr auto | GetBytesPerSample () noexcept |
| Determines the size of a single sample in bytes. More...
|
|
size_t | GetNumAvailableSamplesToReadTillEnd () const noexcept override |
| Determines the amount of samples which can be read from the stream's current get pointer position till the stream's end. More...
|
|
size_t | GetNumFreeSamplesToWrite () const noexcept override |
| Determines the amount of samples which can be written to the stream untill the stream's end is reached. More...
|
|
std::streampos | GetReadPosition () const noexcept override |
| Determines the current position of the stream's read (get) pointer in samples. More...
|
|
std::streampos | GetWritePosition () const noexcept override |
| Determines the current position of the stream's write (put) pointer in samples. More...
|
|
virtual bool | SeekRel (signed long long OffsetInSamples, std::ios_base::seekdir SeekDir, std::ios_base::openmode Which=std::ios_base::in|std::ios_base::out) override |
| Moves the stream's read/write pointer(s) to a position relative to SeekDir . More...
|
|
virtual bool | SeekAbs (unsigned long long PositionInSamples, std::ios_base::openmode Which=std::ios_base::in|std::ios_base::out) override |
| Moves the stream's read/write pointer(s) to an absolute position. More...
|
|
virtual void | SeekBeg (std::ios_base::openmode Which=std::ios_base::in|std::ios_base::out) override |
| Moves the read/write pointer to the first sample in the stream. More...
|
|
virtual void | SeekEnd (std::ios_base::openmode Which=std::ios_base::in|std::ios_base::out) override |
| Moves the read pointer to the last sample in the stream and/or moves the write pointer after the last written sample in the stream. More...
|
|
virtual bool | SeekEqual (std::ios_base::openmode Which=std::ios_base::in|std::ios_base::out) override |
| Moves the read/write pointer to the respective other one. More...
|
|
virtual size_t | GetStreamSizeRead () const noexcept override |
| Determines the stream's read buffer size in samples. More...
|
|
virtual size_t | GetStreamSizeWrite () const noexcept override |
| Determines the stream's write buffer size in samples. More...
|
|
virtual size_t | GetNumSamplesWritten () const noexcept override |
| Determines the number of samples which have been written to the stream in total. Before overflowing, this function should keep continuing to return the largest possible value. More...
|
|
virtual void | SetStreamSize (size_t BufferSizeInSamples) override |
| Sets the stream size in samples. More...
|
|
void | WriteSample (const SampleT &Sample) |
| Writes a single sample to the stream's buffer StreamBuffer. More...
|
|
template<typename Rep , typename Period > |
void | WriteSample (const std::chrono::duration< Rep, Period > &Sample) |
| Writes a single sample to the stream's buffer StreamBuffer by implicitly constructing the sample from a std::chrono::duration instance. More...
|
|
SampleT | ReadSample () |
| Reads a single sample from the stream's buffer StreamBuffer. More...
|
|
template<typename T > |
void | WriteSamples (const std::vector< T > &Samples) |
| Writes multiple samples to the stream's buffer StreamBuffer. More...
|
|
std::vector< SampleT > | ReadSamples (size_t Count) |
| Reads multiple samples from the stream's buffer StreamBuffer. More...
|
|
size_t | GetNumRecentBasicSamples (size_t Count) const |
| Determines the amount of samples which have been written to the stream after the last Count samples. This is useful if the caller just wants to obtain recent samples but not the entire stream. Then, the caller should remember the amount of samples it knows already and call ReadRecentBasicSamples() next. More...
|
|
BasicSampleListType | ReadRecentBasicSamples (size_t Count) |
| Reads the most recent samples from the stream skipping Count samples. Also refer to GetNumRecentBasicSamples() . More...
|
|
virtual | ~DataStreamBase ()=default |
|
bool | CanRead () const |
| Determines whether the stream contains at least one sample which can be read (i.e. GetStreamSizeRead() returns a value greater than 0). More...
|
|
void | Clear () |
| Removes all samples from the stream's buffer. More...
|
|
void | WriteBasicSample (const BasicSample &Sample) |
| Writes a single basic sample to the stream. More...
|
|
BasicSample | ReadBasicSample () |
| Reads a single basic sample from the stream. More...
|
|
void | WriteBasicSamples (const BasicSampleListType &Samples) |
| Writes a list of basic sample to the stream. More...
|
|
BasicSampleListType | ReadBasicSamples (size_t Count) |
| Reads a list of basic sample from the stream. More...
|
|
virtual bool | IsBasicSampleTimeUsed () const noexcept |
| Determines whether the data stream holds basic samples (IsBasicSampleConvertible() returns true) which contain information in their BasicSample::Time fields. More...
|
|
template<typename SampleT, std::enable_if_t< std::is_arithmetic_v< SampleT >, int > = 0>
class DynExpInstr::NumericSampleStream< SampleT, >
Implements a circular data stream based on Util::circularbuf using samples of an arithmetic type SampleT
.
- Template Parameters
-
SampleT | Arithmetic type of the samples stored in the data stream |
Definition at line 569 of file DataStreamInstrument.h.