forked from cuthbertLab/music21
/
__init__.py
executable file
·170 lines (152 loc) · 4.55 KB
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# -*- coding: utf-8 -*-
'''
The music21 Framework is Copyright © 2008-2013 Michael Scott Cuthbert
and the music21 Project
(Michael Scott Cuthbert, principal investigator; cuthbert@mit.edu)
Some Rights Reserved
Released under the Lesser GNU Public License (LGPL)
See license.txt file for the full license which represents your legal
obligations in using, modifying, or distributing music21.
Roughly speaking, this means that anyone can use this software for
free, they can distribute it to anyone, so long as this acknowledgment
of copyright and ownership remain publicly accessible. You may also
modify this software or use it in your own programs so long as you do
so long as you make your product available
under the same license. You may also link to this code as a library
from your sold, proprietary commercial product so long as this code
remains open and accessible, this license is made accessible,
and the developers are credited.
The development of music21 was supported by grants
from the Seaver Institute and the NEH/Digging into Data Challenge,
with the support of the MIT
Music and Theater Arts section and the School of Humanities, Arts,
and Social Sciences. Portions of music21 were originally part of
the PMusic (Perl) library, developed by Cuthbert prior to arriving at MIT.
music21 outputs a subset of XML data defined by the MusicXML 2.0
standard, Copyright © Recordare LLC; License available at
http://www.recordare.com/dtds/license.html, now transferred to MakeMusic
music21 incorporates Microsoft Excel reading via the included
xlrd library:
Portions copyright (c) 2005-2006, Stephen John Machin, Lingfo Pty Ltd
All rights reserved.
see ext/xlrd/licenses.py for the complete disclaimer and conditions
Files in the ext/ folder are not copyright music21 Project but whose distribution
is compatible with music21. The corpus files have copyrights retained by their
owners who have allowed them to be included with music21.
'''
# this defines what is loaded when importing __all__
# put these in alphabetical order FIRST dirs then modules
# but: base must come first; in some cases other modules depend on
# definitions in base
__all__ = [
'base',
# sub folders
'abcFormat',
'analysis',
'audioSearch',
'braille',
'capella',
'composition',
'counterpoint',
'corpus',
'demos',
'documentation',
'features',
'figuredBass',
'humdrum',
'ipython21',
'languageExcerpts',
'lily',
'midi',
'musedata',
'musicxml',
'noteworthy',
'romanText',
'scala', 'search',
'test',
'theoryAnalysis',
'trecento',
'vexflow',
'webapps',
# individual modules
# KEEP ALPHABETICAL unless necessary for load reasons, if so
# put a note. Keep one letter per line.
'articulations',
'bar',
# base listed above
'beam',
'chant',
'chord',
'chordTables',
'classCache',
'clef',
'common',
'configure',
'contour',
'converter',
'defaults',
'derivation',
'duration',
'dynamics',
'editorial',
'environment',
'exceptions21',
'expressions',
'freezeThaw',
'graph',
'harmony',
'instrument',
'interval',
'intervalNetwork',
'key',
'layout',
'medren',
'metadata',
'meter',
'note',
'pitch',
'repeat',
'roman',
'scale',
'serial',
'sieve',
'spanner',
'stream',
'tempo',
'text',
'tie',
'tinyNotation',
'variant',
'voiceLeading',
'volume',
'xmlnode',
]
#__all__.reverse()
#print __all__
# skipped purposely, "base", "xmlnode"
#-------------------------------------------------------------------------------
# for sub packages, need to manually add the modules in these subpackages
#from music21.analysis import *
#import sys
#x = sys.stdout
#-------------------------------------------------------------------------------
# base Music21Object -- all objects should inherit from this!
import base
from base import *
#del(types)
#del(sys)
#del(imp)
#del(doctest)
#del(copy)
#del(codecs)
#del(unittest)
#-------------------------------------------------------------------------------
# place the parse function directly in the music21 namespace
# this cannot go in music21/base.py
#import converter
#parse = converter.parse
#------------------------------------------------------------------------------
# this bring all of the __all__ names into the music21 package namespace
from music21 import * # @UnresolvedImport
#------------------------------------------------------------------------------
# eof