list_sample_slots/
list_sample_slots.rs

1/*
2SPDX-License-Identifier: GPL-3.0-or-later
3Copyright © 2024 Mike Robeson [dijksterhuis]
4*/
5mod helpers;
6use helpers::*;
7
8use ot_tools_io::{OctatrackFileIO, ProjectFile};
9use std::path::PathBuf;
10
11#[derive(Debug)]
12#[allow(dead_code)]
13struct Metadata {
14    header: String,
15    datatype_version: u8,
16}
17
18// read different data files and print some metadata
19fn main() -> RBoxErr<()> {
20    let blank_project_dirpath = PathBuf::from("test-data").join("blank-project");
21    let project_fpath = blank_project_dirpath.join("project.work");
22    let project = ProjectFile::from_data_file(&project_fpath)?;
23
24    println!("====================================");
25    println!("|       Project Sample Slots       |");
26    println!("====================================");
27    println!("-------------- Static --------------");
28    for (idx, sample_slot) in project.slots.static_slots.iter().enumerate() {
29        println!("Static Slot {}: {sample_slot:?}", idx + 1)
30    }
31    println!("--------------- Flex ---------------");
32    for (idx, sample_slot) in project.slots.flex_slots.iter().enumerate() {
33        println!("Flex Slot {}: {sample_slot:?}", idx + 1)
34    }
35    Ok(())
36}