                                             (num-running-synths)])))
 
 (defn server-info
+  "Fetches a bunch of useful server info. Has to trigger and poll a synth to
+  fetch data. See #'server-num-output-buses, #'server-num-input-buses,
+  #'server-num-audio-buses and #'sever-num-buffers for fast cached versions
+  of the static values in this info map."
   []
   (when (disconnected?)
     (throw (Exception. "Please connect to a server before attempting to ask for server-info.")))

       (ref-set output-bus-count*  (:num-output-buses info))))))

(defn server-num-input-buses
  "Returns the number of input buses accessible by the server. This number may change depending on host architecture but is static for a given running server for the duration of boot."
  []
  (if-let [cnt @input-bus-count*]
    cnt

       (ref-set audio-bus-count*  (:num-audio-buses info))))))

(defn server-num-buffers
  "Returns the number of buffers accessible by the server. This number may
  change depending on host architecture but is static for a given running server
  for the duration of boot."
  []
  (if-let [cnt @buffer-count*]
    cnt
