\section{rox\_\-debug.h File Reference}
\label{rox__debug_8h}\index{rox_debug.h@{rox\_\-debug.h}}
Standard debug output. 

\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define {\bf dprintf}~rox\_\-debug\_\-printf
\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
void {\bf rox\_\-debug\_\-init} (const char $\ast$progname)
\item 
void {\bf rox\_\-debug\_\-printf} (int level, const char $\ast$fmt,...)
\end{CompactItemize}


\subsection{Detailed Description}
Standard debug output. 

Unless the pre-processer symbol {\tt DEBUG} is defined as non-zero before \doxyref{rox\_\-debug.h}{p.}{rox__debug_8h} is included then the functions here are defined to be no-operations.

\begin{Desc}
\item[Author:]Stephen Watson \end{Desc}
\begin{Desc}
\item[Version:]\begin{Desc}
\item[Id]\doxyref{rox\_\-debug.h}{p.}{rox__debug_8h},v 1.3 2005/08/21 13:06:38 stephen Exp \end{Desc}
\end{Desc}


\subsection{Define Documentation}
\index{rox_debug.h@{rox\_\-debug.h}!dprintf@{dprintf}}
\index{dprintf@{dprintf}!rox_debug.h@{rox\_\-debug.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define dprintf~rox\_\-debug\_\-printf}\label{rox__debug_8h_12a9e861369ba25e4dc67cc7880e2ae5}


An alias for \doxyref{rox\_\-debug\_\-printf()}{p.}{rox__debug_8c_6e8e03cc746b008a85db35481f0b3592} to save typing. 

\subsection{Function Documentation}
\index{rox_debug.h@{rox\_\-debug.h}!rox_debug_init@{rox\_\-debug\_\-init}}
\index{rox_debug_init@{rox\_\-debug\_\-init}!rox_debug.h@{rox\_\-debug.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void rox\_\-debug\_\-init (const char $\ast$ {\em progname})}\label{rox__debug_8h_f0ff727abefea4cc9ccc4be13c782190}


Initialize the debug system. This is normally called by \doxyref{rox\_\-init()}{p.}{rox_8c_afe930e2bcbe2cf1dd0834fafe43a1a3} or \doxyref{rox\_\-init\_\-with\_\-domain()}{p.}{rox_8c_74e2d8a486c8aedc955851dc7b71b660}. The program name is forced to all upper case and appended with \char`\"{}\_\-DEBUG\_\-LEVEL\char`\"{} to obtain a environment variable name, so that \char`\"{}Clock\char`\"{} becomes \char`\"{}CLOCK\_\-DEBUG\_\-LEVEL\char`\"{}. If that variable exists it is interpreted as an integer value and used as the debug level if it is greater than zero. Otherwise the debug level is set to zero.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[\mbox{$\leftarrow$} {\em progname}]program name \end{description}
\end{Desc}
\index{rox_debug.h@{rox\_\-debug.h}!rox_debug_printf@{rox\_\-debug\_\-printf}}
\index{rox_debug_printf@{rox\_\-debug\_\-printf}!rox_debug.h@{rox\_\-debug.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void rox\_\-debug\_\-printf (int {\em level}, const char $\ast$ {\em fmt},  {\em ...})}\label{rox__debug_8h_6e8e03cc746b008a85db35481f0b3592}


Format printf-like arugments and send the result to stderr (using g\_\-logv()) if the level is less than or equal to the current debug level.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[\mbox{$\leftarrow$} {\em level}]the level of the message (0 will always be seen). \item[\mbox{$\leftarrow$} {\em fmt}]a printf()-like format string \item[\mbox{$\leftarrow$} {\em ...}]arguments to the format string \end{description}
\end{Desc}
