/apidocs/echonest.support.midi.RawInstreamFile.RawInstreamFile-class.html

http://echo-nest-remix.googlecode.com/ · HTML · 365 lines · 314 code · 30 blank · 21 comment · 0 complexity · 3467b45594ac8ac5fe36ef3eb01303f3 MD5 · raw file

  1. <?xml version="1.0" encoding="ascii"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  5. <head>
  6. <title>echonest.support.midi.RawInstreamFile.RawInstreamFile</title>
  7. <link rel="stylesheet" href="epydoc.css" type="text/css" />
  8. <script type="text/javascript" src="epydoc.js"></script>
  9. </head>
  10. <body bgcolor="white" text="black" link="blue" vlink="#204080"
  11. alink="#204080">
  12. <!-- ==================== NAVIGATION BAR ==================== -->
  13. <table class="navbar" border="0" width="100%" cellpadding="0"
  14. bgcolor="#a0c0ff" cellspacing="0">
  15. <tr valign="middle">
  16. <!-- Tree link -->
  17. <th>&nbsp;&nbsp;&nbsp;<a
  18. href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
  19. <!-- Index link -->
  20. <th>&nbsp;&nbsp;&nbsp;<a
  21. href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
  22. <!-- Help link -->
  23. <th>&nbsp;&nbsp;&nbsp;<a
  24. href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
  25. <!-- Project homepage -->
  26. <th class="navbar" align="right" width="100%">
  27. <table border="0" cellpadding="0" cellspacing="0">
  28. <tr><th class="navbar" align="center"
  29. ><a class="navbar" target="_top" href="http://code.google.com/p/echo-nest-remix/">Project Homepage</a></th>
  30. </tr></table></th>
  31. </tr>
  32. </table>
  33. <table width="100%" cellpadding="0" cellspacing="0">
  34. <tr valign="top">
  35. <td width="100%">
  36. <span class="breadcrumbs">
  37. <a href="echonest-module.html">Package&nbsp;echonest</a> ::
  38. <a href="echonest.support-module.html">Package&nbsp;support</a> ::
  39. <a href="echonest.support.midi-module.html">Package&nbsp;midi</a> ::
  40. <a href="echonest.support.midi.RawInstreamFile-module.html">Module&nbsp;RawInstreamFile</a> ::
  41. Class&nbsp;RawInstreamFile
  42. </span>
  43. </td>
  44. <td>
  45. <table cellpadding="0" cellspacing="0">
  46. <!-- hide/show private -->
  47. <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
  48. onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
  49. <tr><td align="right"><span class="options"
  50. >[<a href="frames.html" target="_top">frames</a
  51. >]&nbsp;|&nbsp;<a href="echonest.support.midi.RawInstreamFile.RawInstreamFile-class.html"
  52. target="_top">no&nbsp;frames</a>]</span></td></tr>
  53. </table>
  54. </td>
  55. </tr>
  56. </table>
  57. <!-- ==================== CLASS DESCRIPTION ==================== -->
  58. <h1 class="epydoc">Class RawInstreamFile</h1><p class="nomargin-top"><span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile">source&nbsp;code</a></span></p>
  59. It parses and reads data from an input file. It takes care of big
  60. endianess, and keeps track of the cursor position. The midi parser
  61. only reads from this object. Never directly from the file.
  62. <!-- ==================== INSTANCE METHODS ==================== -->
  63. <a name="section-InstanceMethods"></a>
  64. <table class="summary" border="1" cellpadding="3"
  65. cellspacing="0" width="100%" bgcolor="white">
  66. <tr bgcolor="#70b0f0" class="table-header">
  67. <td colspan="2" class="table-header">
  68. <table border="0" cellpadding="0" cellspacing="0" width="100%">
  69. <tr valign="top">
  70. <td align="left"><span class="table-header">Instance Methods</span></td>
  71. <td align="right" valign="top"
  72. ><span class="options">[<a href="#section-InstanceMethods"
  73. class="privatelink" onclick="toggle_private();"
  74. >hide private</a>]</span></td>
  75. </tr>
  76. </table>
  77. </td>
  78. </tr>
  79. <tr>
  80. <td width="15%" align="right" valign="top" class="summary">
  81. <span class="summary-type">&nbsp;</span>
  82. </td><td class="summary">
  83. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  84. <tr>
  85. <td><span class="summary-sig"><a href="echonest.support.midi.RawInstreamFile.RawInstreamFile-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
  86. <span class="summary-sig-arg">infile</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span><br />
  87. If 'file' is a string we assume it is a path and read from
  88. that file.</td>
  89. <td align="right" valign="top">
  90. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.__init__">source&nbsp;code</a></span>
  91. </td>
  92. </tr>
  93. </table>
  94. </td>
  95. </tr>
  96. <tr>
  97. <td width="15%" align="right" valign="top" class="summary">
  98. <span class="summary-type">&nbsp;</span>
  99. </td><td class="summary">
  100. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  101. <tr>
  102. <td><span class="summary-sig"><a name="setData"></a><span class="summary-sig-name">setData</span>(<span class="summary-sig-arg">self</span>,
  103. <span class="summary-sig-arg">data</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span><br />
  104. Sets the data from a string.</td>
  105. <td align="right" valign="top">
  106. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.setData">source&nbsp;code</a></span>
  107. </td>
  108. </tr>
  109. </table>
  110. </td>
  111. </tr>
  112. <tr>
  113. <td width="15%" align="right" valign="top" class="summary">
  114. <span class="summary-type">&nbsp;</span>
  115. </td><td class="summary">
  116. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  117. <tr>
  118. <td><span class="summary-sig"><a name="setCursor"></a><span class="summary-sig-name">setCursor</span>(<span class="summary-sig-arg">self</span>,
  119. <span class="summary-sig-arg">position</span>=<span class="summary-sig-default">0</span>)</span><br />
  120. Sets the absolute position if the cursor</td>
  121. <td align="right" valign="top">
  122. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.setCursor">source&nbsp;code</a></span>
  123. </td>
  124. </tr>
  125. </table>
  126. </td>
  127. </tr>
  128. <tr>
  129. <td width="15%" align="right" valign="top" class="summary">
  130. <span class="summary-type">&nbsp;</span>
  131. </td><td class="summary">
  132. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  133. <tr>
  134. <td><span class="summary-sig"><a name="getCursor"></a><span class="summary-sig-name">getCursor</span>(<span class="summary-sig-arg">self</span>)</span><br />
  135. Returns the value of the cursor</td>
  136. <td align="right" valign="top">
  137. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.getCursor">source&nbsp;code</a></span>
  138. </td>
  139. </tr>
  140. </table>
  141. </td>
  142. </tr>
  143. <tr>
  144. <td width="15%" align="right" valign="top" class="summary">
  145. <span class="summary-type">&nbsp;</span>
  146. </td><td class="summary">
  147. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  148. <tr>
  149. <td><span class="summary-sig"><a name="moveCursor"></a><span class="summary-sig-name">moveCursor</span>(<span class="summary-sig-arg">self</span>,
  150. <span class="summary-sig-arg">relative_position</span>=<span class="summary-sig-default">0</span>)</span><br />
  151. Moves the cursor to a new relative position</td>
  152. <td align="right" valign="top">
  153. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.moveCursor">source&nbsp;code</a></span>
  154. </td>
  155. </tr>
  156. </table>
  157. </td>
  158. </tr>
  159. <tr>
  160. <td width="15%" align="right" valign="top" class="summary">
  161. <span class="summary-type">&nbsp;</span>
  162. </td><td class="summary">
  163. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  164. <tr>
  165. <td><span class="summary-sig"><a name="nextSlice"></a><span class="summary-sig-name">nextSlice</span>(<span class="summary-sig-arg">self</span>,
  166. <span class="summary-sig-arg">length</span>,
  167. <span class="summary-sig-arg">move_cursor</span>=<span class="summary-sig-default">1</span>)</span><br />
  168. Reads the next text slice from the raw data, with length</td>
  169. <td align="right" valign="top">
  170. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.nextSlice">source&nbsp;code</a></span>
  171. </td>
  172. </tr>
  173. </table>
  174. </td>
  175. </tr>
  176. <tr>
  177. <td width="15%" align="right" valign="top" class="summary">
  178. <span class="summary-type">&nbsp;</span>
  179. </td><td class="summary">
  180. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  181. <tr>
  182. <td><span class="summary-sig"><a href="echonest.support.midi.RawInstreamFile.RawInstreamFile-class.html#readBew" class="summary-sig-name">readBew</a>(<span class="summary-sig-arg">self</span>,
  183. <span class="summary-sig-arg">n_bytes</span>=<span class="summary-sig-default">1</span>,
  184. <span class="summary-sig-arg">move_cursor</span>=<span class="summary-sig-default">1</span>)</span><br />
  185. Reads n bytes of date from the current cursor position.</td>
  186. <td align="right" valign="top">
  187. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.readBew">source&nbsp;code</a></span>
  188. </td>
  189. </tr>
  190. </table>
  191. </td>
  192. </tr>
  193. <tr>
  194. <td width="15%" align="right" valign="top" class="summary">
  195. <span class="summary-type">&nbsp;</span>
  196. </td><td class="summary">
  197. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  198. <tr>
  199. <td><span class="summary-sig"><a href="echonest.support.midi.RawInstreamFile.RawInstreamFile-class.html#readVarLen" class="summary-sig-name">readVarLen</a>(<span class="summary-sig-arg">self</span>)</span><br />
  200. Reads a variable length value from the current cursor position.</td>
  201. <td align="right" valign="top">
  202. <span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.readVarLen">source&nbsp;code</a></span>
  203. </td>
  204. </tr>
  205. </table>
  206. </td>
  207. </tr>
  208. </table>
  209. <!-- ==================== METHOD DETAILS ==================== -->
  210. <a name="section-MethodDetails"></a>
  211. <table class="details" border="1" cellpadding="3"
  212. cellspacing="0" width="100%" bgcolor="white">
  213. <tr bgcolor="#70b0f0" class="table-header">
  214. <td colspan="2" class="table-header">
  215. <table border="0" cellpadding="0" cellspacing="0" width="100%">
  216. <tr valign="top">
  217. <td align="left"><span class="table-header">Method Details</span></td>
  218. <td align="right" valign="top"
  219. ><span class="options">[<a href="#section-MethodDetails"
  220. class="privatelink" onclick="toggle_private();"
  221. >hide private</a>]</span></td>
  222. </tr>
  223. </table>
  224. </td>
  225. </tr>
  226. </table>
  227. <a name="__init__"></a>
  228. <div>
  229. <table class="details" border="1" cellpadding="3"
  230. cellspacing="0" width="100%" bgcolor="white">
  231. <tr><td>
  232. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  233. <tr valign="top"><td>
  234. <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
  235. <span class="sig-arg">infile</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span>
  236. <br /><em class="fname">(Constructor)</em>
  237. </h3>
  238. </td><td align="right" valign="top"
  239. ><span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.__init__">source&nbsp;code</a></span>&nbsp;
  240. </td>
  241. </tr></table>
  242. If 'file' is a string we assume it is a path and read from
  243. that file.
  244. If it is a file descriptor we read from the file, but we don't
  245. close it.
  246. Midi files are usually pretty small, so it should be safe to
  247. copy them into memory.
  248. <dl class="fields">
  249. </dl>
  250. </td></tr></table>
  251. </div>
  252. <a name="readBew"></a>
  253. <div>
  254. <table class="details" border="1" cellpadding="3"
  255. cellspacing="0" width="100%" bgcolor="white">
  256. <tr><td>
  257. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  258. <tr valign="top"><td>
  259. <h3 class="epydoc"><span class="sig"><span class="sig-name">readBew</span>(<span class="sig-arg">self</span>,
  260. <span class="sig-arg">n_bytes</span>=<span class="sig-default">1</span>,
  261. <span class="sig-arg">move_cursor</span>=<span class="sig-default">1</span>)</span>
  262. </h3>
  263. </td><td align="right" valign="top"
  264. ><span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.readBew">source&nbsp;code</a></span>&nbsp;
  265. </td>
  266. </tr></table>
  267. Reads n bytes of date from the current cursor position.
  268. Moves cursor if move_cursor is true
  269. <dl class="fields">
  270. </dl>
  271. </td></tr></table>
  272. </div>
  273. <a name="readVarLen"></a>
  274. <div>
  275. <table class="details" border="1" cellpadding="3"
  276. cellspacing="0" width="100%" bgcolor="white">
  277. <tr><td>
  278. <table width="100%" cellpadding="0" cellspacing="0" border="0">
  279. <tr valign="top"><td>
  280. <h3 class="epydoc"><span class="sig"><span class="sig-name">readVarLen</span>(<span class="sig-arg">self</span>)</span>
  281. </h3>
  282. </td><td align="right" valign="top"
  283. ><span class="codelink"><a href="echonest.support.midi.RawInstreamFile-pysrc.html#RawInstreamFile.readVarLen">source&nbsp;code</a></span>&nbsp;
  284. </td>
  285. </tr></table>
  286. Reads a variable length value from the current cursor position.
  287. Moves cursor if move_cursor is true
  288. <dl class="fields">
  289. </dl>
  290. </td></tr></table>
  291. </div>
  292. <br />
  293. <!-- ==================== NAVIGATION BAR ==================== -->
  294. <table class="navbar" border="0" width="100%" cellpadding="0"
  295. bgcolor="#a0c0ff" cellspacing="0">
  296. <tr valign="middle">
  297. <!-- Tree link -->
  298. <th>&nbsp;&nbsp;&nbsp;<a
  299. href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
  300. <!-- Index link -->
  301. <th>&nbsp;&nbsp;&nbsp;<a
  302. href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
  303. <!-- Help link -->
  304. <th>&nbsp;&nbsp;&nbsp;<a
  305. href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
  306. <!-- Project homepage -->
  307. <th class="navbar" align="right" width="100%">
  308. <table border="0" cellpadding="0" cellspacing="0">
  309. <tr><th class="navbar" align="center"
  310. ><a class="navbar" target="_top" href="http://code.google.com/p/echo-nest-remix/">Project Homepage</a></th>
  311. </tr></table></th>
  312. </tr>
  313. </table>
  314. <table border="0" cellpadding="0" cellspacing="0" width="100%%">
  315. <tr>
  316. <td align="left" class="footer">
  317. Generated by Epydoc 3.0.1 on Wed Sep 1 16:08:59 2010
  318. </td>
  319. <td align="right" class="footer">
  320. <a target="mainFrame" href="http://epydoc.sourceforge.net"
  321. >http://epydoc.sourceforge.net</a>
  322. </td>
  323. </tr>
  324. </table>
  325. <script type="text/javascript">
  326. <!--
  327. // Private objects are initially displayed (because if
  328. // javascript is turned off then we want them to be
  329. // visible); but by default, we want to hide them. So hide
  330. // them unless we have a cookie that says to show them.
  331. checkCookie();
  332. // -->
  333. </script>
  334. </body>
  335. </html>