r10451: add digital cameras
[cl-photo.git] / cameras.lisp
index c10e2839f8447821c247a1fb8cc5a5d73ace2719..c084fec013014d84e4b17cd20e6014a7247577f1 100644 (file)
    #.(make-output-format 24 36)
   ))
 
+(defvar *digital-cameras*
+  (sort (loop for format in +format-db+
+             when (getf format :pixels)
+             collect format)
+       (lambda (a b)
+         (block nil
+           (when (and (getf a :make) (getf b :make))
+             (cond
+               ((string-greaterp (getf a :make) (getf b :make))
+                (return t))
+               ((string-lessp (getf a :make) (getf b :make))
+                (return nil))))
+           (when (and (getf a :name) (getf b :name))
+             (cond
+               ((string-lessp (getf a :name) (getf b :name))
+                (return t))
+               ((string-greaterp (getf a :name) (getf b :name))
+                (return nil))))))))
+  
+
 (defun format-match-p (format-spec format)
   (when (or (eql format-spec (getf format :format))
             (member format-spec (getf format :nicks)))