1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3
<title>JACK-AUDIO-CONNECTION-KIT: The non-callback API</title>
4
<link href="doxygen.css" rel="stylesheet" type="text/css">
5
<link href="tabs.css" rel="stylesheet" type="text/css">
7
<!-- Generated by Doxygen 1.5.6 -->
9
<h1>The non-callback API</h1><table border="0" cellpadding="0" cellspacing="0">
11
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
12
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="types_8h.html#a954df532e901ae5172e68a23f3da9b6">jack_nframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NonCallbackAPI.html#g1584ce29ad39817f7c494843b732ac94">jack_thread_wait</a> (<a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> *, int status)</td></tr>
14
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="types_8h.html#a954df532e901ae5172e68a23f3da9b6">jack_nframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NonCallbackAPI.html#g16580703a75f9669b35e0c3af74c87f7">jack_cycle_wait</a> (<a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> *<a class="el" href="simple__client_8c.html#fed7053cd7bdd1cce33dec7213f340ea">client</a>)</td></tr>
16
<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NonCallbackAPI.html#gf537b9889195861efce278f4837bc60e">jack_cycle_signal</a> (<a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> *<a class="el" href="simple__client_8c.html#fed7053cd7bdd1cce33dec7213f340ea">client</a>, int status)</td></tr>
18
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__NonCallbackAPI.html#g12d4c9b1cbc7cdd76aeb466f6e3cdfd9">jack_set_process_thread</a> (<a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> *<a class="el" href="simple__client_8c.html#fed7053cd7bdd1cce33dec7213f340ea">client</a>, <a class="el" href="types_8h.html#6f0cea0ebbd7aee4ec0591d3c26699f5">JackThreadCallback</a> fun, void *arg)</td></tr>
21
<hr><h2>Function Documentation</h2>
22
<a class="anchor" name="gf537b9889195861efce278f4837bc60e"></a><!-- doxytag: member="jack.h::jack_cycle_signal" ref="gf537b9889195861efce278f4837bc60e" args="(jack_client_t *client, int status)" -->
24
<div class="memproto">
25
<table class="memname">
27
<td class="memname">void jack_cycle_signal </td>
29
<td class="paramtype"><a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> * </td>
30
<td class="paramname"> <em>client</em>, </td>
33
<td class="paramkey"></td>
35
<td class="paramtype">int </td>
36
<td class="paramname"> <em>status</em></td><td> </td>
41
<td></td><td></td><td></td>
48
Signal next clients in the graph.<p>
49
<dl compact><dt><b>Parameters:</b></dt><dd>
50
<table border="0" cellspacing="2" cellpadding="0">
51
<tr><td valign="top"></td><td valign="top"><em>client</em> </td><td>- pointer to a JACK client structure </td></tr>
52
<tr><td valign="top"></td><td valign="top"><em>status</em> </td><td>- if non-zero, calling thread should exit </td></tr>
58
<a class="anchor" name="g16580703a75f9669b35e0c3af74c87f7"></a><!-- doxytag: member="jack.h::jack_cycle_wait" ref="g16580703a75f9669b35e0c3af74c87f7" args="(jack_client_t *client)" -->
60
<div class="memproto">
61
<table class="memname">
63
<td class="memname"><a class="el" href="types_8h.html#a954df532e901ae5172e68a23f3da9b6">jack_nframes_t</a> jack_cycle_wait </td>
65
<td class="paramtype"><a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> * </td>
66
<td class="paramname"> <em>client</em> </td>
67
<td> ) </td>
75
Wait until this JACK client should process data.<p>
76
<dl compact><dt><b>Parameters:</b></dt><dd>
77
<table border="0" cellspacing="2" cellpadding="0">
78
<tr><td valign="top"></td><td valign="top"><em>client</em> </td><td>- pointer to a JACK client structure</td></tr>
81
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the number of frames of data to process </dd></dl>
85
<a class="anchor" name="g12d4c9b1cbc7cdd76aeb466f6e3cdfd9"></a><!-- doxytag: member="jack.h::jack_set_process_thread" ref="g12d4c9b1cbc7cdd76aeb466f6e3cdfd9" args="(jack_client_t *client, JackThreadCallback fun, void *arg)" -->
87
<div class="memproto">
88
<table class="memname">
90
<td class="memname">int jack_set_process_thread </td>
92
<td class="paramtype"><a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> * </td>
93
<td class="paramname"> <em>client</em>, </td>
96
<td class="paramkey"></td>
98
<td class="paramtype"><a class="el" href="types_8h.html#6f0cea0ebbd7aee4ec0591d3c26699f5">JackThreadCallback</a> </td>
99
<td class="paramname"> <em>fun</em>, </td>
102
<td class="paramkey"></td>
104
<td class="paramtype">void * </td>
105
<td class="paramname"> <em>arg</em></td><td> </td>
110
<td></td><td></td><td></td>
117
Tell the Jack server to call <em>thread_callback</em> in the RT thread. Typical use are in conjunction with <em>jack_cycle_wait</em> and @ jack_cycle_signal functions. The code in the supplied function must be suitable for real-time execution. That means that it cannot call functions that might block for a long time. This includes malloc, free, printf, pthread_mutex_lock, sleep, wait, poll, select, pthread_join, pthread_cond_wait, etc, etc. See <a href="http://jackit.sourceforge.net/docs/design/design.html#SECTION00411000000000000000">http://jackit.sourceforge.net/docs/design/design.html#SECTION00411000000000000000</a> for more information.<p>
118
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, otherwise a non-zero error code. </dd></dl>
122
<a class="anchor" name="g1584ce29ad39817f7c494843b732ac94"></a><!-- doxytag: member="jack.h::jack_thread_wait" ref="g1584ce29ad39817f7c494843b732ac94" args="(jack_client_t *, int status)" -->
123
<div class="memitem">
124
<div class="memproto">
125
<table class="memname">
127
<td class="memname"><a class="el" href="types_8h.html#a954df532e901ae5172e68a23f3da9b6">jack_nframes_t</a> jack_thread_wait </td>
129
<td class="paramtype"><a class="el" href="types_8h.html#96cf103940d2ee71b141d4b9d0c116bf">jack_client_t</a> * </td>
130
<td class="paramname">, </td>
133
<td class="paramkey"></td>
135
<td class="paramtype">int </td>
136
<td class="paramname"> <em>status</em></td><td> </td>
141
<td></td><td></td><td></td>
148
<b>THIS FUNCTION IS DEPRECATED AND SHOULD NOT BE USED IN NEW JACK CLIENTS</b><p>
149
It should be replace by use of @ jack_cycle_wait and @ jack_cycle_signal functions.
153
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Nov 28 14:29:17 2008 for JACK-AUDIO-CONNECTION-KIT by
154
<a href="http://www.doxygen.org/index.html">
155
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>