 
 (defn input-stream
   "Attempts to coerce the given argument to an InputStream, with added
-  support for gzipped files."
+  support for gzipped files. If the input argument does point to a
+  gzipped file, the default buffer will be sized to fit one NOAA
+  PREC/L binary data file at 0.5 degree resolution, or 24 groups of (*
+  360 720) floats. To make sure that the returned GZIPInputStream will
+  fully read into a supplied byte array, see forma.rain/force-fill."
   [arg]
   (let [^InputStream stream (io/input-stream arg)
         rainbuf-size (* 24 (floats-for-res forma-res))]


(def map-dimensions [180 360])
(def forma-res 0.5)

(defn dimensions-at-res
  "returns the pixel dimensions at the specified pixel width (in degrees)."

  (let [bytes (get-bytes stream)]
    (rain-tuples (input-stream bytes))))

(defmapcatop [rain-chunks [chunk-size]]
  ^{:doc "Takes in data for a single month of rain data, and converts
  it into chunks for use in FORMA."}
