ot-tools-io 0.11.2

A library crate for reading/writing binary data files used by the Elektron Octatrack DPS-1.
Documentation
/*
SPDX-License-Identifier: GPL-3.0-or-later
Copyright © 2024 Mike Robeson [dijksterhuis]
*/

use ot_tools_io::types::SlotMarkers;
use ot_tools_io::types::{Slice, Slices};
use ot_tools_io::{OctatrackFileIO, OtToolsIoError, SampleSettingsFile};
use std::fs::create_dir_all;

fn main() -> Result<(), OtToolsIoError> {
    let outpath = std::env::temp_dir()
        .join("ot-tools-io")
        .join("examples")
        .join("create_sample_settings_file");

    let marks = SlotMarkers {
        trim_offset: 0,
        trim_end: 50000,
        loop_point: 0,
        slices: Slices::<Slice>::default(),
        slice_count: 0,
    };

    let ss_f = SampleSettingsFile::new(marks, None, None, None, None, None, None, None)?;

    create_dir_all(&outpath)?;
    ss_f.to_data_file(&outpath.join("sample.ot"))?;

    println!("created new settings file at: {outpath:?}");

    Ok(())
}