midilib 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. data/Credits +5 -0
  2. data/README.rdoc +7 -0
  3. data/lib/midilib/event.rb +37 -10
  4. data/lib/midilib/info.rb +1 -1
  5. data/lib/midilib/track.rb +15 -2
  6. data/test/test_event.rb +29 -0
  7. data/test/test_io.rb +7 -0
  8. data/test/test_track.rb +5 -0
  9. metadata +2 -301
  10. data/html/classes/IO.html +0 -137
  11. data/html/classes/IO.src/M000001.html +0 -20
  12. data/html/classes/MIDI/ActiveSense.html +0 -156
  13. data/html/classes/MIDI/ActiveSense.src/M000160.html +0 -18
  14. data/html/classes/MIDI/ActiveSense.src/M000161.html +0 -18
  15. data/html/classes/MIDI/ChannelEvent.html +0 -179
  16. data/html/classes/MIDI/ChannelEvent.src/M000132.html +0 -20
  17. data/html/classes/MIDI/ChannelEvent.src/M000133.html +0 -18
  18. data/html/classes/MIDI/ChannelPressure.html +0 -184
  19. data/html/classes/MIDI/ChannelPressure.src/M000092.html +0 -19
  20. data/html/classes/MIDI/ChannelPressure.src/M000093.html +0 -20
  21. data/html/classes/MIDI/ChannelPressure.src/M000094.html +0 -18
  22. data/html/classes/MIDI/Clock.html +0 -156
  23. data/html/classes/MIDI/Clock.src/M000148.html +0 -18
  24. data/html/classes/MIDI/Clock.src/M000149.html +0 -18
  25. data/html/classes/MIDI/Continue.html +0 -156
  26. data/html/classes/MIDI/Continue.src/M000146.html +0 -18
  27. data/html/classes/MIDI/Continue.src/M000147.html +0 -18
  28. data/html/classes/MIDI/Controller.html +0 -189
  29. data/html/classes/MIDI/Controller.src/M000137.html +0 -21
  30. data/html/classes/MIDI/Controller.src/M000138.html +0 -21
  31. data/html/classes/MIDI/Controller.src/M000139.html +0 -18
  32. data/html/classes/MIDI/Event.html +0 -507
  33. data/html/classes/MIDI/Event.src/M000169.html +0 -30
  34. data/html/classes/MIDI/Event.src/M000170.html +0 -18
  35. data/html/classes/MIDI/Event.src/M000171.html +0 -18
  36. data/html/classes/MIDI/Event.src/M000172.html +0 -18
  37. data/html/classes/MIDI/Event.src/M000173.html +0 -18
  38. data/html/classes/MIDI/Event.src/M000174.html +0 -18
  39. data/html/classes/MIDI/Event.src/M000175.html +0 -18
  40. data/html/classes/MIDI/Event.src/M000176.html +0 -18
  41. data/html/classes/MIDI/Event.src/M000177.html +0 -18
  42. data/html/classes/MIDI/Event.src/M000178.html +0 -18
  43. data/html/classes/MIDI/Event.src/M000179.html +0 -18
  44. data/html/classes/MIDI/Event.src/M000180.html +0 -18
  45. data/html/classes/MIDI/Event.src/M000181.html +0 -22
  46. data/html/classes/MIDI/Event.src/M000182.html +0 -18
  47. data/html/classes/MIDI/Event.src/M000183.html +0 -18
  48. data/html/classes/MIDI/Event.src/M000184.html +0 -19
  49. data/html/classes/MIDI/Event.src/M000185.html +0 -18
  50. data/html/classes/MIDI/IO/MIDIFile.html +0 -959
  51. data/html/classes/MIDI/IO/MIDIFile.src/M000031.html +0 -22
  52. data/html/classes/MIDI/IO/MIDIFile.src/M000032.html +0 -24
  53. data/html/classes/MIDI/IO/MIDIFile.src/M000033.html +0 -19
  54. data/html/classes/MIDI/IO/MIDIFile.src/M000034.html +0 -20
  55. data/html/classes/MIDI/IO/MIDIFile.src/M000035.html +0 -19
  56. data/html/classes/MIDI/IO/MIDIFile.src/M000036.html +0 -17
  57. data/html/classes/MIDI/IO/MIDIFile.src/M000037.html +0 -17
  58. data/html/classes/MIDI/IO/MIDIFile.src/M000038.html +0 -17
  59. data/html/classes/MIDI/IO/MIDIFile.src/M000039.html +0 -17
  60. data/html/classes/MIDI/IO/MIDIFile.src/M000040.html +0 -17
  61. data/html/classes/MIDI/IO/MIDIFile.src/M000041.html +0 -17
  62. data/html/classes/MIDI/IO/MIDIFile.src/M000042.html +0 -17
  63. data/html/classes/MIDI/IO/MIDIFile.src/M000043.html +0 -17
  64. data/html/classes/MIDI/IO/MIDIFile.src/M000044.html +0 -17
  65. data/html/classes/MIDI/IO/MIDIFile.src/M000045.html +0 -17
  66. data/html/classes/MIDI/IO/MIDIFile.src/M000046.html +0 -17
  67. data/html/classes/MIDI/IO/MIDIFile.src/M000047.html +0 -17
  68. data/html/classes/MIDI/IO/MIDIFile.src/M000048.html +0 -17
  69. data/html/classes/MIDI/IO/MIDIFile.src/M000049.html +0 -17
  70. data/html/classes/MIDI/IO/MIDIFile.src/M000050.html +0 -17
  71. data/html/classes/MIDI/IO/MIDIFile.src/M000051.html +0 -17
  72. data/html/classes/MIDI/IO/MIDIFile.src/M000052.html +0 -17
  73. data/html/classes/MIDI/IO/MIDIFile.src/M000053.html +0 -17
  74. data/html/classes/MIDI/IO/MIDIFile.src/M000054.html +0 -17
  75. data/html/classes/MIDI/IO/MIDIFile.src/M000055.html +0 -17
  76. data/html/classes/MIDI/IO/MIDIFile.src/M000056.html +0 -17
  77. data/html/classes/MIDI/IO/MIDIFile.src/M000057.html +0 -43
  78. data/html/classes/MIDI/IO/MIDIFile.src/M000058.html +0 -34
  79. data/html/classes/MIDI/IO/MIDIFile.src/M000059.html +0 -96
  80. data/html/classes/MIDI/IO/MIDIFile.src/M000060.html +0 -18
  81. data/html/classes/MIDI/IO/MIDIFile.src/M000061.html +0 -49
  82. data/html/classes/MIDI/IO/MIDIFile.src/M000062.html +0 -42
  83. data/html/classes/MIDI/IO/MIDIFile.src/M000063.html +0 -19
  84. data/html/classes/MIDI/IO/MIDIFile.src/M000064.html +0 -19
  85. data/html/classes/MIDI/IO/MIDIFile.src/M000065.html +0 -20
  86. data/html/classes/MIDI/IO/MIDIFile.src/M000066.html +0 -21
  87. data/html/classes/MIDI/IO/MIDIFile.src/M000067.html +0 -31
  88. data/html/classes/MIDI/IO/MIDIFile.src/M000068.html +0 -20
  89. data/html/classes/MIDI/IO/MIDIFile.src/M000069.html +0 -22
  90. data/html/classes/MIDI/IO/MIDIFile.src/M000070.html +0 -30
  91. data/html/classes/MIDI/IO/MIDIFile.src/M000071.html +0 -18
  92. data/html/classes/MIDI/IO/MIDIFile.src/M000072.html +0 -20
  93. data/html/classes/MIDI/IO/MIDIFile.src/M000073.html +0 -18
  94. data/html/classes/MIDI/IO/MIDIFile.src/M000074.html +0 -18
  95. data/html/classes/MIDI/IO/SeqReader.html +0 -476
  96. data/html/classes/MIDI/IO/SeqReader.src/M000002.html +0 -22
  97. data/html/classes/MIDI/IO/SeqReader.src/M000003.html +0 -22
  98. data/html/classes/MIDI/IO/SeqReader.src/M000004.html +0 -21
  99. data/html/classes/MIDI/IO/SeqReader.src/M000005.html +0 -34
  100. data/html/classes/MIDI/IO/SeqReader.src/M000006.html +0 -26
  101. data/html/classes/MIDI/IO/SeqReader.src/M000007.html +0 -28
  102. data/html/classes/MIDI/IO/SeqReader.src/M000008.html +0 -21
  103. data/html/classes/MIDI/IO/SeqReader.src/M000009.html +0 -19
  104. data/html/classes/MIDI/IO/SeqReader.src/M000010.html +0 -19
  105. data/html/classes/MIDI/IO/SeqReader.src/M000011.html +0 -19
  106. data/html/classes/MIDI/IO/SeqReader.src/M000012.html +0 -19
  107. data/html/classes/MIDI/IO/SeqReader.src/M000013.html +0 -19
  108. data/html/classes/MIDI/IO/SeqReader.src/M000014.html +0 -18
  109. data/html/classes/MIDI/IO/SeqReader.src/M000015.html +0 -18
  110. data/html/classes/MIDI/IO/SeqReader.src/M000016.html +0 -29
  111. data/html/classes/MIDI/IO/SeqReader.src/M000017.html +0 -19
  112. data/html/classes/MIDI/IO/SeqReader.src/M000018.html +0 -18
  113. data/html/classes/MIDI/IO/SeqReader.src/M000019.html +0 -18
  114. data/html/classes/MIDI/IO/SeqReader.src/M000020.html +0 -18
  115. data/html/classes/MIDI/IO/SeqWriter.html +0 -282
  116. data/html/classes/MIDI/IO/SeqWriter.src/M000021.html +0 -19
  117. data/html/classes/MIDI/IO/SeqWriter.src/M000022.html +0 -25
  118. data/html/classes/MIDI/IO/SeqWriter.src/M000023.html +0 -22
  119. data/html/classes/MIDI/IO/SeqWriter.src/M000024.html +0 -54
  120. data/html/classes/MIDI/IO/SeqWriter.src/M000025.html +0 -49
  121. data/html/classes/MIDI/IO/SeqWriter.src/M000026.html +0 -21
  122. data/html/classes/MIDI/IO/SeqWriter.src/M000027.html +0 -19
  123. data/html/classes/MIDI/IO/SeqWriter.src/M000028.html +0 -23
  124. data/html/classes/MIDI/IO/SeqWriter.src/M000029.html +0 -24
  125. data/html/classes/MIDI/IO/SeqWriter.src/M000030.html +0 -19
  126. data/html/classes/MIDI/IO.html +0 -121
  127. data/html/classes/MIDI/KeySig.html +0 -241
  128. data/html/classes/MIDI/KeySig.src/M000140.html +0 -19
  129. data/html/classes/MIDI/KeySig.src/M000141.html +0 -23
  130. data/html/classes/MIDI/KeySig.src/M000142.html +0 -18
  131. data/html/classes/MIDI/KeySig.src/M000143.html +0 -18
  132. data/html/classes/MIDI/KeySig.src/M000144.html +0 -18
  133. data/html/classes/MIDI/KeySig.src/M000145.html +0 -23
  134. data/html/classes/MIDI/Marker.html +0 -139
  135. data/html/classes/MIDI/Marker.src/M000114.html +0 -18
  136. data/html/classes/MIDI/Measure.html +0 -242
  137. data/html/classes/MIDI/Measure.src/M000150.html +0 -23
  138. data/html/classes/MIDI/Measure.src/M000151.html +0 -20
  139. data/html/classes/MIDI/Measure.src/M000152.html +0 -18
  140. data/html/classes/MIDI/Measures.html +0 -217
  141. data/html/classes/MIDI/Measures.src/M000108.html +0 -20
  142. data/html/classes/MIDI/Measures.src/M000109.html +0 -18
  143. data/html/classes/MIDI/Measures.src/M000110.html +0 -21
  144. data/html/classes/MIDI/MetaEvent.html +0 -189
  145. data/html/classes/MIDI/MetaEvent.src/M000195.html +0 -21
  146. data/html/classes/MIDI/MetaEvent.src/M000196.html +0 -23
  147. data/html/classes/MIDI/MetaEvent.src/M000197.html +0 -53
  148. data/html/classes/MIDI/NoteEvent.html +0 -233
  149. data/html/classes/MIDI/NoteEvent.src/M000095.html +0 -21
  150. data/html/classes/MIDI/NoteEvent.src/M000096.html +0 -20
  151. data/html/classes/MIDI/NoteEvent.src/M000097.html +0 -18
  152. data/html/classes/MIDI/NoteEvent.src/M000098.html +0 -21
  153. data/html/classes/MIDI/NoteOffEvent.html +0 -169
  154. data/html/classes/MIDI/NoteOffEvent.src/M000090.html +0 -19
  155. data/html/classes/MIDI/NoteOffEvent.src/M000091.html +0 -19
  156. data/html/classes/MIDI/NoteOnEvent.html +0 -169
  157. data/html/classes/MIDI/NoteOnEvent.src/M000106.html +0 -19
  158. data/html/classes/MIDI/NoteOnEvent.src/M000107.html +0 -19
  159. data/html/classes/MIDI/PitchBend.html +0 -184
  160. data/html/classes/MIDI/PitchBend.src/M000111.html +0 -19
  161. data/html/classes/MIDI/PitchBend.src/M000112.html +0 -21
  162. data/html/classes/MIDI/PitchBend.src/M000113.html +0 -18
  163. data/html/classes/MIDI/PolyPressure.html +0 -186
  164. data/html/classes/MIDI/PolyPressure.src/M000198.html +0 -18
  165. data/html/classes/MIDI/PolyPressure.src/M000199.html +0 -18
  166. data/html/classes/MIDI/PolyPressure.src/M000200.html +0 -18
  167. data/html/classes/MIDI/PolyPressure.src/M000201.html +0 -19
  168. data/html/classes/MIDI/ProgramChange.html +0 -184
  169. data/html/classes/MIDI/ProgramChange.src/M000103.html +0 -20
  170. data/html/classes/MIDI/ProgramChange.src/M000104.html +0 -20
  171. data/html/classes/MIDI/ProgramChange.src/M000105.html +0 -18
  172. data/html/classes/MIDI/Realtime.html +0 -171
  173. data/html/classes/MIDI/Realtime.src/M000087.html +0 -19
  174. data/html/classes/MIDI/Realtime.src/M000088.html +0 -19
  175. data/html/classes/MIDI/Realtime.src/M000089.html +0 -18
  176. data/html/classes/MIDI/Sequence.html +0 -500
  177. data/html/classes/MIDI/Sequence.src/M000115.html +0 -28
  178. data/html/classes/MIDI/Sequence.src/M000116.html +0 -21
  179. data/html/classes/MIDI/Sequence.src/M000117.html +0 -22
  180. data/html/classes/MIDI/Sequence.src/M000120.html +0 -18
  181. data/html/classes/MIDI/Sequence.src/M000121.html +0 -27
  182. data/html/classes/MIDI/Sequence.src/M000122.html +0 -18
  183. data/html/classes/MIDI/Sequence.src/M000123.html +0 -19
  184. data/html/classes/MIDI/Sequence.src/M000124.html +0 -19
  185. data/html/classes/MIDI/Sequence.src/M000125.html +0 -19
  186. data/html/classes/MIDI/Sequence.src/M000126.html +0 -19
  187. data/html/classes/MIDI/Sequence.src/M000127.html +0 -18
  188. data/html/classes/MIDI/Sequence.src/M000128.html +0 -54
  189. data/html/classes/MIDI/SongPointer.html +0 -184
  190. data/html/classes/MIDI/SongPointer.src/M000162.html +0 -19
  191. data/html/classes/MIDI/SongPointer.src/M000163.html +0 -21
  192. data/html/classes/MIDI/SongPointer.src/M000164.html +0 -18
  193. data/html/classes/MIDI/SongSelect.html +0 -184
  194. data/html/classes/MIDI/SongSelect.src/M000134.html +0 -19
  195. data/html/classes/MIDI/SongSelect.src/M000135.html +0 -20
  196. data/html/classes/MIDI/SongSelect.src/M000136.html +0 -18
  197. data/html/classes/MIDI/Start.html +0 -156
  198. data/html/classes/MIDI/Start.src/M000101.html +0 -18
  199. data/html/classes/MIDI/Start.src/M000102.html +0 -18
  200. data/html/classes/MIDI/Stop.html +0 -156
  201. data/html/classes/MIDI/Stop.src/M000099.html +0 -18
  202. data/html/classes/MIDI/Stop.src/M000100.html +0 -18
  203. data/html/classes/MIDI/SystemCommon.html +0 -139
  204. data/html/classes/MIDI/SystemCommon.src/M000168.html +0 -19
  205. data/html/classes/MIDI/SystemExclusive.html +0 -184
  206. data/html/classes/MIDI/SystemExclusive.src/M000165.html +0 -19
  207. data/html/classes/MIDI/SystemExclusive.src/M000166.html +0 -23
  208. data/html/classes/MIDI/SystemExclusive.src/M000167.html +0 -18
  209. data/html/classes/MIDI/SystemReset.html +0 -156
  210. data/html/classes/MIDI/SystemReset.src/M000085.html +0 -18
  211. data/html/classes/MIDI/SystemReset.src/M000086.html +0 -18
  212. data/html/classes/MIDI/Tempo.html +0 -250
  213. data/html/classes/MIDI/Tempo.src/M000186.html +0 -18
  214. data/html/classes/MIDI/Tempo.src/M000187.html +0 -20
  215. data/html/classes/MIDI/Tempo.src/M000188.html +0 -18
  216. data/html/classes/MIDI/Tempo.src/M000189.html +0 -18
  217. data/html/classes/MIDI/Tempo.src/M000190.html +0 -18
  218. data/html/classes/MIDI/Tempo.src/M000191.html +0 -24
  219. data/html/classes/MIDI/Tempo.src/M000192.html +0 -18
  220. data/html/classes/MIDI/TimeSig.html +0 -263
  221. data/html/classes/MIDI/TimeSig.src/M000153.html +0 -19
  222. data/html/classes/MIDI/TimeSig.src/M000154.html +0 -25
  223. data/html/classes/MIDI/TimeSig.src/M000155.html +0 -18
  224. data/html/classes/MIDI/TimeSig.src/M000156.html +0 -18
  225. data/html/classes/MIDI/TimeSig.src/M000157.html +0 -18
  226. data/html/classes/MIDI/TimeSig.src/M000158.html +0 -18
  227. data/html/classes/MIDI/TimeSig.src/M000159.html +0 -18
  228. data/html/classes/MIDI/Track.html +0 -389
  229. data/html/classes/MIDI/Track.src/M000075.html +0 -23
  230. data/html/classes/MIDI/Track.src/M000076.html +0 -21
  231. data/html/classes/MIDI/Track.src/M000077.html +0 -26
  232. data/html/classes/MIDI/Track.src/M000078.html +0 -18
  233. data/html/classes/MIDI/Track.src/M000079.html +0 -22
  234. data/html/classes/MIDI/Track.src/M000080.html +0 -25
  235. data/html/classes/MIDI/Track.src/M000081.html +0 -22
  236. data/html/classes/MIDI/Track.src/M000082.html +0 -26
  237. data/html/classes/MIDI/Track.src/M000083.html +0 -18
  238. data/html/classes/MIDI/Track.src/M000084.html +0 -19
  239. data/html/classes/MIDI/TuneRequest.html +0 -171
  240. data/html/classes/MIDI/TuneRequest.src/M000129.html +0 -18
  241. data/html/classes/MIDI/TuneRequest.src/M000130.html +0 -19
  242. data/html/classes/MIDI/TuneRequest.src/M000131.html +0 -18
  243. data/html/classes/MIDI/Utils.html +0 -190
  244. data/html/classes/MIDI/Utils.src/M000193.html +0 -20
  245. data/html/classes/MIDI/Utils.src/M000194.html +0 -25
  246. data/html/classes/MIDI.html +0 -758
  247. data/html/created.rid +0 -1
  248. data/html/files/README_rdoc.html +0 -720
  249. data/html/files/TODO_rdoc.html +0 -150
  250. data/html/files/lib/midilib/consts_rb.html +0 -107
  251. data/html/files/lib/midilib/event_rb.html +0 -109
  252. data/html/files/lib/midilib/info_rb.html +0 -101
  253. data/html/files/lib/midilib/io/midifile_rb.html +0 -108
  254. data/html/files/lib/midilib/io/seqreader_rb.html +0 -110
  255. data/html/files/lib/midilib/io/seqwriter_rb.html +0 -115
  256. data/html/files/lib/midilib/measure_rb.html +0 -108
  257. data/html/files/lib/midilib/sequence_rb.html +0 -110
  258. data/html/files/lib/midilib/track_rb.html +0 -108
  259. data/html/files/lib/midilib/utils_rb.html +0 -101
  260. data/html/files/lib/midilib_rb.html +0 -124
  261. data/html/fr_class_index.html +0 -64
  262. data/html/fr_file_index.html +0 -39
  263. data/html/fr_method_index.html +0 -227
  264. data/html/index.html +0 -24
  265. data/html/rdoc-style.css +0 -208
