firewire_fireworks_protocols/
rip.rs1use super::{robot_guitar::*, *};
10
11#[derive(Default, Debug)]
31pub struct RipProtocol;
32
33impl EfwHardwareSpecification for RipProtocol {
34 const SUPPORTED_SAMPLING_RATES: &'static [u32] = &[44100, 48000, 88200, 96000, 176400, 192000];
35 const SUPPORTED_SAMPLING_CLOCKS: &'static [ClkSrc] =
36 &[ClkSrc::Internal, ClkSrc::WordClock, ClkSrc::Spdif];
37 const CAPABILITIES: &'static [HwCap] = &[
38 HwCap::ChangeableRespAddr,
39 HwCap::Fpga,
40 HwCap::RobotGuitar,
41 HwCap::GuitarCharging,
42 ];
43 const TX_CHANNEL_COUNTS: [usize; 3] = [8, 8, 8];
44 const RX_CHANNEL_COUNTS: [usize; 3] = [2, 2, 2];
45 const MONITOR_SOURCE_COUNT: usize = 8;
46 const MONITOR_DESTINATION_COUNT: usize = 2;
47 const MIDI_INPUT_COUNT: usize = 0;
48 const MIDI_OUTPUT_COUNT: usize = 0;
49
50 const PHYS_INPUT_GROUPS: &'static [(PhysGroupType, usize)] = &[
51 (PhysGroupType::Guitar, 1),
52 (PhysGroupType::PiezoGuitar, 1),
53 (PhysGroupType::GuitarString, 6),
54 ];
55
56 const PHYS_OUTPUT_GROUPS: &'static [(PhysGroupType, usize)] = &[(PhysGroupType::Analog, 2)];
57}
58
59impl EfwPlaybackSoloSpecification for RipProtocol {}
60
61impl EfwRobotGuitarSpecification for RipProtocol {}