module Sound.SC3.Server.Status where
import Sound.OpenSoundControl.Type
extractStatusField :: Int -> [Datum] -> Double
extractStatusField n = datum_real_err . (!! n)
statusFields :: [String]
statusFields = ["Unused ",
"# UGens ",
"# Synths ",
"# Groups ",
"# Instruments ",
"% CPU (Average) ",
"% CPU (Peak) ",
"Sample Rate (Nominal) ",
"Sample Rate (Actual) "]
statusFormat :: [Datum] -> [String]
statusFormat d =
let s = "***** SuperCollider Server Status *****"
in s : zipWith (++) (tail statusFields) (map show (tail d))