@@ -1,959 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: MIDI::IO::MIDIFile</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">MIDI::IO::MIDIFile</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../../files/lib/midilib/io/midifile_rb.html">
59
- lib/midilib/io/midifile.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Object
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- A <a href="MIDIFile.html">MIDIFile</a> parses a <a
84
- href="../../MIDI.html">MIDI</a> file and calls methods when it sees <a
85
- href="../../MIDI.html">MIDI</a> events. Most of the methods are stubs. To
86
- do anything interesting with the events, override these methods (those
87
- between the &quot;The rest of these are NOPs by default&quot; and &quot;End
88
- of NOPs&quot; comments).
89
- </p>
90
- <p>
91
- See <a href="SeqReader.html">SeqReader</a> for a subclass that uses these
92
- methods to create <a href="../Event.html">Event</a> objects.
93
- </p>
94
-
95
- </div>
96
-
97
-
98
- </div>
99
-
100
- <div id="method-list">
101
- <h3 class="section-bar">Methods</h3>
102
-
103
- <div class="name-list">
104
- <a href="#M000056">arbitrary</a>&nbsp;&nbsp;
105
- <a href="#M000060">bad_byte</a>&nbsp;&nbsp;
106
- <a href="#M000062">chan_message</a>&nbsp;&nbsp;
107
- <a href="#M000045">chan_pressure</a>&nbsp;&nbsp;
108
- <a href="#M000042">controller</a>&nbsp;&nbsp;
109
- <a href="#M000038">end_track</a>&nbsp;&nbsp;
110
- <a href="#M000051">eot</a>&nbsp;&nbsp;
111
- <a href="#M000035">error</a>&nbsp;&nbsp;
112
- <a href="#M000034">get_bytes</a>&nbsp;&nbsp;
113
- <a href="#M000033">getc</a>&nbsp;&nbsp;
114
- <a href="#M000064">handle_arbitrary</a>&nbsp;&nbsp;
115
- <a href="#M000063">handle_sysex</a>&nbsp;&nbsp;
116
- <a href="#M000036">header</a>&nbsp;&nbsp;
117
- <a href="#M000055">key_signature</a>&nbsp;&nbsp;
118
- <a href="#M000061">meta_event</a>&nbsp;&nbsp;
119
- <a href="#M000047">meta_misc</a>&nbsp;&nbsp;
120
- <a href="#M000074">msg</a>&nbsp;&nbsp;
121
- <a href="#M000071">msg_add</a>&nbsp;&nbsp;
122
- <a href="#M000073">msg_init</a>&nbsp;&nbsp;
123
- <a href="#M000072">msg_read</a>&nbsp;&nbsp;
124
- <a href="#M000031">new</a>&nbsp;&nbsp;
125
- <a href="#M000040">note_off</a>&nbsp;&nbsp;
126
- <a href="#M000039">note_on</a>&nbsp;&nbsp;
127
- <a href="#M000043">pitch_bend</a>&nbsp;&nbsp;
128
- <a href="#M000041">pressure</a>&nbsp;&nbsp;
129
- <a href="#M000044">program</a>&nbsp;&nbsp;
130
- <a href="#M000065">read16</a>&nbsp;&nbsp;
131
- <a href="#M000066">read32</a>&nbsp;&nbsp;
132
- <a href="#M000032">read_from</a>&nbsp;&nbsp;
133
- <a href="#M000058">read_header</a>&nbsp;&nbsp;
134
- <a href="#M000057">read_mt_header_string</a>&nbsp;&nbsp;
135
- <a href="#M000059">read_track</a>&nbsp;&nbsp;
136
- <a href="#M000067">read_var_len</a>&nbsp;&nbsp;
137
- <a href="#M000049">sequence_number</a>&nbsp;&nbsp;
138
- <a href="#M000048">sequencer_specific</a>&nbsp;&nbsp;
139
- <a href="#M000053">smpte</a>&nbsp;&nbsp;
140
- <a href="#M000037">start_track</a>&nbsp;&nbsp;
141
- <a href="#M000046">sysex</a>&nbsp;&nbsp;
142
- <a href="#M000054">tempo</a>&nbsp;&nbsp;
143
- <a href="#M000050">text</a>&nbsp;&nbsp;
144
- <a href="#M000052">time_signature</a>&nbsp;&nbsp;
145
- <a href="#M000068">write16</a>&nbsp;&nbsp;
146
- <a href="#M000069">write32</a>&nbsp;&nbsp;
147
- <a href="#M000070">write_var_len</a>&nbsp;&nbsp;
148
- </div>
149
- </div>
150
-
151
- </div>
152
-
153
-
154
- <!-- if includes -->
155
-
156
- <div id="section">
157
-
158
-
159
- <div id="constants-list">
160
- <h3 class="section-bar">Constants</h3>
161
-
162
- <div class="name-list">
163
- <table summary="Constants">
164
- <tr class="top-aligned-row context-row">
165
- <td class="context-item-name">MThd_BYTE_ARRAY</td>
166
- <td>=</td>
167
- <td class="context-item-value">[77, 84, 104, 100]</td>
168
- </tr>
169
- <tr class="top-aligned-row context-row">
170
- <td class="context-item-name">MTrk_BYTE_ARRAY</td>
171
- <td>=</td>
172
- <td class="context-item-value">[77, 84, 114, 107]</td>
173
- </tr>
174
- <tr class="top-aligned-row context-row">
175
- <td class="context-item-name">NUM_DATA_BYTES</td>
176
- <td>=</td>
177
- <td class="context-item-value">[ 0, 0, 0, 0, 0, 0, 0, 0, # 0x00 - 0x70 2, 2, 2, 2, 1, 1, 2, 0</td>
178
- <td width="3em">&nbsp;</td>
179
- <td class="context-item-desc">
180
- This array is indexed by the high half of a status byte. Its value is
181
- either the number of bytes needed (1 or 2) for a channel message, or 0 if
182
- it&#8216;s not a channel message.
183
-
184
- </td>
185
- </tr>
186
- </table>
187
- </div>
188
- </div>
189
-
190
-
191
-
192
- <div id="attribute-list">
193
- <h3 class="section-bar">Attributes</h3>
194
-
195
- <div class="name-list">
196
- <table>
197
- <tr class="top-aligned-row context-row">
198
- <td class="context-item-name">bytes_to_be_read</td>
199
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
200
- <td class="context-item-desc"></td>
201
- </tr>
202
- <tr class="top-aligned-row context-row">
203
- <td class="context-item-name">curr_ticks</td>
204
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
205
- <td class="context-item-desc"></td>
206
- </tr>
207
- <tr class="top-aligned-row context-row">
208
- <td class="context-item-name">no_merge</td>
209
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
210
- <td class="context-item-desc"></td>
211
- </tr>
212
- <tr class="top-aligned-row context-row">
213
- <td class="context-item-name">raw_data</td>
214
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
215
- <td class="context-item-desc"></td>
216
- </tr>
217
- <tr class="top-aligned-row context-row">
218
- <td class="context-item-name">raw_time_stamp_data</td>
219
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
220
- <td class="context-item-desc">
221
- Raw data info
222
-
223
- </td>
224
- </tr>
225
- <tr class="top-aligned-row context-row">
226
- <td class="context-item-name">raw_var_num_data</td>
227
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
228
- <td class="context-item-desc"></td>
229
- </tr>
230
- <tr class="top-aligned-row context-row">
231
- <td class="context-item-name">skip_init</td>
232
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
233
- <td class="context-item-desc"></td>
234
- </tr>
235
- <tr class="top-aligned-row context-row">
236
- <td class="context-item-name">ticks_so_far</td>
237
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
238
- <td class="context-item-desc"></td>
239
- </tr>
240
- </table>
241
- </div>
242
- </div>
243
-
244
-
245
-
246
- <!-- if method_list -->
247
- <div id="methods">
248
- <h3 class="section-bar">Public Class methods</h3>
249
-
250
- <div id="method-M000031" class="method-detail">
251
- <a name="M000031"></a>
252
-
253
- <div class="method-heading">
254
- <a href="MIDIFile.src/M000031.html" target="Code" class="method-signature"
255
- onclick="popupCode('MIDIFile.src/M000031.html');return false;">
256
- <span class="method-name">new</span><span class="method-args">()</span>
257
- </a>
258
- </div>
259
-
260
- <div class="method-description">
261
- </div>
262
- </div>
263
-
264
- <h3 class="section-bar">Public Instance methods</h3>
265
-
266
- <div id="method-M000056" class="method-detail">
267
- <a name="M000056"></a>
268
-
269
- <div class="method-heading">
270
- <a href="MIDIFile.src/M000056.html" target="Code" class="method-signature"
271
- onclick="popupCode('MIDIFile.src/M000056.html');return false;">
272
- <span class="method-name">arbitrary</span><span class="method-args">(msg)</span>
273
- </a>
274
- </div>
275
-
276
- <div class="method-description">
277
- </div>
278
- </div>
279
-
280
- <div id="method-M000060" class="method-detail">
281
- <a name="M000060"></a>
282
-
283
- <div class="method-heading">
284
- <a href="MIDIFile.src/M000060.html" target="Code" class="method-signature"
285
- onclick="popupCode('MIDIFile.src/M000060.html');return false;">
286
- <span class="method-name">bad_byte</span><span class="method-args">(c)</span>
287
- </a>
288
- </div>
289
-
290
- <div class="method-description">
291
- <p>
292
- Handle an unexpected byte.
293
- </p>
294
- </div>
295
- </div>
296
-
297
- <div id="method-M000062" class="method-detail">
298
- <a name="M000062"></a>
299
-
300
- <div class="method-heading">
301
- <a href="MIDIFile.src/M000062.html" target="Code" class="method-signature"
302
- onclick="popupCode('MIDIFile.src/M000062.html');return false;">
303
- <span class="method-name">chan_message</span><span class="method-args">(running, status, c1, c2)</span>
304
- </a>
305
- </div>
306
-
307
- <div class="method-description">
308
- <p>
309
- Handle a channel message (note on, note off, etc.)
310
- </p>
311
- </div>
312
- </div>
313
-
314
- <div id="method-M000045" class="method-detail">
315
- <a name="M000045"></a>
316
-
317
- <div class="method-heading">
318
- <a href="MIDIFile.src/M000045.html" target="Code" class="method-signature"
319
- onclick="popupCode('MIDIFile.src/M000045.html');return false;">
320
- <span class="method-name">chan_pressure</span><span class="method-args">(chan, press)</span>
321
- </a>
322
- </div>
323
-
324
- <div class="method-description">
325
- </div>
326
- </div>
327
-
328
- <div id="method-M000042" class="method-detail">
329
- <a name="M000042"></a>
330
-
331
- <div class="method-heading">
332
- <a href="MIDIFile.src/M000042.html" target="Code" class="method-signature"
333
- onclick="popupCode('MIDIFile.src/M000042.html');return false;">
334
- <span class="method-name">controller</span><span class="method-args">(chan, control, value)</span>
335
- </a>
336
- </div>
337
-
338
- <div class="method-description">
339
- </div>
340
- </div>
341
-
342
- <div id="method-M000038" class="method-detail">
343
- <a name="M000038"></a>
344
-
345
- <div class="method-heading">
346
- <a href="MIDIFile.src/M000038.html" target="Code" class="method-signature"
347
- onclick="popupCode('MIDIFile.src/M000038.html');return false;">
348
- <span class="method-name">end_track</span><span class="method-args">()</span>
349
- </a>
350
- </div>
351
-
352
- <div class="method-description">
353
- </div>
354
- </div>
355
-
356
- <div id="method-M000051" class="method-detail">
357
- <a name="M000051"></a>
358
-
359
- <div class="method-heading">
360
- <a href="MIDIFile.src/M000051.html" target="Code" class="method-signature"
361
- onclick="popupCode('MIDIFile.src/M000051.html');return false;">
362
- <span class="method-name">eot</span><span class="method-args">()</span>
363
- </a>
364
- </div>
365
-
366
- <div class="method-description">
367
- </div>
368
- </div>
369
-
370
- <div id="method-M000035" class="method-detail">
371
- <a name="M000035"></a>
372
-
373
- <div class="method-heading">
374
- <a href="MIDIFile.src/M000035.html" target="Code" class="method-signature"
375
- onclick="popupCode('MIDIFile.src/M000035.html');return false;">
376
- <span class="method-name">error</span><span class="method-args">(str)</span>
377
- </a>
378
- </div>
379
-
380
- <div class="method-description">
381
- <p>
382
- The default <a href="MIDIFile.html#M000035">error</a> handler.
383
- </p>
384
- </div>
385
- </div>
386
-
387
- <div id="method-M000034" class="method-detail">
388
- <a name="M000034"></a>
389
-
390
- <div class="method-heading">
391
- <a href="MIDIFile.src/M000034.html" target="Code" class="method-signature"
392
- onclick="popupCode('MIDIFile.src/M000034.html');return false;">
393
- <span class="method-name">get_bytes</span><span class="method-args">(n)</span>
394
- </a>
395
- </div>
396
-
397
- <div class="method-description">
398
- <p>
399
- Return the next <tt>n</tt> bytes from @io as an array.
400
- </p>
401
- </div>
402
- </div>
403
-
404
- <div id="method-M000033" class="method-detail">
405
- <a name="M000033"></a>
406
-
407
- <div class="method-heading">
408
- <a href="MIDIFile.src/M000033.html" target="Code" class="method-signature"
409
- onclick="popupCode('MIDIFile.src/M000033.html');return false;">
410
- <span class="method-name">getc</span><span class="method-args">()</span>
411
- </a>
412
- </div>
413
-
414
- <div class="method-description">
415
- <p>
416
- This default <a href="MIDIFile.html#M000033">getc</a> implementation tries
417
- to read a single byte from io and returns it as an integer.
418
- </p>
419
- </div>
420
- </div>
421
-
422
- <div id="method-M000064" class="method-detail">
423
- <a name="M000064"></a>
424
-
425
- <div class="method-heading">
426
- <a href="MIDIFile.src/M000064.html" target="Code" class="method-signature"
427
- onclick="popupCode('MIDIFile.src/M000064.html');return false;">
428
- <span class="method-name">handle_arbitrary</span><span class="method-args">(msg)</span>
429
- </a>
430
- </div>
431
-
432
- <div class="method-description">
433
- <p>
434
- Copy message into raw data array, then call <a
435
- href="MIDIFile.html#M000056">arbitrary</a>().
436
- </p>
437
- </div>
438
- </div>
439
-
440
- <div id="method-M000063" class="method-detail">
441
- <a name="M000063"></a>
442
-
443
- <div class="method-heading">
444
- <a href="MIDIFile.src/M000063.html" target="Code" class="method-signature"
445
- onclick="popupCode('MIDIFile.src/M000063.html');return false;">
446
- <span class="method-name">handle_sysex</span><span class="method-args">(msg)</span>
447
- </a>
448
- </div>
449
-
450
- <div class="method-description">
451
- <p>
452
- Copy message into raw data array, then call <a
453
- href="MIDIFile.html#M000046">sysex</a>().
454
- </p>
455
- </div>
456
- </div>
457
-
458
- <div id="method-M000036" class="method-detail">
459
- <a name="M000036"></a>
460
-
461
- <div class="method-heading">
462
- <a href="MIDIFile.src/M000036.html" target="Code" class="method-signature"
463
- onclick="popupCode('MIDIFile.src/M000036.html');return false;">
464
- <span class="method-name">header</span><span class="method-args">(format, ntrks, division)</span>
465
- </a>
466
- </div>
467
-
468
- <div class="method-description">
469
- <p>
470
- <a href="../../MIDI.html">MIDI</a> <a
471
- href="MIDIFile.html#M000036">header</a>.
472
- </p>
473
- </div>
474
- </div>
475
-
476
- <div id="method-M000055" class="method-detail">
477
- <a name="M000055"></a>
478
-
479
- <div class="method-heading">
480
- <a href="MIDIFile.src/M000055.html" target="Code" class="method-signature"
481
- onclick="popupCode('MIDIFile.src/M000055.html');return false;">
482
- <span class="method-name">key_signature</span><span class="method-args">(sharpflat, is_minor)</span>
483
- </a>
484
- </div>
485
-
486
- <div class="method-description">
487
- </div>
488
- </div>
489
-
490
- <div id="method-M000061" class="method-detail">
491
- <a name="M000061"></a>
492
-
493
- <div class="method-heading">
494
- <a href="MIDIFile.src/M000061.html" target="Code" class="method-signature"
495
- onclick="popupCode('MIDIFile.src/M000061.html');return false;">
496
- <span class="method-name">meta_event</span><span class="method-args">(type)</span>
497
- </a>
498
- </div>
499
-
500
- <div class="method-description">
501
- <p>
502
- Handle a meta event.
503
- </p>
504
- </div>
505
- </div>
506
-
507
- <div id="method-M000047" class="method-detail">
508
- <a name="M000047"></a>
509
-
510
- <div class="method-heading">
511
- <a href="MIDIFile.src/M000047.html" target="Code" class="method-signature"
512
- onclick="popupCode('MIDIFile.src/M000047.html');return false;">
513
- <span class="method-name">meta_misc</span><span class="method-args">(type, msg)</span>
514
- </a>
515
- </div>
516
-
517
- <div class="method-description">
518
- </div>
519
- </div>
520
-
521
- <div id="method-M000074" class="method-detail">
522
- <a name="M000074"></a>
523
-
524
- <div class="method-heading">
525
- <a href="MIDIFile.src/M000074.html" target="Code" class="method-signature"
526
- onclick="popupCode('MIDIFile.src/M000074.html');return false;">
527
- <span class="method-name">msg</span><span class="method-args">()</span>
528
- </a>
529
- </div>
530
-
531
- <div class="method-description">
532
- <p>
533
- Return a copy of the internal message buffer.
534
- </p>
535
- </div>
536
- </div>
537
-
538
- <div id="method-M000071" class="method-detail">
539
- <a name="M000071"></a>
540
-
541
- <div class="method-heading">
542
- <a href="MIDIFile.src/M000071.html" target="Code" class="method-signature"
543
- onclick="popupCode('MIDIFile.src/M000071.html');return false;">
544
- <span class="method-name">msg_add</span><span class="method-args">(c)</span>
545
- </a>
546
- </div>
547
-
548
- <div class="method-description">
549
- <p>
550
- Add a byte to the current message buffer.
551
- </p>
552
- </div>
553
- </div>
554
-
555
- <div id="method-M000073" class="method-detail">
556
- <a name="M000073"></a>
557
-
558
- <div class="method-heading">
559
- <a href="MIDIFile.src/M000073.html" target="Code" class="method-signature"
560
- onclick="popupCode('MIDIFile.src/M000073.html');return false;">
561
- <span class="method-name">msg_init</span><span class="method-args">()</span>
562
- </a>
563
- </div>
564
-
565
- <div class="method-description">
566
- <p>
567
- Initialize the internal message buffer.
568
- </p>
569
- </div>
570
- </div>
571
-
572
- <div id="method-M000072" class="method-detail">
573
- <a name="M000072"></a>
574
-
575
- <div class="method-heading">
576
- <a href="MIDIFile.src/M000072.html" target="Code" class="method-signature"
577
- onclick="popupCode('MIDIFile.src/M000072.html');return false;">
578
- <span class="method-name">msg_read</span><span class="method-args">(n_bytes)</span>
579
- </a>
580
- </div>
581
-
582
- <div class="method-description">
583
- <p>
584
- Read and add a number of bytes to the message buffer. Return the last byte
585
- (so we can see if it&#8216;s an EOX or not).
586
- </p>
587
- </div>
588
- </div>
589
-
590
- <div id="method-M000040" class="method-detail">
591
- <a name="M000040"></a>
592
-
593
- <div class="method-heading">
594
- <a href="MIDIFile.src/M000040.html" target="Code" class="method-signature"
595
- onclick="popupCode('MIDIFile.src/M000040.html');return false;">
596
- <span class="method-name">note_off</span><span class="method-args">(chan, note, vel)</span>
597
- </a>
598
- </div>
599
-
600
- <div class="method-description">
601
- </div>
602
- </div>
603
-
604
- <div id="method-M000039" class="method-detail">
605
- <a name="M000039"></a>
606
-
607
- <div class="method-heading">
608
- <a href="MIDIFile.src/M000039.html" target="Code" class="method-signature"
609
- onclick="popupCode('MIDIFile.src/M000039.html');return false;">
610
- <span class="method-name">note_on</span><span class="method-args">(chan, note, vel)</span>
611
- </a>
612
- </div>
613
-
614
- <div class="method-description">
615
- </div>
616
- </div>
617
-
618
- <div id="method-M000043" class="method-detail">
619
- <a name="M000043"></a>
620
-
621
- <div class="method-heading">
622
- <a href="MIDIFile.src/M000043.html" target="Code" class="method-signature"
623
- onclick="popupCode('MIDIFile.src/M000043.html');return false;">
624
- <span class="method-name">pitch_bend</span><span class="method-args">(chan, msb, lsb)</span>
625
- </a>
626
- </div>
627
-
628
- <div class="method-description">
629
- </div>
630
- </div>
631
-
632
- <div id="method-M000041" class="method-detail">
633
- <a name="M000041"></a>
634
-
635
- <div class="method-heading">
636
- <a href="MIDIFile.src/M000041.html" target="Code" class="method-signature"
637
- onclick="popupCode('MIDIFile.src/M000041.html');return false;">
638
- <span class="method-name">pressure</span><span class="method-args">(chan, note, press)</span>
639
- </a>
640
- </div>
641
-
642
- <div class="method-description">
643
- </div>
644
- </div>
645
-
646
- <div id="method-M000044" class="method-detail">
647
- <a name="M000044"></a>
648
-
649
- <div class="method-heading">
650
- <a href="MIDIFile.src/M000044.html" target="Code" class="method-signature"
651
- onclick="popupCode('MIDIFile.src/M000044.html');return false;">
652
- <span class="method-name">program</span><span class="method-args">(chan, program)</span>
653
- </a>
654
- </div>
655
-
656
- <div class="method-description">
657
- </div>
658
- </div>
659
-
660
- <div id="method-M000065" class="method-detail">
661
- <a name="M000065"></a>
662
-
663
- <div class="method-heading">
664
- <a href="MIDIFile.src/M000065.html" target="Code" class="method-signature"
665
- onclick="popupCode('MIDIFile.src/M000065.html');return false;">
666
- <span class="method-name">read16</span><span class="method-args">()</span>
667
- </a>
668
- </div>
669
-
670
- <div class="method-description">
671
- <p>
672
- Read and return a sixteen bit value.
673
- </p>
674
- </div>
675
- </div>
676
-
677
- <div id="method-M000066" class="method-detail">
678
- <a name="M000066"></a>
679
-
680
- <div class="method-heading">
681
- <a href="MIDIFile.src/M000066.html" target="Code" class="method-signature"
682
- onclick="popupCode('MIDIFile.src/M000066.html');return false;">
683
- <span class="method-name">read32</span><span class="method-args">()</span>
684
- </a>
685
- </div>
686
-
687
- <div class="method-description">
688
- <p>
689
- Read and return a 32-bit value.
690
- </p>
691
- </div>
692
- </div>
693
-
694
- <div id="method-M000032" class="method-detail">
695
- <a name="M000032"></a>
696
-
697
- <div class="method-heading">
698
- <a href="MIDIFile.src/M000032.html" target="Code" class="method-signature"
699
- onclick="popupCode('MIDIFile.src/M000032.html');return false;">
700
- <span class="method-name">read_from</span><span class="method-args">(io)</span>
701
- </a>
702
- </div>
703
-
704
- <div class="method-description">
705
- <p>
706
- The only public method. Each <a href="../../MIDI.html">MIDI</a> event in
707
- the file causes a method to be called.
708
- </p>
709
- </div>
710
- </div>
711
-
712
- <div id="method-M000058" class="method-detail">
713
- <a name="M000058"></a>
714
-
715
- <div class="method-heading">
716
- <a href="MIDIFile.src/M000058.html" target="Code" class="method-signature"
717
- onclick="popupCode('MIDIFile.src/M000058.html');return false;">
718
- <span class="method-name">read_header</span><span class="method-args">()</span>
719
- </a>
720
- </div>
721
-
722
- <div class="method-description">
723
- <p>
724
- Read a <a href="MIDIFile.html#M000036">header</a> chunk.
725
- </p>
726
- </div>
727
- </div>
728
-
729
- <div id="method-M000057" class="method-detail">
730
- <a name="M000057"></a>
731
-
732
- <div class="method-heading">
733
- <a href="MIDIFile.src/M000057.html" target="Code" class="method-signature"
734
- onclick="popupCode('MIDIFile.src/M000057.html');return false;">
735
- <span class="method-name">read_mt_header_string</span><span class="method-args">(bytes, skip)</span>
736
- </a>
737
- </div>
738
-
739
- <div class="method-description">
740
- <p>
741
- Read through &#8216;MThd&#8217; or &#8216;MTrk&#8217; <a
742
- href="MIDIFile.html#M000036">header</a> string. If skip is true, attempt to
743
- skip initial trash. If there is an <a
744
- href="MIDIFile.html#M000035">error</a>, <a
745
- href="MIDIFile.html#M000035">error</a> is called.
746
- </p>
747
- </div>
748
- </div>
749
-
750
- <div id="method-M000059" class="method-detail">
751
- <a name="M000059"></a>
752
-
753
- <div class="method-heading">
754
- <a href="MIDIFile.src/M000059.html" target="Code" class="method-signature"
755
- onclick="popupCode('MIDIFile.src/M000059.html');return false;">
756
- <span class="method-name">read_track</span><span class="method-args">()</span>
757
- </a>
758
- </div>
759
-
760
- <div class="method-description">
761
- <p>
762
- Read a track chunk.
763
- </p>
764
- </div>
765
- </div>
766
-
767
- <div id="method-M000067" class="method-detail">
768
- <a name="M000067"></a>
769
-
770
- <div class="method-heading">
771
- <a href="MIDIFile.src/M000067.html" target="Code" class="method-signature"
772
- onclick="popupCode('MIDIFile.src/M000067.html');return false;">
773
- <span class="method-name">read_var_len</span><span class="method-args">()</span>
774
- </a>
775
- </div>
776
-
777
- <div class="method-description">
778
- <p>
779
- Read a varlen value.
780
- </p>
781
- </div>
782
- </div>
783
-
784
- <div id="method-M000049" class="method-detail">
785
- <a name="M000049"></a>
786
-
787
- <div class="method-heading">
788
- <a href="MIDIFile.src/M000049.html" target="Code" class="method-signature"
789
- onclick="popupCode('MIDIFile.src/M000049.html');return false;">
790
- <span class="method-name">sequence_number</span><span class="method-args">(num)</span>
791
- </a>
792
- </div>
793
-
794
- <div class="method-description">
795
- </div>
796
- </div>
797
-
798
- <div id="method-M000048" class="method-detail">
799
- <a name="M000048"></a>
800
-
801
- <div class="method-heading">
802
- <a href="MIDIFile.src/M000048.html" target="Code" class="method-signature"
803
- onclick="popupCode('MIDIFile.src/M000048.html');return false;">
804
- <span class="method-name">sequencer_specific</span><span class="method-args">(type, msg)</span>
805
- </a>
806
- </div>
807
-
808
- <div class="method-description">
809
- </div>
810
- </div>
811
-
812
- <div id="method-M000053" class="method-detail">
813
- <a name="M000053"></a>
814
-
815
- <div class="method-heading">
816
- <a href="MIDIFile.src/M000053.html" target="Code" class="method-signature"
817
- onclick="popupCode('MIDIFile.src/M000053.html');return false;">
818
- <span class="method-name">smpte</span><span class="method-args">(hour, min, sec, frame, fract)</span>
819
- </a>
820
- </div>
821
-
822
- <div class="method-description">
823
- </div>
824
- </div>
825
-
826
- <div id="method-M000037" class="method-detail">
827
- <a name="M000037"></a>
828
-
829
- <div class="method-heading">
830
- <a href="MIDIFile.src/M000037.html" target="Code" class="method-signature"
831
- onclick="popupCode('MIDIFile.src/M000037.html');return false;">
832
- <span class="method-name">start_track</span><span class="method-args">(bytes_to_be_read)</span>
833
- </a>
834
- </div>
835
-
836
- <div class="method-description">
837
- </div>
838
- </div>
839
-
840
- <div id="method-M000046" class="method-detail">
841
- <a name="M000046"></a>
842
-
843
- <div class="method-heading">
844
- <a href="MIDIFile.src/M000046.html" target="Code" class="method-signature"
845
- onclick="popupCode('MIDIFile.src/M000046.html');return false;">
846
- <span class="method-name">sysex</span><span class="method-args">(msg)</span>
847
- </a>
848
- </div>
849
-
850
- <div class="method-description">
851
- </div>
852
- </div>
853
-
854
- <div id="method-M000054" class="method-detail">
855
- <a name="M000054"></a>
856
-
857
- <div class="method-heading">
858
- <a href="MIDIFile.src/M000054.html" target="Code" class="method-signature"
859
- onclick="popupCode('MIDIFile.src/M000054.html');return false;">
860
- <span class="method-name">tempo</span><span class="method-args">(microsecs)</span>
861
- </a>
862
- </div>
863
-
864
- <div class="method-description">
865
- </div>
866
- </div>
867
-
868
- <div id="method-M000050" class="method-detail">
869
- <a name="M000050"></a>
870
-
871
- <div class="method-heading">
872
- <a href="MIDIFile.src/M000050.html" target="Code" class="method-signature"
873
- onclick="popupCode('MIDIFile.src/M000050.html');return false;">
874
- <span class="method-name">text</span><span class="method-args">(type, msg)</span>
875
- </a>
876
- </div>
877
-
878
- <div class="method-description">
879
- </div>
880
- </div>
881
-
882
- <div id="method-M000052" class="method-detail">
883
- <a name="M000052"></a>
884
-
885
- <div class="method-heading">
886
- <a href="MIDIFile.src/M000052.html" target="Code" class="method-signature"
887
- onclick="popupCode('MIDIFile.src/M000052.html');return false;">
888
- <span class="method-name">time_signature</span><span class="method-args">(numer, denom, clocks, qnotes)</span>
889
- </a>
890
- </div>
891
-
892
- <div class="method-description">
893
- </div>
894
- </div>
895
-
896
- <div id="method-M000068" class="method-detail">
897
- <a name="M000068"></a>
898
-
899
- <div class="method-heading">
900
- <a href="MIDIFile.src/M000068.html" target="Code" class="method-signature"
901
- onclick="popupCode('MIDIFile.src/M000068.html');return false;">
902
- <span class="method-name">write16</span><span class="method-args">(val)</span>
903
- </a>
904
- </div>
905
-
906
- <div class="method-description">
907
- <p>
908
- Write a sixteen-bit value.
909
- </p>
910
- </div>
911
- </div>
912
-
913
- <div id="method-M000069" class="method-detail">
914
- <a name="M000069"></a>
915
-
916
- <div class="method-heading">
917
- <a href="MIDIFile.src/M000069.html" target="Code" class="method-signature"
918
- onclick="popupCode('MIDIFile.src/M000069.html');return false;">
919
- <span class="method-name">write32</span><span class="method-args">(val)</span>
920
- </a>
921
- </div>
922
-
923
- <div class="method-description">
924
- <p>
925
- Write a 32-bit value.
926
- </p>
927
- </div>
928
- </div>
929
-
930
- <div id="method-M000070" class="method-detail">
931
- <a name="M000070"></a>
932
-
933
- <div class="method-heading">
934
- <a href="MIDIFile.src/M000070.html" target="Code" class="method-signature"
935
- onclick="popupCode('MIDIFile.src/M000070.html');return false;">
936
- <span class="method-name">write_var_len</span><span class="method-args">(val)</span>
937
- </a>
938
- </div>
939
-
940
- <div class="method-description">
941
- <p>
942
- Write a variable length value.
943
- </p>
944
- </div>
945
- </div>
946
-
947
-
948
- </div>
949
-
950
-
951
- </div>
952
-
953
-
954
- <div id="validator-badges">
955
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
956
- </div>
957
-
958
- </body>
959
- </html>