Struct rsynth::backend::vst_backend::vst::api::TimeInfo[]

#[repr(C)]pub struct TimeInfo {
    pub sample_pos: f64,
    pub sample_rate: f64,
    pub nanoseconds: f64,
    pub ppq_pos: f64,
    pub tempo: f64,
    pub bar_start_pos: f64,
    pub cycle_start_pos: f64,
    pub cycle_end_pos: f64,
    pub time_sig_numerator: i32,
    pub time_sig_denominator: i32,
    pub smpte_offset: i32,
    pub smpte_frame_rate: SmpteFrameRate,
    pub samples_to_next_clock: i32,
    pub flags: i32,
}

Describes the time at the start of the block currently being processed

Fields

sample_pos: f64

current Position in audio samples (always valid)

sample_rate: f64

current Sample Rate in Hertz (always valid)

nanoseconds: f64

System Time in nanoseconds (10^-9 second)

ppq_pos: f64

Musical Position, in Quarter Note (1.0 equals 1 Quarter Note)

tempo: f64

current Tempo in BPM (Beats Per Minute)

bar_start_pos: f64

last Bar Start Position, in Quarter Note

cycle_start_pos: f64

Cycle Start (left locator), in Quarter Note

cycle_end_pos: f64

Cycle End (right locator), in Quarter Note

time_sig_numerator: i32

Time Signature Numerator (e.g. 3 for 3/4)

time_sig_denominator: i32

Time Signature Denominator (e.g. 4 for 3/4)

smpte_offset: i32

SMPTE offset in SMPTE subframes (bits; 1/80 of a frame). The current SMPTE position can be calculated using sample_pos, sample_rate, and smpte_frame_rate.

smpte_frame_rate: SmpteFrameRate

See SmpteFrameRate

samples_to_next_clock: i32

MIDI Clock Resolution (24 Per Quarter Note), can be negative (nearest clock)

flags: i32

See TimeInfoFlags

Trait Implementations

impl Clone for TimeInfo

impl Copy for TimeInfo

impl Default for TimeInfo

Auto Trait Implementations

impl RefUnwindSafe for TimeInfo

impl Send for TimeInfo

impl Sync for TimeInfo

impl Unpin for TimeInfo

impl UnwindSafe for TimeInfo

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<S, T> Duplex<S> for T where
    T: FromSample<S> + ToSample<S>, 

impl<T> From<T> for T[src]

impl<S> FromSample<S> for S

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> ToSample<U> for T where
    U: FromSample<T>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.