pub struct BankFile {
pub header: [u8; 21],
pub datatype_version: u8,
pub patterns: PatternArray,
pub parts: Parts,
pub parts_saved_state: [u8; 4],
pub parts_edited_bitmask: u8,
pub part_names: [[u8; 7]; 4],
pub checksum: u16,
}Expand description
An Octatrack Bank. Contains data related to Parts and Patterns.
Fields§
§header: [u8; 21]Misc header data for Banks. Always follows the same format.
datatype_version: u8§patterns: PatternArrayPattern data for a Bank.
parts: PartsAll part data for this bank, includes currently unsaved and previously saved state
parts_saved_state: [u8; 4]Indicates which parts have previously saved state available for reloading.
parts_edited_bitmask: u8Bit mask indicating which parts are currently in an edited state.
parts
1 2 3 4 | mask
--------|------
- - - - | 0
x - - - | 1
- x - - | 2
- - x - | 4
- - - x | 8
--------|------
x x - - | 3
x - x - | 5
- x x - | 6
x x x - | 7
x - - x | 9
- x - x | 10
x x - x | 11
- - x x | 12
- x x x | 14
x x x x | 15part_names: [[u8; 7]; 4]Names for each Part within the Bank. Maximum 7 character length.
checksum: u16checksum bytes
Trait Implementations§
Source§impl CheckFileIntegrity for BankFile
impl CheckFileIntegrity for BankFile
Source§fn check_integrity(&self) -> Result<bool, OtToolsIoError>
fn check_integrity(&self) -> Result<bool, OtToolsIoError>
Source§impl<'de> Deserialize<'de> for BankFile
impl<'de> Deserialize<'de> for BankFile
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl HasChecksumField for BankFile
impl HasChecksumField for BankFile
Source§fn calculate_checksum(&self) -> Result<u16, OtToolsIoError>
fn calculate_checksum(&self) -> Result<u16, OtToolsIoError>
Method for calculating the checksum value for types that have a checksum field Read more
Source§fn check_checksum(&self) -> Result<bool, OtToolsIoError>
fn check_checksum(&self) -> Result<bool, OtToolsIoError>
Method to verify if checksum is valid in some data type.
See this thread. Read more
Source§impl HasFileVersionField for BankFile
impl HasFileVersionField for BankFile
Source§fn check_file_version(&self) -> Result<bool, OtToolsIoError>
fn check_file_version(&self) -> Result<bool, OtToolsIoError>
Method to verify if the data file version field is valid for the given type. Read more
Source§impl HasHeaderField for BankFile
impl HasHeaderField for BankFile
Source§fn check_header(&self) -> Result<bool, OtToolsIoError>
fn check_header(&self) -> Result<bool, OtToolsIoError>
Method to verify if header(s) are valid in some data.
See this thread. Read more
Source§impl OctatrackFileIO for BankFile
impl OctatrackFileIO for BankFile
Source§fn repr(&self, newlines: Option<bool>)where
Self: Debug,
fn repr(&self, newlines: Option<bool>)where
Self: Debug,
Read type from an Octatrack data file at path Read more
Source§fn from_data_file(path: &Path) -> Result<Self, OtToolsIoError>
fn from_data_file(path: &Path) -> Result<Self, OtToolsIoError>
Read type from an Octatrack data file at path Read more
Source§fn from_bytes(bytes: &[u8]) -> Result<Self, OtToolsIoError>
fn from_bytes(bytes: &[u8]) -> Result<Self, OtToolsIoError>
Read type from bytes Read more
Source§fn to_data_file(&self, path: &Path) -> Result<(), OtToolsIoError>
fn to_data_file(&self, path: &Path) -> Result<(), OtToolsIoError>
Write type to an Octatrack data file at path Read more
Source§fn from_yaml_file(path: &Path) -> Result<Self, OtToolsIoError>
fn from_yaml_file(path: &Path) -> Result<Self, OtToolsIoError>
Read type from a YAML file at path Read more
Source§fn from_yaml_str(yaml: &str) -> Result<Self, OtToolsIoError>
fn from_yaml_str(yaml: &str) -> Result<Self, OtToolsIoError>
Read type from YAML string Read more
Source§fn to_yaml_file(&self, path: &Path) -> Result<(), OtToolsIoError>
fn to_yaml_file(&self, path: &Path) -> Result<(), OtToolsIoError>
Write type to a YAML file at path Read more
Source§fn to_yaml_string(&self) -> Result<String, OtToolsIoError>
fn to_yaml_string(&self) -> Result<String, OtToolsIoError>
Create YAML string from type Read more
Source§fn from_json_file(path: &Path) -> Result<Self, OtToolsIoError>
fn from_json_file(path: &Path) -> Result<Self, OtToolsIoError>
Read type from a JSON file at path
Source§fn from_json_str(json: &str) -> Result<Self, OtToolsIoError>
fn from_json_str(json: &str) -> Result<Self, OtToolsIoError>
Create type from JSON string Read more
Source§fn to_json_file(&self, path: &Path) -> Result<(), OtToolsIoError>
fn to_json_file(&self, path: &Path) -> Result<(), OtToolsIoError>
Write type to a JSON file at path Read more
Source§fn to_json_string(&self) -> Result<String, OtToolsIoError>
fn to_json_string(&self) -> Result<String, OtToolsIoError>
Create JSON string from type Read more
impl StructuralPartialEq for BankFile
Auto Trait Implementations§
impl Freeze for BankFile
impl RefUnwindSafe for BankFile
impl Send for BankFile
impl Sync for BankFile
impl Unpin for BankFile
impl UnwindSafe for BankFile
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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