\hypertarget{lo_8h}{
\section{lo.h File Reference}
\label{lo_8h}\index{lo.h@{lo.h}}
}
\subsection*{Functions}
\begin{CompactItemize}
\item 
\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} \hyperlink{group__liblo_ge5af61a02ab08871d3ea070c8f770cfe}{lo\_\-address\_\-new} (const char $\ast$host, const char $\ast$port)
\begin{CompactList}\small\item\em Declare an OSC destination, given IP address and port number. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} \hyperlink{group__liblo_g1af2cb3c80393cba838f64dfcdc35620}{lo\_\-address\_\-new\_\-from\_\-url} (const char $\ast$url)
\begin{CompactList}\small\item\em Create a lo\_\-address object from an OSC URL. \item\end{CompactList}\item 
void \hyperlink{group__liblo_g82b9a2d1d30214114eb5298f43aebac5}{lo\_\-address\_\-free} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} t)
\begin{CompactList}\small\item\em Free the memory used by the lo\_\-address object. \item\end{CompactList}\item 
void \hyperlink{group__liblo_gcd72097b92411db148844d89071fd281}{lo\_\-address\_\-set\_\-ttl} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} t, int ttl)
\begin{CompactList}\small\item\em Set the Time-to-Live value for a given target address. \item\end{CompactList}\item 
int \hyperlink{group__liblo_g3652ba694ba3c153dc96917e7321131c}{lo\_\-address\_\-get\_\-ttl} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} t)
\begin{CompactList}\small\item\em Get the Time-to-Live value for a given target address. \item\end{CompactList}\item 
int \hyperlink{group__liblo_gfa4253874f97c2c16254ac57d2b7c987}{lo\_\-send} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} targ, const char $\ast$path, const char $\ast$type,...)
\begin{CompactList}\small\item\em Send a OSC formatted message to the address specified. \item\end{CompactList}\item 
int \hyperlink{group__liblo_ga4a314562b09e2fd00749a5d0b4d0955}{lo\_\-send\_\-from} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} targ, \hyperlink{lo__types_8h_59067bf50cf8abb4371da6f03c9036c9}{lo\_\-server} from, \hyperlink{structlo__timetag}{lo\_\-timetag} ts, const char $\ast$path, const char $\ast$type,...)
\begin{CompactList}\small\item\em Send a OSC formatted message to the address specified, from the same socket as the specificied server. \item\end{CompactList}\item 
int \hyperlink{group__liblo_g42ec6437789c7516c5b7909d8504751a}{lo\_\-send\_\-timestamped} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} targ, \hyperlink{structlo__timetag}{lo\_\-timetag} ts, const char $\ast$path, const char $\ast$type,...)
\begin{CompactList}\small\item\em Send a OSC formatted message to the address specified, scheduled to be dispatch at some time in the future. \item\end{CompactList}\item 
int \hyperlink{group__liblo_g407e1694a2ec58ee5b90c6390e0a5d53}{lo\_\-address\_\-errno} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} a)
\begin{CompactList}\small\item\em Return the error number from the last failed lo\_\-send or lo\_\-address\_\-new call. \item\end{CompactList}\item 
const char $\ast$ \hyperlink{group__liblo_gce321bfb9e529d8640e96e894db5400c}{lo\_\-address\_\-errstr} (\hyperlink{lo__types_8h_bf9b53223467de596b89e1377b0f3f3d}{lo\_\-address} a)
\begin{CompactList}\small\item\em Return the error string from the last failed lo\_\-send or lo\_\-address\_\-new call. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} \hyperlink{group__liblo_gbe3e0c31189adfd7624de6c507b610ba}{lo\_\-server\_\-thread\_\-new} (const char $\ast$port, \hyperlink{lo__types_8h_a5d2e4aa0ff9d4459fcc76e7ed5839fc}{lo\_\-err\_\-handler} err\_\-h)
\begin{CompactList}\small\item\em Create a new server thread to handle incoming OSC messages. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} \hyperlink{group__liblo_g0fa9fcae4eabe09847d46b134dc33aa4}{lo\_\-server\_\-thread\_\-new\_\-multicast} (const char $\ast$group, const char $\ast$port, \hyperlink{lo__types_8h_a5d2e4aa0ff9d4459fcc76e7ed5839fc}{lo\_\-err\_\-handler} err\_\-h)
\begin{CompactList}\small\item\em Create a new server thread to handle incoming OSC messages, and join a UDP multicast group. Server threads take care of the message reception and dispatch by transparently creating a system thread to handle incoming messages. Use this if you do not want to handle the threading yourself. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} \hyperlink{group__liblo_g6713cedfb0b2c4f066ec8a19366bf095}{lo\_\-server\_\-thread\_\-new\_\-with\_\-proto} (const char $\ast$port, int proto, \hyperlink{lo__types_8h_a5d2e4aa0ff9d4459fcc76e7ed5839fc}{lo\_\-err\_\-handler} err\_\-h)
\begin{CompactList}\small\item\em Create a new server thread to handle incoming OSC messages, specifying protocol. \item\end{CompactList}\item 
void \hyperlink{group__liblo_gd72be3f2a81b9583ad69dd007080c0e5}{lo\_\-server\_\-thread\_\-free} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Free memory taken by a server thread. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_66faedf5da13231d8c0166870477dce5}{lo\_\-method} \hyperlink{group__liblo_gcff9c90a8efc400448276b2d20831010}{lo\_\-server\_\-thread\_\-add\_\-method} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st, const char $\ast$path, const char $\ast$typespec, \hyperlink{lo__types_8h_3b1c86c0925d05e13b5438ce8fe80a6c}{lo\_\-method\_\-handler} h, void $\ast$user\_\-data)
\begin{CompactList}\small\item\em Add an OSC method to the specifed server thread. \item\end{CompactList}\item 
void \hyperlink{group__liblo_g072edf53338bc807444c4b510643a828}{lo\_\-server\_\-thread\_\-del\_\-method} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st, const char $\ast$path, const char $\ast$typespec)
\begin{CompactList}\small\item\em Delete an OSC method from the specifed server thread. \item\end{CompactList}\item 
void \hyperlink{group__liblo_g6187bacbdd21975bf9d34f5d6de66ba8}{lo\_\-server\_\-thread\_\-start} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Start the server thread. \item\end{CompactList}\item 
void \hyperlink{group__liblo_g639e6b7a05852aa9cf089cc8e01b98e7}{lo\_\-server\_\-thread\_\-stop} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Stop the server thread. \item\end{CompactList}\item 
int \hyperlink{group__liblo_g22f4b18eeac41490647ab9fe2333f933}{lo\_\-server\_\-thread\_\-get\_\-port} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Return the port number that the server thread has bound to. \item\end{CompactList}\item 
char $\ast$ \hyperlink{group__liblo_gc2805a7cbdd9465be4ca5101c569faf0}{lo\_\-server\_\-thread\_\-get\_\-url} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Return a URL describing the address of the server thread. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_59067bf50cf8abb4371da6f03c9036c9}{lo\_\-server} \hyperlink{group__liblo_gb968d51fa6e0d4bea92e3f84f5556161}{lo\_\-server\_\-thread\_\-get\_\-server} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Return the lo\_\-server for a lo\_\-server\_\-thread. \item\end{CompactList}\item 
int \hyperlink{group__liblo_g7bc3d8361b65e3ad112a1da956d9114e}{lo\_\-server\_\-thread\_\-events\_\-pending} (\hyperlink{lo__types_8h_09996ffb6bde21b8fb6106897b88feae}{lo\_\-server\_\-thread} st)
\begin{CompactList}\small\item\em Return true if there are scheduled events (eg. from bundles) waiting to be dispatched by the thread. \item\end{CompactList}\item 
\hyperlink{lo__types_8h_8e780f8c09e3e4dd737fe249f11d16fc}{lo\_\-blob} \hyperlink{group__liblo_gffb2348c70cb0e1214fd50bdc7574c39}{lo\_\-blob\_\-new} (int32\_\-t size, const void $\ast$data)
\begin{CompactList}\small\item\em Create a new OSC blob type. \item\end{CompactList}\item 
void \hyperlink{group__liblo_ga46ef058cfdf14a16936c062ebac19b9}{lo\_\-blob\_\-free} (\hyperlink{lo__types_8h_8e780f8c09e3e4dd737fe249f11d16fc}{lo\_\-blob} b)
\begin{CompactList}\small\item\em Free the memory taken by a blob. \item\end{CompactList}\item 
uint32\_\-t \hyperlink{group__liblo_gb6c9184f0a54f19319d8a6409487b466}{lo\_\-blob\_\-datasize} (\hyperlink{lo__types_8h_8e780f8c09e3e4dd737fe249f11d16fc}{lo\_\-blob} b)
\begin{CompactList}\small\item\em Return the ammount of valid data in a lo blob object. \item\end{CompactList}\item 
void $\ast$ \hyperlink{group__liblo_g064e3435301e0df338b75023a7ebf38e}{lo\_\-blob\_\-dataptr} (\hyperlink{lo__types_8h_8e780f8c09e3e4dd737fe249f11d16fc}{lo\_\-blob} b)
\begin{CompactList}\small\item\em Return a pointer to the start of the blob data to allow contents to be changed. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
The liblo main headerfile and high-level API functions. 