Sophie

Sophie

distrib > Mandriva > 9.2 > i586 > media > contrib > by-pkgid > ef5bd7e0be2b9a32c28c9abb6225827f > files > 31

jackit-realtime-0.75.0-1mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Jack: types.h File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.3.2 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a></div>
<h1>types.h File Reference</h1><code>#include &lt;limits.h&gt;</code><br>

<p>
<a href="types_8h-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a0">JACK_MAX_FRAMES</a>&nbsp;&nbsp;&nbsp;ULONG_MAX;</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>#define&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a1">JACK_DEFAULT_AUDIO_TYPE</a>&nbsp;&nbsp;&nbsp;"32 bit float mono audio"</td></tr>

<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>typedef char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a2">shm_name_t</a> [32]</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef unsigned long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a3">jack_nframes_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef unsigned long long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a4">jack_time_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef _jack_port&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a5">jack_port_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef _jack_client&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a6">jack_client_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef unsigned long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a7">jack_port_id_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef int(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a8">JackProcessCallback</a> )(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef int(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a9">JackGraphOrderCallback</a> )(void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef int(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a10">JackXRunCallback</a> )(void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef int(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a11">JackBufferSizeCallback</a> )(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef int(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a12">JackSampleRateCallback</a> )(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef void(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a13">JackPortRegistrationCallback</a> )(<a class="el" href="types_8h.html#a7">jack_port_id_t</a> port, int, void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>typedef float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a14">jack_default_audio_sample_t</a></td></tr>

<tr><td colspan=2><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="types_8h.html#a20">JackPortFlags</a> { <br>
&nbsp;&nbsp;<a class="el" href="types_8h.html#a20a15">JackPortIsInput</a> =  0x1, 
<a class="el" href="types_8h.html#a20a16">JackPortIsOutput</a> =  0x2, 
<a class="el" href="types_8h.html#a20a17">JackPortIsPhysical</a> =  0x4, 
<a class="el" href="types_8h.html#a20a18">JackPortCanMonitor</a> =  0x8, 
<br>
&nbsp;&nbsp;<a class="el" href="types_8h.html#a20a19">JackPortIsTerminal</a> =  0x10
<br>
 }</td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a name="a1" doxytag="types.h::JACK_DEFAULT_AUDIO_TYPE"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define JACK_DEFAULT_AUDIO_TYPE&nbsp;&nbsp;&nbsp;"32 bit float mono audio"
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Used for the type argument of <a class="el" href="jack_8h.html#a15">jack_port_register()</a>.     </td>
  </tr>
</table>
<a name="a0" doxytag="types.h::JACK_MAX_FRAMES"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define JACK_MAX_FRAMES&nbsp;&nbsp;&nbsp;ULONG_MAX;
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Maximum value that can be stored in jack_nframes_t     </td>
  </tr>
</table>
<hr><h2>Typedef Documentation</h2>
<a name="a6" doxytag="types.h::jack_client_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef struct _jack_client <a class="el" href="types_8h.html#a6">jack_client_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
jack_client_t is an opaque type. You may only access it using the API provided.     </td>
  </tr>
</table>
<a name="a14" doxytag="types.h::jack_default_audio_sample_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef float <a class="el" href="types_8h.html#a14">jack_default_audio_sample_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
For convenience, use this typedef if you want to be able to change between float and double. You may want to typedef sample_t to jack_default_audio_sample_t in your application.     </td>
  </tr>
</table>
<a name="a3" doxytag="types.h::jack_nframes_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef unsigned long <a class="el" href="types_8h.html#a3">jack_nframes_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Type used to represent sample frame counts.     </td>
  </tr>
</table>
<a name="a7" doxytag="types.h::jack_port_id_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef unsigned long <a class="el" href="types_8h.html#a7">jack_port_id_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Ports have unique ids. A port registration callback is the only place you ever need to know their value.     </td>
  </tr>
</table>
<a name="a5" doxytag="types.h::jack_port_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef struct _jack_port <a class="el" href="types_8h.html#a5">jack_port_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
jack_port_t is an opaque type. You may only access it using the API provided.     </td>
  </tr>
</table>
<a name="a4" doxytag="types.h::jack_time_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef unsigned long long <a class="el" href="types_8h.html#a4">jack_time_t</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Type used to represent the value of free running monotonic clock with units of microseconds.     </td>
  </tr>
</table>
<a name="a11" doxytag="types.h::JackBufferSizeCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef int(* <a class="el" href="types_8h.html#a11">JackBufferSizeCallback</a>)(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called when the engine buffersize changes.<p>
Note! Use of this callback function is deprecated!<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>nframes</em>&nbsp;</td><td>new engine buffer size </td></tr>
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>zero on success, non-zero on error </dd></dl>
    </td>
  </tr>
</table>
<a name="a9" doxytag="types.h::JackGraphOrderCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef int(* <a class="el" href="types_8h.html#a9">JackGraphOrderCallback</a>)(void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called whenever the processing graph is reordered.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>zero on success, non-zero on error </dd></dl>
    </td>
  </tr>
</table>
<a name="a13" doxytag="types.h::JackPortRegistrationCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef void(* <a class="el" href="types_8h.html#a13">JackPortRegistrationCallback</a>)(<a class="el" href="types_8h.html#a7">jack_port_id_t</a> port, int, void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called whenever a port is registered or unregistered.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure </td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a name="a8" doxytag="types.h::JackProcessCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef int(* <a class="el" href="types_8h.html#a8">JackProcessCallback</a>)(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called by the engine anytime there is work to be done.<p>
<dl compact><dt><b>Precondition:</b></dt><dd>nframes == <a class="el" href="jack_8h.html#a48">jack_get_buffer_size()</a> <p>
nframes == pow(2,x)</dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>nframes</em>&nbsp;</td><td>number of frames to process </td></tr>
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>zero on success, non-zero on error </dd></dl>
    </td>
  </tr>
</table>
<a name="a12" doxytag="types.h::JackSampleRateCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef int(* <a class="el" href="types_8h.html#a12">JackSampleRateCallback</a>)(<a class="el" href="types_8h.html#a3">jack_nframes_t</a> nframes, void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called when the engine sample rate changes.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>nframes</em>&nbsp;</td><td>new engine sample rate </td></tr>
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>zero on success, non-zero on error </dd></dl>
    </td>
  </tr>
</table>
<a name="a10" doxytag="types.h::JackXRunCallback"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef int(* <a class="el" href="types_8h.html#a10">JackXRunCallback</a>)(void *arg)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Prototype for the client supplied function that is called whenever an xrun has occured.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign=top><em>arg</em>&nbsp;</td><td>pointer to a client supplied structure</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>zero on success, non-zero on error </dd></dl>
    </td>
  </tr>
</table>
<a name="a2" doxytag="types.h::shm_name_t"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef char <a class="el" href="types_8h.html#a2">shm_name_t</a>[32]
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
    </td>
  </tr>
</table>
<hr><h2>Enumeration Type Documentation</h2>
<a name="a20" doxytag="types.h::JackPortFlags"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> enum <a class="el" href="types_8h.html#a20">JackPortFlags</a>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A port has a set of flags that are formed by AND-ing together the desired values from the list below. The flags "JackPortIsInput" and "JackPortIsOutput" are mutually exclusive and it is an error to use them both. <dl compact><dt><b>Enumeration values: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em><a name="a20a15" doxytag="JackPortIsInput"></a><em>JackPortIsInput</em></em>&nbsp;</td><td>
if JackPortIsInput is set, then the port can receive data. </td></tr>
<tr><td valign=top><em><a name="a20a16" doxytag="JackPortIsOutput"></a><em>JackPortIsOutput</em></em>&nbsp;</td><td>
if JackPortIsOutput is set, then data can be read from the port. </td></tr>
<tr><td valign=top><em><a name="a20a17" doxytag="JackPortIsPhysical"></a><em>JackPortIsPhysical</em></em>&nbsp;</td><td>
if JackPortIsPhysical is set, then the port corresponds to some kind of physical I/O connector. </td></tr>
<tr><td valign=top><em><a name="a20a18" doxytag="JackPortCanMonitor"></a><em>JackPortCanMonitor</em></em>&nbsp;</td><td>
if JackPortCanMonitor is set, then a call to <a class="el" href="jack_8h.html#a39">jack_port_request_monitor()</a> makes sense.<p>
Precisely what this means is dependent on the client. A typical result of it being called with TRUE as the second argument is that data that would be available from an output port (with JackPortIsPhysical set) is sent to a physical output connector as well, so that it can be heard/seen/whatever.<p>
Clients that do not control physical interfaces should never create ports with this bit set. </td></tr>
<tr><td valign=top><em><a name="a20a19" doxytag="JackPortIsTerminal"></a><em>JackPortIsTerminal</em></em>&nbsp;</td><td>
JackPortIsTerminal means:<p>
for an input port: the data received by the port will not be passed on or made available at any other port<p>
for an output port: the data available at the port does not originate from any other port<p>
Audio synthesizers, i/o h/w interface clients, HDR systems are examples of things that would set this flag for their ports. </td></tr>
</table>
</dl>
    </td>
  </tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Wed Aug 6 04:09:58 2003 for Jack by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 > 
</a>1.3.2 </small></address>
</body>
</html>