r11851: add cl-kmrcl dependency
[cl-photo.git] / cameras.lisp
index 57ef380e87aededf638e654fda678e0fea8abd72..118f48aa76ddb39e09b34733af1d67a32ceeb341 100644 (file)
 
 (eval-when (:compile-toplevel :load-toplevel :execute)
   (defun make-output-format (w h &key (units :inches))
-    (let ((name (format nil "~Dx~Din" w h)))
+    (let ((name (format nil "~Dx~D~A" w h
+                       (ecase units
+                         (:inches "in")
+                         (:mm "mm")
+                         (:cm "cm")
+                         (:m "m")
+                         (:feet "ft")))))
       (list :format (kmrcl:ensure-keyword name)
-            :output (cons (inches->mm w) (inches->mm h))
+            :output (cons (length->mm w units) (length->mm h units))
             :name name
             :nicks (list (kmrcl:ensure-keyword (format nil "~Dx~D" w h)))))))
 
@@ -43,6 +49,7 @@
     (:format :d60 :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "D60")
     (:format :10d :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "10D")
     (:format :20d :make "Canon" :pixels (3456 . 2304) :imager (22.5 . 15) :name "20D")
+    (:format :5d :make "Canon" :pixels (4368 . 2912) :imager (35.8 . 23.9) :name "5D")
     (:format :300d :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "300D")
     (:format :350d :make "Canon" :pixels (3456 . 2304) :imager (22.2 . 14.8) :name "350D")
     (:format :1d :make "Canon" :pixels (2464 . 1648) :imager (27 . 17.8) :name "1D")
@@ -51,7 +58,8 @@
     (:format :1ds :make "Canon" :pixels (4064 . 3328) :imager (36 . 24) :name "1Ds")
     (:format :1dsmkii :make "Canon" :pixels (4992 . 3328) :imager (36 . 24)
     :name "1Ds Mark II" :nicks (:1ds2 :1dsii))
-    
+    (:format :g7 :make "Canon" :pixels (3648 . 2736) :imager (7.2 . 5.3)
+             :name "PowerShot G7")
     (:format :ndigital :make "Contax" :pixels (3040 . 2008) :imager (36 . 24)
      :name "N Digital")