Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 16ddb2bbfb06c9689bef4d45275fb157 > files > 37

jackit-realtime-0.50.0-2mdk.ppc.rpm

\hypertarget{types_8h}{
\section{types.h File Reference}
\label{types_8h}\index{types.h@{types.h}}
}
{\tt \#include $<$limits.h$>$}\par
\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define \hyperlink{types_8h_a0}{JACK\_\-MAX\_\-FRAMES}\ ULONG\_\-MAX;
\item 
\#define \hyperlink{types_8h_a1}{JACK\_\-DEFAULT\_\-AUDIO\_\-TYPE}\ \char`\"{}32 bit float mono audio\char`\"{}
\end{CompactItemize}
\subsection*{Typedefs}
\begin{CompactItemize}
\item 
typedef unsigned long \hyperlink{types_8h_a2}{jack\_\-nframes\_\-t}
\item 
typedef \_\-jack\_\-port \hyperlink{types_8h_a3}{jack\_\-port\_\-t}
\item 
typedef \_\-jack\_\-client \hyperlink{types_8h_a4}{jack\_\-client\_\-t}
\item 
typedef unsigned long \hyperlink{types_8h_a5}{jack\_\-port\_\-id\_\-t}
\item 
typedef int($\ast$ \hyperlink{types_8h_a6}{Jack\-Process\-Callback} )(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)
\item 
typedef int($\ast$ \hyperlink{types_8h_a7}{Jack\-Graph\-Order\-Callback} )(void $\ast$arg)
\item 
typedef int($\ast$ \hyperlink{types_8h_a8}{Jack\-XRun\-Callback} )(void $\ast$arg)
\item 
typedef int($\ast$ \hyperlink{types_8h_a9}{Jack\-Buffer\-Size\-Callback} )(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)
\item 
typedef int($\ast$ \hyperlink{types_8h_a10}{Jack\-Sample\-Rate\-Callback} )(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)
\item 
typedef void($\ast$ \hyperlink{types_8h_a11}{Jack\-Port\-Registration\-Callback} )(\hyperlink{types_8h_a5}{jack\_\-port\_\-id\_\-t} port, int, void $\ast$arg)
\item 
typedef float \hyperlink{types_8h_a12}{jack\_\-default\_\-audio\_\-sample\_\-t}
\end{CompactItemize}
\subsection*{Enumerations}
\begin{CompactItemize}
\item 
enum \hyperlink{types_8h_a18}{Jack\-Port\-Flags} \{ \hyperlink{types_8h_a18a13}{Jack\-Port\-Is\-Input} =  0x1, 
\hyperlink{types_8h_a18a14}{Jack\-Port\-Is\-Output} =  0x2, 
\hyperlink{types_8h_a18a15}{Jack\-Port\-Is\-Physical} =  0x4, 
\hyperlink{types_8h_a18a16}{Jack\-Port\-Can\-Monitor} =  0x8, 
\hyperlink{types_8h_a18a17}{Jack\-Port\-Is\-Terminal} =  0x10
 \}
\end{CompactItemize}


\subsection{Define Documentation}
\hypertarget{types_8h_a1}{
\index{types.h@{types.h}!JACK_DEFAULT_AUDIO_TYPE@{JACK\_\-DEFAULT\_\-AUDIO\_\-TYPE}}
\index{JACK_DEFAULT_AUDIO_TYPE@{JACK\_\-DEFAULT\_\-AUDIO\_\-TYPE}!types.h@{types.h}}
\subsubsection[JACK\_\-DEFAULT\_\-AUDIO\_\-TYPE]{\setlength{\rightskip}{0pt plus 5cm}\#define JACK\_\-DEFAULT\_\-AUDIO\_\-TYPE\ \char`\"{}32 bit float mono audio\char`\"{}}}
\label{types_8h_a1}


Used for the type argument of \hyperlink{jack_8h_a12}{jack\_\-port\_\-register()}. \hypertarget{types_8h_a0}{
\index{types.h@{types.h}!JACK_MAX_FRAMES@{JACK\_\-MAX\_\-FRAMES}}
\index{JACK_MAX_FRAMES@{JACK\_\-MAX\_\-FRAMES}!types.h@{types.h}}
\subsubsection[JACK\_\-MAX\_\-FRAMES]{\setlength{\rightskip}{0pt plus 5cm}\#define JACK\_\-MAX\_\-FRAMES\ ULONG\_\-MAX;}}
\label{types_8h_a0}


Maximum value that can be stored in jack\_\-nframes\_\-t 

\subsection{Typedef Documentation}
\hypertarget{types_8h_a4}{
\index{types.h@{types.h}!jack_client_t@{jack\_\-client\_\-t}}
\index{jack_client_t@{jack\_\-client\_\-t}!types.h@{types.h}}
\subsubsection[jack\_\-client\_\-t]{\setlength{\rightskip}{0pt plus 5cm}typedef struct \_\-jack\_\-client jack\_\-client\_\-t}}
\label{types_8h_a4}


jack\_\-client\_\-t is an opaque type. You may only access it using the API provided. \hypertarget{types_8h_a12}{
\index{types.h@{types.h}!jack_default_audio_sample_t@{jack\_\-default\_\-audio\_\-sample\_\-t}}
\index{jack_default_audio_sample_t@{jack\_\-default\_\-audio\_\-sample\_\-t}!types.h@{types.h}}
\subsubsection[jack\_\-default\_\-audio\_\-sample\_\-t]{\setlength{\rightskip}{0pt plus 5cm}typedef float jack\_\-default\_\-audio\_\-sample\_\-t}}
\label{types_8h_a12}


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. \hypertarget{types_8h_a2}{
\index{types.h@{types.h}!jack_nframes_t@{jack\_\-nframes\_\-t}}
\index{jack_nframes_t@{jack\_\-nframes\_\-t}!types.h@{types.h}}
\subsubsection[jack\_\-nframes\_\-t]{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned long jack\_\-nframes\_\-t}}
\label{types_8h_a2}


Type used to represent sample frame counts. \hypertarget{types_8h_a5}{
\index{types.h@{types.h}!jack_port_id_t@{jack\_\-port\_\-id\_\-t}}
\index{jack_port_id_t@{jack\_\-port\_\-id\_\-t}!types.h@{types.h}}
\subsubsection[jack\_\-port\_\-id\_\-t]{\setlength{\rightskip}{0pt plus 5cm}typedef unsigned long jack\_\-port\_\-id\_\-t}}
\label{types_8h_a5}


Ports have unique ids. You will very rarely need to know them, however, except in the case of the port registration callback. \hypertarget{types_8h_a3}{
\index{types.h@{types.h}!jack_port_t@{jack\_\-port\_\-t}}
\index{jack_port_t@{jack\_\-port\_\-t}!types.h@{types.h}}
\subsubsection[jack\_\-port\_\-t]{\setlength{\rightskip}{0pt plus 5cm}typedef struct \_\-jack\_\-port jack\_\-port\_\-t}}
\label{types_8h_a3}


jack\_\-port\_\-t is an opaque type. You may only access it using the API provided. \hypertarget{types_8h_a9}{
\index{types.h@{types.h}!JackBufferSizeCallback@{JackBufferSizeCallback}}
\index{JackBufferSizeCallback@{JackBufferSizeCallback}!types.h@{types.h}}
\subsubsection[JackBufferSizeCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ Jack\-Buffer\-Size\-Callback)(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)}}
\label{types_8h_a9}


Prototype for the client supplied function that is called  when the engine buffersize changes.

Note! Use of this callback function is deprecated!\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
nframes}]new engine buffer size \item[{\em 
arg}]pointer to a client supplied structure\end{description}
\end{Desc}
\begin{Desc}
\item[Returns: ]\par
zero on success, non-zero on error \end{Desc}
\hypertarget{types_8h_a7}{
\index{types.h@{types.h}!JackGraphOrderCallback@{JackGraphOrderCallback}}
\index{JackGraphOrderCallback@{JackGraphOrderCallback}!types.h@{types.h}}
\subsubsection[JackGraphOrderCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ Jack\-Graph\-Order\-Callback)(void $\ast$arg)}}
\label{types_8h_a7}


Prototype for the client supplied function that is called  whenever the processing graph is reordered.\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
arg}]pointer to a client supplied structure\end{description}
\end{Desc}
\begin{Desc}
\item[Returns: ]\par
zero on success, non-zero on error \end{Desc}
\hypertarget{types_8h_a11}{
\index{types.h@{types.h}!JackPortRegistrationCallback@{JackPortRegistrationCallback}}
\index{JackPortRegistrationCallback@{JackPortRegistrationCallback}!types.h@{types.h}}
\subsubsection[JackPortRegistrationCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef void($\ast$ Jack\-Port\-Registration\-Callback)(\hyperlink{types_8h_a5}{jack\_\-port\_\-id\_\-t} port, int, void $\ast$arg)}}
\label{types_8h_a11}


