pub struct PatternRow {}Expand description
Pattern Row = play this pattern, with these settings, when playing this row of the arrangement. Pretty simple.
Does not have any new methods – create the struct by hand.
Fields§
§pattern_id: u8Which Pattern should be played at this point. Patterns are indexed from 0 (A01) -> 256 (P16).
§Validation
Checked by the Self::validate method
repetitions: u8§unused_1: u8§mute_mask: u8How track muting is applied during this arrangement row.
§Validation
Not checked by the Self::validate method
unused_2: u8§tempo_1: u8First part of the Tempo mask for this row.
Needs to be combined with tempo_2 to work out the actual tempo (not sure how it works yet).
§Validation
Not checked by the Self::validate method
tempo_2: u8Second part of the Tempo mask for this row.
Needs to be combined with tempo_1 to work out the actual tempo (not sure how it works yet).
§Validation
Not checked by the Self::validate method
scene_a: u8Which scene is assigned to Scene slot A when this arrangement row is playing.
§Validation
Checked by the Self::validate method
scene_b: u8Which scene is assigned to Scene slot B when this arrangement row is playing.
§Validation
Checked by the Self::validate method
unused_3: u8§offset: u8Which trig to start Playing the pattern on. todo: is there a maximum for this?
§Validation
Not (currently) checked by the Self::validate method
unused_4: u8§length: u8How many trigs to play the pattern for.
Note that this value always has offset added to it.
So a length on the machine display of 64 when the offset is 32 will result in a value of 96 in the file data.
todo: is there a maximum for this?
§Validation
Not (currently) checked by the Self::validate method
midi_transpose: [u8; 8]MIDI Track transposes for all 8 midi channels.
- 0 -> no transpose
- 1 -> 48 values are positive transpose settings
- 255 (-1) -> 207 (-48) values are negative transpose settings.
§Validation
Checked by the Self::validate method
Implementations§
Source§impl PatternRow
impl PatternRow
Trait Implementations§
Source§impl AsMut<PatternRow> for PatternRow
impl AsMut<PatternRow> for PatternRow
Source§fn as_mut(&mut self) -> &mut PatternRow
fn as_mut(&mut self) -> &mut PatternRow
Source§impl AsRef<PatternRow> for PatternRow
impl AsRef<PatternRow> for PatternRow
Source§fn as_ref(&self) -> &PatternRow
fn as_ref(&self) -> &PatternRow
Source§impl Clone for PatternRow
impl Clone for PatternRow
Source§fn clone(&self) -> PatternRow
fn clone(&self) -> PatternRow
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for PatternRow
Source§impl Debug for PatternRow
impl Debug for PatternRow
Source§impl<'de> Deserialize<'de> for PatternRow
impl<'de> Deserialize<'de> for PatternRow
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for PatternRow
Source§impl Hash for PatternRow
impl Hash for PatternRow
Source§impl Ord for PatternRow
impl Ord for PatternRow
Source§fn cmp(&self, other: &PatternRow) -> Ordering
fn cmp(&self, other: &PatternRow) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for PatternRow
impl PartialEq for PatternRow
Source§impl PartialOrd for PatternRow
impl PartialOrd for PatternRow
Source§impl Serialize for PatternRow
impl Serialize for PatternRow
impl StructuralPartialEq for PatternRow
Auto Trait Implementations§
impl Freeze for PatternRow
impl RefUnwindSafe for PatternRow
impl Send for PatternRow
impl Sync for PatternRow
impl Unpin for PatternRow
impl UnsafeUnpin for PatternRow
impl UnwindSafe for PatternRow
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more