\hypertarget{kdbgetenv_8h}{\section{kdbgetenv.\+h File Reference}
\label{kdbgetenv_8h}\index{kdbgetenv.\+h@{kdbgetenv.\+h}}
}


Header for the getenv library.  


{\ttfamily \#include $<$kdb.\+h$>$}\\*
Include dependency graph for kdbgetenv.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=154pt]{kdbgetenv_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{kdbgetenv_8h__dep__incl}
\end{center}
\end{figure}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{kdbgetenv_8h_aef7a56e366de6b4cf610cd10c6a935dc}{elektra\+Lock\+Mutex} ()
\begin{DoxyCompactList}\small\item\em Lock the internally used mutex to access elektra\+Repo, elektra\+Config or elektra\+Parent\+Key. \end{DoxyCompactList}\item 
void \hyperlink{kdbgetenv_8h_a363b55f9c535603ba01d7ffdaedc0aa6}{elektra\+Unlock\+Mutex} ()
\begin{DoxyCompactList}\small\item\em Unlock the internally used mutex. \end{DoxyCompactList}\item 
void \hyperlink{kdbgetenv_8h_ab53aad09e376f47cbc56b635163d91f7}{elektra\+Open} (int $\ast$argc, char $\ast$$\ast$argv)
\begin{DoxyCompactList}\small\item\em Initializes Global Elektra Repo+\+Config. \end{DoxyCompactList}\item 
void \hyperlink{kdbgetenv_8h_a369a7c837b448d04fba341f96b26ea88}{elektra\+Close} ()
\begin{DoxyCompactList}\small\item\em Closes and frees Repo+\+Config. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{kdbgetenv_8h_aacd74a96f547b46c20840656db2ce3d7}{K\+D\+B $\ast$ \hyperlink{kdbgetenv_8h_aacd74a96f547b46c20840656db2ce3d7}{elektra\+Repo}}\label{kdbgetenv_8h_aacd74a96f547b46c20840656db2ce3d7}

\begin{DoxyCompactList}\small\item\em The K\+D\+B repository to be used to fetch configuration. \end{DoxyCompactList}\item 
Key\+Set $\ast$ \hyperlink{kdbgetenv_8h_aad028793b12f33ad025bf2bd77aa24a8}{elektra\+Config}
\begin{DoxyCompactList}\small\item\em The config of the application. \end{DoxyCompactList}\item 
Key $\ast$ \hyperlink{kdbgetenv_8h_a9277ac7be70ac2ca190fefc742866aa3}{elektra\+Parent\+Key}
\begin{DoxyCompactList}\small\item\em The parent\+Key used to access elektra\+Repo. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Header for the getenv library. 

\begin{DoxyCopyright}{Copyright}
B\+S\+D License (see doc/\+C\+O\+P\+Y\+I\+N\+G or \href{http://www.libelektra.org}{\tt http\+://www.\+libelektra.\+org}) 
\end{DoxyCopyright}


\subsection{Function Documentation}
\hypertarget{kdbgetenv_8h_a369a7c837b448d04fba341f96b26ea88}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Close@{elektra\+Close}}
\index{elektra\+Close@{elektra\+Close}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Close}]{\setlength{\rightskip}{0pt plus 5cm}void elektra\+Close (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{kdbgetenv_8h_a369a7c837b448d04fba341f96b26ea88}


Closes and frees Repo+\+Config. 

It is safe to call it multiple times.

\begin{DoxySeeAlso}{See also}
\hyperlink{kdbgetenv_8h_ab53aad09e376f47cbc56b635163d91f7}{elektra\+Open} 
\end{DoxySeeAlso}
\hypertarget{kdbgetenv_8h_aef7a56e366de6b4cf610cd10c6a935dc}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Lock\+Mutex@{elektra\+Lock\+Mutex}}
\index{elektra\+Lock\+Mutex@{elektra\+Lock\+Mutex}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Lock\+Mutex}]{\setlength{\rightskip}{0pt plus 5cm}void elektra\+Lock\+Mutex (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{kdbgetenv_8h_aef7a56e366de6b4cf610cd10c6a935dc}


Lock the internally used mutex to access elektra\+Repo, elektra\+Config or elektra\+Parent\+Key. 

\begin{DoxySeeAlso}{See also}
\hyperlink{kdbgetenv_8h_a363b55f9c535603ba01d7ffdaedc0aa6}{elektra\+Unlock\+Mutex()}

\hyperlink{kdbgetenv_8h_aacd74a96f547b46c20840656db2ce3d7}{elektra\+Repo}, \hyperlink{kdbgetenv_8h_aad028793b12f33ad025bf2bd77aa24a8}{elektra\+Config} or \hyperlink{kdbgetenv_8h_a9277ac7be70ac2ca190fefc742866aa3}{elektra\+Parent\+Key} 
\end{DoxySeeAlso}
\hypertarget{kdbgetenv_8h_ab53aad09e376f47cbc56b635163d91f7}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Open@{elektra\+Open}}
\index{elektra\+Open@{elektra\+Open}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Open}]{\setlength{\rightskip}{0pt plus 5cm}void elektra\+Open (
\begin{DoxyParamCaption}
\item[{int $\ast$}]{argc, }
\item[{char $\ast$$\ast$}]{argv}
\end{DoxyParamCaption}
)}}\label{kdbgetenv_8h_ab53aad09e376f47cbc56b635163d91f7}


