OpenMusic-Library zur regelbasierten Harmonie und Stimmführung.
Lorenz Lehmann
20.11.23 9c112723cd2fe14ece8ca64f66f0e7cb47785f8d
commit | author | age
71cec5 1 ;======================================
MS 2 ;OM-Lead, 2022-2023
3 ;
4 ;Library for Rule-based Voice-Leading
5 ;Author: Lorenz Lehmann
6 ;Supervision: Marlon Schumacher
7 ;======================================
8
9
10 (defpackage :omlead) 
11 (in-package :omlead)
12
13 ;--------------------------------------------------
14 ;Variable definiton with files to load 
15 ;--------------------------------------------------
16
17
18 (defvar *initfile* *load-pathname*)
19
20 (defun lib-src-file (name)
21   (make-pathname :directory (append (pathname-directory *initfile*) (list "sources")) 
22                  :name name))
23
24 (defvar *OMLead-files* nil)
25 (setf *OMLead-files* '("harmon-database"
26                        "harmon-progress"
27                        "get-score"
28                        "harmon-rhythm"
29                       ))
30
31 ;--------------------------------------------------
32 ;Loading files 
33 ;--------------------------------------------------
34
35 (mapc #'(lambda (filename) 
36           (om::compile&load (namestring (lib-src-file filename))))
37       *OMLead-files*)
38
39 ;--------------------------------------------------
40 ; OM subpackages initialization
41 ; ("sub-pack-name" subpacke-lists class-list function-list class-alias-list)
42 ;--------------------------------------------------
43 (defvar *svppackages-list* nil)
44 (setf *subpackages-list* 
45       '((Nil Nil Nil (omlead::harmon-database omlead::harmon-progress omlead::get-score omlead::harmon-rhythm) Nil)))
46
47 ;--------------------------------------------------
48 ;filling packages
49 ;--------------------------------------------------
50 (om::fill-library *subpackages-list*)