\hypertarget{mw__util_8h}{
\section{mw\_\-util.h File Reference}
\label{mw__util_8h}\index{mw\_\-util.h@{mw\_\-util.h}}
}


{\tt \#include $<$glib.h$>$}\par
{\tt \#include $<$glib/ghash.h$>$}\par
{\tt \#include $<$glib/glist.h$>$}\par
\subsection*{Data Structures}
\begin{CompactItemize}
\item 
struct \hyperlink{structmw__datum}{mw\_\-datum}
\end{CompactItemize}
\subsection*{Defines}
\begin{CompactItemize}
\item 
\#define \hyperlink{mw__util_8h_8545a77c4c12bcbc50f7890e1c08d738}{map\_\-guint\_\-insert}(ht, key, val)~g\_\-hash\_\-table\_\-insert((ht), GUINT\_\-TO\_\-POINTER((guint)(key)), (val))
\item 
\#define \hyperlink{mw__util_8h_995b03c84cc362d463fa913353fad543}{map\_\-guint\_\-lookup}(ht, key)~g\_\-hash\_\-table\_\-lookup((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))
\item 
\#define \hyperlink{mw__util_8h_40a0cd9d8d59bc93282e4c66eb72ccf0}{map\_\-guint\_\-new}()~g\_\-hash\_\-table\_\-new(g\_\-direct\_\-hash, g\_\-direct\_\-equal)
\item 
\#define \hyperlink{mw__util_8h_4fc69db46f0a7df8b9e4bc9d9343ccb0}{map\_\-guint\_\-new\_\-full}(valfree)~g\_\-hash\_\-table\_\-new\_\-full(g\_\-direct\_\-hash, g\_\-direct\_\-equal, NULL, (valfree))
\item 
\#define \hyperlink{mw__util_8h_41e4a73c0dd02d9bf90dee94aeb576a1}{map\_\-guint\_\-remove}(ht, key)~g\_\-hash\_\-table\_\-remove((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))
\item 
\#define \hyperlink{mw__util_8h_54a8d68788cbf622365fafe637ab4c1b}{map\_\-guint\_\-replace}(ht, key, val)~g\_\-hash\_\-table\_\-replace((ht), GUINT\_\-TO\_\-POINTER((guint)(key)), (val))
\item 
\#define \hyperlink{mw__util_8h_d7d4d5c35609136152c80dafcbeabb5c}{map\_\-guint\_\-steal}(ht, key)~g\_\-hash\_\-table\_\-steal((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))
\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
GList $\ast$ \hyperlink{mw__util_8h_d29817e48937a63820e22e0067a6f859}{map\_\-collect\_\-keys} (GHashTable $\ast$ht)
\item 
GList $\ast$ \hyperlink{mw__util_8h_3315e4c1e1170d6c3dd69f1fdc9b2749}{map\_\-collect\_\-values} (GHashTable $\ast$ht)
\item 
void \hyperlink{mw__util_8h_139f601ce96836c80f968a8514632154}{mw\_\-datum\_\-clear} (struct \hyperlink{structmw__datum}{mw\_\-datum} $\ast$d)
\item 
void \hyperlink{mw__util_8h_667d5be333c3ebf915e9d09553f62a07}{mw\_\-datum\_\-free} (struct \hyperlink{structmw__datum}{mw\_\-datum} $\ast$d)
\item 
gpointer \hyperlink{mw__util_8h_31ef720b61cfdfa20292b2c647dbf6fc}{mw\_\-datum\_\-get} (struct \hyperlink{structmw__datum}{mw\_\-datum} $\ast$d)
\item 
struct \hyperlink{structmw__datum}{mw\_\-datum} $\ast$ \hyperlink{mw__util_8h_62bdcdfa0a3f987a772ec2744b4b1ac2}{mw\_\-datum\_\-new} (gpointer data, GDestroyNotify \hyperlink{structmwService_9b86cc0545150a4fde3ab3060e803e58}{clear})
\item 
void \hyperlink{mw__util_8h_a24529c43453132f1a5ae84d0f4b3de9}{mw\_\-datum\_\-set} (struct \hyperlink{structmw__datum}{mw\_\-datum} $\ast$d, gpointer data, GDestroyNotify \hyperlink{structmwService_9b86cc0545150a4fde3ab3060e803e58}{clear})
\end{CompactItemize}


\subsection{Define Documentation}
\hypertarget{mw__util_8h_8545a77c4c12bcbc50f7890e1c08d738}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-insert@{map\_\-guint\_\-insert}}
\index{map\_\-guint\_\-insert@{map\_\-guint\_\-insert}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-insert(ht, \/  key, \/  val)~g\_\-hash\_\-table\_\-insert((ht), GUINT\_\-TO\_\-POINTER((guint)(key)), (val))}}
\label{mw__util_8h_8545a77c4c12bcbc50f7890e1c08d738}


\hypertarget{mw__util_8h_995b03c84cc362d463fa913353fad543}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-lookup@{map\_\-guint\_\-lookup}}
\index{map\_\-guint\_\-lookup@{map\_\-guint\_\-lookup}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-lookup(ht, \/  key)~g\_\-hash\_\-table\_\-lookup((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))}}
\label{mw__util_8h_995b03c84cc362d463fa913353fad543}


\hypertarget{mw__util_8h_40a0cd9d8d59bc93282e4c66eb72ccf0}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-new@{map\_\-guint\_\-new}}
\index{map\_\-guint\_\-new@{map\_\-guint\_\-new}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-new()~g\_\-hash\_\-table\_\-new(g\_\-direct\_\-hash, g\_\-direct\_\-equal)}}
\label{mw__util_8h_40a0cd9d8d59bc93282e4c66eb72ccf0}


