 ;	float - peak percent CPU usage for signal processing
 ;	double - nominal sample rate
 ;	double - actual sample rate
-(defn status []
+(defn status 
+  "Check the status of the audio server."
+  []
   (if (= @status* :booted)
     (do 
       (snd "/status")

      (.run (Thread. #(wait-for-boot host port)))
      :booting))))

(defn quit
  "Quit the SuperCollider synth process."
  []

(defonce MAX-CONTROL-BUS 4096)
(defonce MAX-OSC-SAMPLES 8192)

; We use bit sets to store the allocation state of resources on the audio server.
; These typically get allocated on usage by the client, and then freed either by
; client request or automatically by receiving notifications from the server.  
; (e.g. When an envelope trigger fires to free a synth.)
(defonce allocator-bits 
  {:node (BitSet. MAX-NODES)
   :audio-buffer (BitSet. MAX-BUFFERS)
