Struct ukebox::voicing_graph::VoicingGraph[][src]

pub struct VoicingGraph { /* fields omitted */ }
Expand description

A graph whose nodes represent chord voicings and whose edges are weighted by the distances between the voicings. It is used to find the (by some definition) optimal voice leading for a given sequence of chords.

Implementations

impl VoicingGraph[src]

pub fn new(config: VoicingConfig) -> Self[src]

pub fn add(&mut self, chord_seq: &ChordSequence)[src]

pub fn paths(
    &self,
    max_suggestions: usize
) -> impl Iterator<Item = (Vec<Voicing>, Distance)> + '_
[src]

Return an iterator over the paths between the voicing nodes. The path with the lowest distance is presented first. If several paths have the same overall distance, they are further ranked by fingering distance.

Auto Trait Implementations

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.