Initializes Global Elektra Repo+\+Config. 

It is safe to call it multiple times. Will automatically close using \hyperlink{kdbgetenv_8h_a369a7c837b448d04fba341f96b26ea88}{elektra\+Close()}, if it was open.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt out}  & {\em argc} & the number of args to parse, might be reduced \\
\hline
\mbox{\tt out}  & {\em argv} & the args, might be reduced\\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{kdbgetenv_8h_a369a7c837b448d04fba341f96b26ea88}{elektra\+Close} 
\end{DoxySeeAlso}
\hypertarget{kdbgetenv_8h_a363b55f9c535603ba01d7ffdaedc0aa6}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Unlock\+Mutex@{elektra\+Unlock\+Mutex}}
\index{elektra\+Unlock\+Mutex@{elektra\+Unlock\+Mutex}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Unlock\+Mutex}]{\setlength{\rightskip}{0pt plus 5cm}void elektra\+Unlock\+Mutex (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{kdbgetenv_8h_a363b55f9c535603ba01d7ffdaedc0aa6}


Unlock the internally used mutex. 

\begin{DoxySeeAlso}{See also}
\hyperlink{kdbgetenv_8h_aef7a56e366de6b4cf610cd10c6a935dc}{elektra\+Lock\+Mutex()} 
\end{DoxySeeAlso}


\subsection{Variable Documentation}
\hypertarget{kdbgetenv_8h_aad028793b12f33ad025bf2bd77aa24a8}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Config@{elektra\+Config}}
\index{elektra\+Config@{elektra\+Config}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Config}]{\setlength{\rightskip}{0pt plus 5cm}Key\+Set$\ast$ elektra\+Config}}\label{kdbgetenv_8h_aad028793b12f33ad025bf2bd77aa24a8}


The config of the application. 

Contains whole /env configuration. \hypertarget{kdbgetenv_8h_a9277ac7be70ac2ca190fefc742866aa3}{\index{kdbgetenv.\+h@{kdbgetenv.\+h}!elektra\+Parent\+Key@{elektra\+Parent\+Key}}
\index{elektra\+Parent\+Key@{elektra\+Parent\+Key}!kdbgetenv.\+h@{kdbgetenv.\+h}}
\subsubsection[{elektra\+Parent\+Key}]{\setlength{\rightskip}{0pt plus 5cm}Key$\ast$ elektra\+Parent\+Key}}\label{kdbgetenv_8h_a9277ac7be70ac2ca190fefc742866aa3}


The parent\+Key used to access elektra\+Repo. 

Contains all warnings and errors that happened during repo access 