module User.Elaforge.Config.Hobbes where
import qualified App.StaticConfig as StaticConfig
import qualified Cmd.Cmd as Cmd
import Global
midi_config :: Cmd.InstrumentDb -> StaticConfig.Midi
midi_config :: InstrumentDb -> Midi
midi_config InstrumentDb
_db = StaticConfig.Midi
{ rdev_map :: Map ReadDevice ReadDevice
rdev_map = [(Text, Text)] -> Map ReadDevice ReadDevice
StaticConfig.make_rdev_map [(Text, Text)]
rdev_map
, wdev_map :: Map WriteDevice WriteDevice
wdev_map = [(Text, Text)] -> Map WriteDevice WriteDevice
StaticConfig.make_wdev_map [(Text, Text)]
wdev_map
, read_devices :: Set ReadDevice
read_devices = [Text] -> Set ReadDevice
StaticConfig.make_read_devices [Text]
read_devices
}
iac, tapco, network :: Int -> Text
iac :: Int -> Text
iac Int
n = Text
"IAC Driver " forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> Text
showt Int
n
tapco :: Int -> Text
tapco Int
n = Text
"Tapco Link MIDI USB Ver 2.2 Port " forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> Text
showt Int
n
network :: Int -> Text
network Int
n = Text
"Network hobbes" forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> Text
showt Int
n
wdev_map :: [(Text, Text)]
wdev_map :: [(Text, Text)]
wdev_map = forall (t :: * -> *) a. Foldable t => t [a] -> [a]
concat
[ [(Text
"loop" forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> Text
showt Int
n, Int -> Text
iac Int
n) | Int
n <- [Int
1..Int
4]]
, [(Text
"net" forall a. Semigroup a => a -> a -> a
<> forall a. Show a => a -> Text
showt Int
n, Int -> Text
network Int
n) | Int
n <- [Int
1..Int
4]]
, [ (Text
"fm8", Text
"Native Instruments FM8 Virtual Input")
, (Text
"msv", Text
"Massive Virtual Input")
, (Text
"z1", Int -> Text
tapco Int
1)
, (Text
"vl1", Int -> Text
tapco Int
2)
, (Text
"morph", Int -> Text
tapco Int
3)
, (Text
"pc2496", Int -> Text
tapco Int
4)
]
]
rdev_map :: [(Text, Text)]
rdev_map :: [(Text, Text)]
rdev_map =
[ (Int -> Text
tapco Int
1, Text
"z1")
, (Int -> Text
tapco Int
2, Text
"vl1")
, (Int -> Text
tapco Int
3, Text
"morpheus")
, (Int -> Text
tapco Int
4, Text
"continuum")
]
read_devices :: [Text]
read_devices :: [Text]
read_devices =
[ Text
"USB Oxygen 8 v2"
, Text
"EDIROL UA-25"
, Text
"828mk2 MIDI Port"
] forall a. [a] -> [a] -> [a]
++ forall a b. (a -> b) -> [a] -> [b]
map Int -> Text
tapco [Int
1..Int
4]