\hypertarget{mw__util_8h_4fc69db46f0a7df8b9e4bc9d9343ccb0}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-new\_\-full@{map\_\-guint\_\-new\_\-full}}
\index{map\_\-guint\_\-new\_\-full@{map\_\-guint\_\-new\_\-full}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-new\_\-full(valfree)~g\_\-hash\_\-table\_\-new\_\-full(g\_\-direct\_\-hash, g\_\-direct\_\-equal, NULL, (valfree))}}
\label{mw__util_8h_4fc69db46f0a7df8b9e4bc9d9343ccb0}


\hypertarget{mw__util_8h_41e4a73c0dd02d9bf90dee94aeb576a1}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-remove@{map\_\-guint\_\-remove}}
\index{map\_\-guint\_\-remove@{map\_\-guint\_\-remove}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-remove(ht, \/  key)~g\_\-hash\_\-table\_\-remove((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))}}
\label{mw__util_8h_41e4a73c0dd02d9bf90dee94aeb576a1}


\hypertarget{mw__util_8h_54a8d68788cbf622365fafe637ab4c1b}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-replace@{map\_\-guint\_\-replace}}
\index{map\_\-guint\_\-replace@{map\_\-guint\_\-replace}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-replace(ht, \/  key, \/  val)~g\_\-hash\_\-table\_\-replace((ht), GUINT\_\-TO\_\-POINTER((guint)(key)), (val))}}
\label{mw__util_8h_54a8d68788cbf622365fafe637ab4c1b}


\hypertarget{mw__util_8h_d7d4d5c35609136152c80dafcbeabb5c}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-guint\_\-steal@{map\_\-guint\_\-steal}}
\index{map\_\-guint\_\-steal@{map\_\-guint\_\-steal}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}\#define map\_\-guint\_\-steal(ht, \/  key)~g\_\-hash\_\-table\_\-steal((ht), GUINT\_\-TO\_\-POINTER((guint)(key)))}}
\label{mw__util_8h_d7d4d5c35609136152c80dafcbeabb5c}




\subsection{Function Documentation}
\hypertarget{mw__util_8h_d29817e48937a63820e22e0067a6f859}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-collect\_\-keys@{map\_\-collect\_\-keys}}
\index{map\_\-collect\_\-keys@{map\_\-collect\_\-keys}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}GList$\ast$ map\_\-collect\_\-keys (GHashTable $\ast$ {\em ht})}}
\label{mw__util_8h_d29817e48937a63820e22e0067a6f859}


\hypertarget{mw__util_8h_3315e4c1e1170d6c3dd69f1fdc9b2749}{
\index{mw\_\-util.h@{mw\_\-util.h}!map\_\-collect\_\-values@{map\_\-collect\_\-values}}
\index{map\_\-collect\_\-values@{map\_\-collect\_\-values}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}GList$\ast$ map\_\-collect\_\-values (GHashTable $\ast$ {\em ht})}}
\label{mw__util_8h_3315e4c1e1170d6c3dd69f1fdc9b2749}


\hypertarget{mw__util_8h_139f601ce96836c80f968a8514632154}{
\index{mw\_\-util.h@{mw\_\-util.h}!mw\_\-datum\_\-clear@{mw\_\-datum\_\-clear}}
\index{mw\_\-datum\_\-clear@{mw\_\-datum\_\-clear}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mw\_\-datum\_\-clear (struct {\bf mw\_\-datum} $\ast$ {\em d})}}
\label{mw__util_8h_139f601ce96836c80f968a8514632154}


\hypertarget{mw__util_8h_667d5be333c3ebf915e9d09553f62a07}{
\index{mw\_\-util.h@{mw\_\-util.h}!mw\_\-datum\_\-free@{mw\_\-datum\_\-free}}
\index{mw\_\-datum\_\-free@{mw\_\-datum\_\-free}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mw\_\-datum\_\-free (struct {\bf mw\_\-datum} $\ast$ {\em d})}}
\label{mw__util_8h_667d5be333c3ebf915e9d09553f62a07}


\hypertarget{mw__util_8h_31ef720b61cfdfa20292b2c647dbf6fc}{
\index{mw\_\-util.h@{mw\_\-util.h}!mw\_\-datum\_\-get@{mw\_\-datum\_\-get}}
\index{mw\_\-datum\_\-get@{mw\_\-datum\_\-get}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}gpointer mw\_\-datum\_\-get (struct {\bf mw\_\-datum} $\ast$ {\em d})}}
\label{mw__util_8h_31ef720b61cfdfa20292b2c647dbf6fc}


\hypertarget{mw__util_8h_62bdcdfa0a3f987a772ec2744b4b1ac2}{
\index{mw\_\-util.h@{mw\_\-util.h}!mw\_\-datum\_\-new@{mw\_\-datum\_\-new}}
\index{mw\_\-datum\_\-new@{mw\_\-datum\_\-new}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}struct {\bf mw\_\-datum}$\ast$ mw\_\-datum\_\-new (gpointer {\em data}, \/  GDestroyNotify {\em clear})\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{mw__util_8h_62bdcdfa0a3f987a772ec2744b4b1ac2}


\hypertarget{mw__util_8h_a24529c43453132f1a5ae84d0f4b3de9}{
\index{mw\_\-util.h@{mw\_\-util.h}!mw\_\-datum\_\-set@{mw\_\-datum\_\-set}}
\index{mw\_\-datum\_\-set@{mw\_\-datum\_\-set}!mw_util.h@{mw\_\-util.h}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void mw\_\-datum\_\-set (struct {\bf mw\_\-datum} $\ast$ {\em d}, \/  gpointer {\em data}, \/  GDestroyNotify {\em clear})}}
\label{mw__util_8h_a24529c43453132f1a5ae84d0f4b3de9}


