Interface SampleBuilder<S extends SoundSample,B extends SampleBuilder<S,B>>

Type Parameters:
S - The SoundSample (sub-)type on which the SampleBuilder implementation is to operate on.
B - The SampleBuilder implementing this SampleBuilder.
All Superinterfaces:
org.refcodes.mixin.IndexAccessor, org.refcodes.mixin.IndexAccessor.IndexBuilder<B>, org.refcodes.mixin.IndexAccessor.IndexMutator, org.refcodes.mixin.IndexAccessor.IndexProperty, SamplingRateAccessor, SamplingRateAccessor.SamplingRateBuilder<B>, SamplingRateAccessor.SamplingRateMutator, SamplingRateAccessor.SamplingRateProperty, SoundSample, org.refcodes.mixin.TimeStampAccessor, org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B>, org.refcodes.mixin.TimeStampAccessor.TimeStampMutator, org.refcodes.mixin.TimeStampAccessor.TimeStampProperty
All Known Subinterfaces:
MonoSampleBuilder, SoundSampleBuilder
All Known Implementing Classes:
MonoSampleBuilderImpl, SoundSampleBuilderImpl

public interface SampleBuilder<S extends SoundSample,B extends SampleBuilder<S,B>> extends SoundSample, org.refcodes.mixin.IndexAccessor.IndexProperty, org.refcodes.mixin.IndexAccessor.IndexBuilder<B>, SamplingRateAccessor.SamplingRateProperty, SamplingRateAccessor.SamplingRateBuilder<B>, org.refcodes.mixin.TimeStampAccessor.TimeStampProperty, org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B>
Base interface for sample builders such as the MonoSampleBuilder or the SoundSampleBuilder.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.refcodes.mixin.IndexAccessor

    org.refcodes.mixin.IndexAccessor.IndexBuilder<B extends org.refcodes.mixin.IndexAccessor.IndexBuilder<B>>, org.refcodes.mixin.IndexAccessor.IndexMutator, org.refcodes.mixin.IndexAccessor.IndexProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.TimeStampAccessor

    org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B extends org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B>>, org.refcodes.mixin.TimeStampAccessor.TimeStampMutator, org.refcodes.mixin.TimeStampAccessor.TimeStampProperty
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Calculates the time stamp from the sampling rate and the index and sets the time stamp property (as of SoundSample.getTimeStamp()).

    Methods inherited from interface org.refcodes.mixin.IndexAccessor

    getIndex

    Methods inherited from interface org.refcodes.mixin.IndexAccessor.IndexBuilder

    withDecreaseIndex, withIncreaseIndex, withIndex

    Methods inherited from interface org.refcodes.mixin.IndexAccessor.IndexMutator

    decreaseIndex, increaseIndex, resetIndex, setIndex

    Methods inherited from interface org.refcodes.mixin.IndexAccessor.IndexProperty

    letIndex

    Methods inherited from interface org.refcodes.audio.SamplingRateAccessor

    getSamplingRate

    Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateBuilder

    withSamplingRate

    Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateMutator

    setSamplingRate

    Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateProperty

    letSamplingRate

    Methods inherited from interface org.refcodes.audio.SoundSample

    getChannelCount, getSampleData, getTimeStamp

    Methods inherited from interface org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder

    withTimeStamp

    Methods inherited from interface org.refcodes.mixin.TimeStampAccessor.TimeStampMutator

    setTimeStamp

    Methods inherited from interface org.refcodes.mixin.TimeStampAccessor.TimeStampProperty

    letTimeStamp
  • Method Details

    • updateTimeStamp

      default void updateTimeStamp()
      Calculates the time stamp from the sampling rate and the index and sets the time stamp property (as of SoundSample.getTimeStamp()).