Prototype for the client supplied function that is called  whenever a port is registered or unregistered.\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
arg}]pointer to a client supplied structure \end{description}
\end{Desc}
\hypertarget{types_8h_a6}{
\index{types.h@{types.h}!JackProcessCallback@{JackProcessCallback}}
\index{JackProcessCallback@{JackProcessCallback}!types.h@{types.h}}
\subsubsection[JackProcessCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ Jack\-Process\-Callback)(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)}}
\label{types_8h_a6}


Prototype for the client supplied function that is called  by the engine anytime there is work to be done.

\begin{Desc}
\item[Precondition: ]\par
nframes == \hyperlink{jack_8h_a41}{jack\_\-get\_\-buffer\_\-size()} \par
nframes == pow(2,x)\end{Desc}
\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
nframes}]number of frames to process \item[{\em 
arg}]pointer to a client supplied structure\end{description}
\end{Desc}
\begin{Desc}
\item[Returns: ]\par
zero on success, non-zero on error \end{Desc}
\hypertarget{types_8h_a10}{
\index{types.h@{types.h}!JackSampleRateCallback@{JackSampleRateCallback}}
\index{JackSampleRateCallback@{JackSampleRateCallback}!types.h@{types.h}}
\subsubsection[JackSampleRateCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ Jack\-Sample\-Rate\-Callback)(\hyperlink{types_8h_a2}{jack\_\-nframes\_\-t} nframes, void $\ast$arg)}}
\label{types_8h_a10}


