Struct jack::client::ProcessScope
[−]
[src]
pub struct ProcessScope { /* fields omitted */ }
ProcessScope
provides information on the client and frame time information within a process
callback.
Methods
impl ProcessScope
[src]
fn n_frames(&self) -> JackFrames
The number of frames in the current process cycle.
fn last_frame_time(&self) -> JackFrames
The precise time at the start of the current process cycle. This function may only be used
from the process callback, and can be used to interpret timestamps generated by
self.frame_time()
in other threads, with respect to the current process cycle.
fn frames_since_cycle_start(&self) -> JackFrames
The estimated time in frames that has passed since the JACK server began the current process cycle.
fn cycle_times(&self) -> Result<CycleTimes, JackErr>
Provides the internal cycle timing information as used by most of the other time related functions. This allows the caller to map between frame counts and microseconds with full precision (i.e. without rounding frame times to integers), and also provides e.g. the microseconds time of the start of the current cycle directly (it has to be computed otherwise).
Err(JackErr::TimeError)
is returned on failure.
TODO - implement, weakly exported in JACK, so it is not defined to always be available.
fn client_ptr(&self) -> *mut jack_client_t
Expose the client_ptr
for low level purposes.
This is mostly for use within the jack crate itself.
unsafe fn from_raw(n_frames: JackFrames, client_ptr: *mut jack_client_t) -> Self
Create a ProcessScope
for the client with the given pointer and the specified amount of
frames.
This is mostly for use within the jack crate itself.