204
204
between softwares, and MIDI protocol, for generating sound events and controlling process parameters. pyo allows
205
205
creation of sophisticated signal processing chains with all the benefits of a mature, and wild used, general programming language.
207
for key in sorted(OBJECTS_TREE.keys()):
208
f.write('\section[%s</A> : %s]{%s}\n\n' % (key, getDocFirstLine(key), key))
207
for key in ['Server', 'Stream', 'TableStream', 'PyoObjectBase', 'Map', 'functions']:
208
f.write('\chapter[%s</A> : %s]{%s}\n\n' % (key, getDocFirstLine(key), key))
209
209
f.write(getDoc(key))
210
210
if type(OBJECTS_TREE[key]) == ListType:
211
211
for obj in OBJECTS_TREE[key]:
212
f.write('\subsection[%s</A> : %s]{%s}\n\n' % (obj, getDocFirstLine(obj), obj))
212
f.write('\section[%s</A> : %s]{%s}\n\n' % (obj, getDocFirstLine(obj), obj))
213
213
f.write(getDoc(obj))
215
for key2 in sorted(OBJECTS_TREE[key]):
216
f.write('\subsection[%s</A> : %s]{%s}\n\n' % (key2, getDocFirstLine(key2), key2))
215
if key == 'Map': key2list = ['SLMap']
216
else: key2list = ['PyoMatrixObject', 'PyoTableObject', 'PyoObject']
217
for key2 in key2list:
218
f.write('\section[%s</A> : %s]{%s}\n\n' % (key2, getDocFirstLine(key2), key2))
217
219
f.write(getDoc(key2))
218
for obj in OBJECTS_TREE[key][key2]:
219
f.write('\subsubsection[%s</A> : %s]{%s}\n\n' % (obj, getDocFirstLine(obj), obj))
220
if type(OBJECTS_TREE[key][key2]) == ListType:
221
for obj in OBJECTS_TREE[key][key2]:
222
f.write('\subsection[%s</A> : %s]{%s}\n\n' % (obj, getDocFirstLine(obj), obj))
225
for key3 in sorted(OBJECTS_TREE[key][key2]):
226
f.write('\subsection[%s</A> : %s]{%s}\n\n' % (key3, getDocFirstLine(key3), key3))
227
f.write(getDoc(key3))
228
for obj in OBJECTS_TREE[key][key2][key3]:
229
f.write('\subsubsection[%s</A> : %s]{%s}\n\n' % (obj, getDocFirstLine(obj), obj))
222
233
f.write('\end{document}\n')