# HG changeset patch # User j.forth # Date 1298546598 0 # Node ID c9573d61b1b9f0e18b2d939e97aac5296c3f7e20 # Parent 16b99fc989aa10300dd71214142813bad60a11a6 twiddle meredith import functions Ignore-this: e28a31418c8e60420bd84047d9110a13 darcs-hash:20090918124512-16a00-6354c6e9942caba1496caaac990d1f6985bfa17b.gz committer: Jamie Forth diff -r 16b99fc989aa -r c9573d61b1b9 implementations/meredith/import->db.lisp --- a/implementations/meredith/import->db.lisp Thu Feb 24 11:23:18 2011 +0000 +++ b/implementations/meredith/import->db.lisp Thu Feb 24 11:23:18 2011 +0000 @@ -10,7 +10,7 @@ (princ-to-string file-id) file-suffix))) -(defun file->list-of-lists (path) +(defun raph-c-file->list-of-lists (path) (with-open-file (stream path) (loop for row-strings = (split-sequence:split-sequence @@ -73,16 +73,17 @@ (defun import-bach-inv+sin (&optional (database *amuse-database*)) "Imports all of Dave's encodings of Bach's Inventions and Sinfonias, -and assigns them all so a unique dataset." +and assigns them all to a unique dataset." (clsql:with-transaction (:database database) - (let ((dataset-identifier (make-new-dataset + (let ((amuse-dataset-identifier (make-new-dataset "Bach Inventions and Sinfonias" database))) - (import-bach-inventions database dataset-identifier) - (import-bach-sinfonias database dataset-identifier)))) + (import-bach-inventions database amuse-dataset-identifier) + (import-bach-sinfonias database amuse-dataset-identifier) + amuse-dataset-identifier))) -(defun import-bach-inventions (database &optional dataset-identifier) +(defun import-bach-inventions (database &optional amuse-dataset-identifier) "Imports all of Dave's encodings of Bach's Inventions." (let ((base-path "/home/jamie/Music/meredith-data/20060301raph-c/") (file-prefix "bachrasmussinventio0") @@ -91,7 +92,7 @@ for composition-order from 1 for composition-identifier = (import-meredith-composition - (file->list-of-lists + (raph-c-file->list-of-lists (make-path base-path file-prefix file-id file-suffix)) :description (concatenate 'string "Bach Invention No." @@ -99,11 +100,11 @@ " BWV " (princ-to-string file-id)) :database database) - do (when dataset-identifier + do (when amuse-dataset-identifier (assign-composition-to-dataset - composition-identifier dataset-identifier database))))) + composition-identifier amuse-dataset-identifier database))))) -(defun import-bach-sinfonias (database &optional dataset-identifier) +(defun import-bach-sinfonias (database &optional amuse-dataset-identifier) "Imports all of Dave's encodings of Bach's Sinfonias." (let ((base-path "/home/jamie/Music/meredith-data/20060301raph-c/") (file-prefix "bachrasmusssinfonie0") @@ -112,7 +113,7 @@ for composition-order from 1 for composition-identifier = (import-meredith-composition - (file->list-of-lists + (raph-c-file->list-of-lists (make-path base-path file-prefix file-id file-suffix)) :description (concatenate 'string "Bach Sinfonia No." @@ -120,6 +121,6 @@ " BWV " (princ-to-string file-id)) :database database) - do (when dataset-identifier + do (when amuse-dataset-identifier (assign-composition-to-dataset - composition-identifier dataset-identifier database))))) + composition-identifier amuse-dataset-identifier database))))) diff -r 16b99fc989aa -r c9573d61b1b9 implementations/meredith/tests/import-raph-c-data.lisp --- a/implementations/meredith/tests/import-raph-c-data.lisp Thu Feb 24 11:23:18 2011 +0000 +++ b/implementations/meredith/tests/import-raph-c-data.lisp Thu Feb 24 11:23:18 2011 +0000 @@ -2,17 +2,16 @@ (asdf:oos 'asdf:load-op 'amuse-meredith) -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(connect-to-database :database-name "test") + ;; Tell the database about the new implementation. (amuse-database-admin:register-new-implementation *package*) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Add the datasets to the database -(connect-to-database :database-name "test") - (create-meredith-tables *amuse-database*) -(import-bach-inv+sin *amuse-database*) +(import-bach-inv+sin *amuse-database*) ; FIXME: return an identifier. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Retrieve compositions