Prototype for the client supplied function that is called  when the engine sample rate changes.\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
nframes}]new engine sample rate \item[{\em 
arg}]pointer to a client supplied structure\end{description}
\end{Desc}
\begin{Desc}
\item[Returns: ]\par
zero on success, non-zero on error \end{Desc}
\hypertarget{types_8h_a8}{
\index{types.h@{types.h}!JackXRunCallback@{JackXRunCallback}}
\index{JackXRunCallback@{JackXRunCallback}!types.h@{types.h}}
\subsubsection[JackXRunCallback]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ Jack\-XRun\-Callback)(void $\ast$arg)}}
\label{types_8h_a8}


Prototype for the client supplied function that is called  whenever an xrun has occured.\begin{Desc}
\item[Parameters: ]\par
\begin{description}
\item[{\em 
arg}]pointer to a client supplied structure\end{description}
\end{Desc}
\begin{Desc}
\item[Returns: ]\par
zero on success, non-zero on error \end{Desc}


\subsection{Enumeration Type Documentation}
\hypertarget{types_8h_a18}{
\index{types.h@{types.h}!JackPortFlags@{JackPortFlags}}
\index{JackPortFlags@{JackPortFlags}!types.h@{types.h}}
\subsubsection[JackPortFlags]{\setlength{\rightskip}{0pt plus 5cm}enum Jack\-Port\-Flags}}
\label{types_8h_a18}


A port has a set of flags that are formed by AND-ing together the desired values from the list below. The flags \char`\"{}Jack\-Port\-Is\-Input\char`\"{} and \char`\"{}Jack\-Port\-Is\-Output\char`\"{} are mutually exclusive and it is an error to use them both. \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{JackPortIsInput@{JackPortIsInput}!types.h@{types.h}}\index{types.h@{types.h}!JackPortIsInput@{JackPortIsInput}}\item[{\em 
\hypertarget{types_8h_a18a13}{
{\em Jack\-Port\-Is\-Input}}
\label{types_8h_a18a13}
}]if Jack\-Port\-Is\-Input is set, then the port can receive data. \index{JackPortIsOutput@{JackPortIsOutput}!types.h@{types.h}}\index{types.h@{types.h}!JackPortIsOutput@{JackPortIsOutput}}\item[{\em 
\hypertarget{types_8h_a18a14}{
{\em Jack\-Port\-Is\-Output}}
\label{types_8h_a18a14}
}]if Jack\-Port\-Is\-Output is set, then data can be read from the port. \index{JackPortIsPhysical@{JackPortIsPhysical}!types.h@{types.h}}\index{types.h@{types.h}!JackPortIsPhysical@{JackPortIsPhysical}}\item[{\em 
\hypertarget{types_8h_a18a15}{
{\em Jack\-Port\-Is\-Physical}}
\label{types_8h_a18a15}
}]if Jack\-Port\-Is\-Physical is set, then the port corresponds to some kind of physical I/O connector. \index{JackPortCanMonitor@{JackPortCanMonitor}!types.h@{types.h}}\index{types.h@{types.h}!JackPortCanMonitor@{JackPortCanMonitor}}\item[{\em 
\hypertarget{types_8h_a18a16}{
{\em Jack\-Port\-Can\-Monitor}}
\label{types_8h_a18a16}
}]if Jack\-Port\-Can\-Monitor is set, then a call to \hyperlink{jack_8h_a36}{jack\_\-port\_\-request\_\-monitor()} makes sense.

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 Jack\-Port\-Is\-Physical set) is sent to a physical output connector as well, so that it can be heard/seen/whatever.

Clients that do not control physical interfaces should never create ports with this bit set. \index{JackPortIsTerminal@{JackPortIsTerminal}!types.h@{types.h}}\index{types.h@{types.h}!JackPortIsTerminal@{JackPortIsTerminal}}\item[{\em 
\hypertarget{types_8h_a18a17}{
{\em Jack\-Port\-Is\-Terminal}}
\label{types_8h_a18a17}
}]Jack\-Port\-Is\-Terminal means:

for an input port: the data received by the port will not be passed on or made available at any other port

for an output port: the data available at the port does not originate from any other port

Audio synthesizers, i/o h/w interface clients, HDR systems are examples of things that would set this flag for their ports. \end{description}
\end{Desc}