\section{lib/gvc/gvplugin.c File Reference}
\label{gvplugin_8c}\index{lib/gvc/gvplugin.\-c@{lib/gvc/gvplugin.\-c}}
{\ttfamily \#include \char`\"{}config.\-h\char`\"{}}\\*
{\ttfamily \#include $<$string.\-h$>$}\\*
{\ttfamily \#include $<$sys/types.\-h$>$}\\*
{\ttfamily \#include $<$sys/stat.\-h$>$}\\*
{\ttfamily \#include $<$compat\-\_\-unistd.\-h$>$}\\*
{\ttfamily \#include $<$agxbuf.\-h$>$}\\*
{\ttfamily \#include \char`\"{}memory.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}types.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}gvplugin.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}gvcjob.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}gvcint.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}gvcproc.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}gvio.\-h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}const.\-h\char`\"{}}\\*
Include dependency graph for gvplugin.\-c\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{gvplugin_8c__incl}
\end{center}
\end{figure}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define {\bf E\-L\-E\-M}(x)~\#x,
\item 
\#define {\bf T\-Y\-P\-S\-I\-Z}~63
\item 
\#define {\bf T\-Y\-P\-B\-U\-F\-S\-I\-Z}~64
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
{\bf int} {\bf strcasecmp} (const char $\ast${\bf s1}, const char $\ast$s2)
\item 
{\bf api\-\_\-t} {\bf gvplugin\-\_\-api} (char $\ast${\bf str})
\item 
char $\ast$ {\bf gvplugin\-\_\-api\-\_\-name} ({\bf api\-\_\-t} api)
\item 
{\bf boolean} {\bf gvplugin\-\_\-install} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc}, {\bf api\-\_\-t} api, const char $\ast$typestr, {\bf int} quality, {\bf gvplugin\-\_\-package\-\_\-t} $\ast$package, {\bf gvplugin\-\_\-installed\-\_\-t} $\ast$typeptr)
\item 
{\bf gvplugin\-\_\-library\-\_\-t} $\ast$ {\bf gvplugin\-\_\-library\-\_\-load} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc}, char $\ast${\bf path})
\item 
{\bf gvplugin\-\_\-available\-\_\-t} $\ast$ {\bf gvplugin\-\_\-load} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc}, {\bf api\-\_\-t} api, const char $\ast${\bf str})
\item 
char $\ast$ {\bf gvplugin\-\_\-list} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc}, {\bf api\-\_\-t} api, const char $\ast${\bf str})
\item 
char $\ast$$\ast$ {\bf gv\-Plugin\-List} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc}, const char $\ast$kind, {\bf int} $\ast$sz, const char $\ast${\bf str})
\item 
void {\bf gvplugin\-\_\-write\-\_\-status} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc})
\item 
{\bf Agraph\-\_\-t} $\ast$ {\bf gvplugin\-\_\-graph} ({\bf G\-V\-C\-\_\-t} $\ast${\bf gvc})
\end{DoxyCompactItemize}


\subsection{Macro Definition Documentation}
\index{gvplugin.\-c@{gvplugin.\-c}!E\-L\-E\-M@{E\-L\-E\-M}}
\index{E\-L\-E\-M@{E\-L\-E\-M}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{E\-L\-E\-M}]{\setlength{\rightskip}{0pt plus 5cm}\#define E\-L\-E\-M(
\begin{DoxyParamCaption}
\item[{}]{x}
\end{DoxyParamCaption}
)~\#x,}\label{gvplugin_8c_a362272c997ae8f67a45bc9a4b399c736}


Definition at line 53 of file gvplugin.\-c.

\index{gvplugin.\-c@{gvplugin.\-c}!T\-Y\-P\-B\-U\-F\-S\-I\-Z@{T\-Y\-P\-B\-U\-F\-S\-I\-Z}}
\index{T\-Y\-P\-B\-U\-F\-S\-I\-Z@{T\-Y\-P\-B\-U\-F\-S\-I\-Z}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{T\-Y\-P\-B\-U\-F\-S\-I\-Z}]{\setlength{\rightskip}{0pt plus 5cm}\#define T\-Y\-P\-B\-U\-F\-S\-I\-Z~64}\label{gvplugin_8c_adceab781edba886efb14853626de7baa}


Referenced by gvplugin\-\_\-load().

\index{gvplugin.\-c@{gvplugin.\-c}!T\-Y\-P\-S\-I\-Z@{T\-Y\-P\-S\-I\-Z}}
\index{T\-Y\-P\-S\-I\-Z@{T\-Y\-P\-S\-I\-Z}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{T\-Y\-P\-S\-I\-Z}]{\setlength{\rightskip}{0pt plus 5cm}\#define T\-Y\-P\-S\-I\-Z~63}\label{gvplugin_8c_ae46887806356f01d99ecf79b4c63266e}


Referenced by gvplugin\-\_\-install().



\subsection{Function Documentation}
\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-api@{gvplugin\-\_\-api}}
\index{gvplugin\-\_\-api@{gvplugin\-\_\-api}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-api}]{\setlength{\rightskip}{0pt plus 5cm}{\bf api\-\_\-t} gvplugin\-\_\-api (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{str}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a9d0d1b5f38201f49d522886a9c1f0bea}


Definition at line 59 of file gvplugin.\-c.



References A\-R\-R\-A\-Y\-\_\-\-S\-I\-Z\-E.

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-api\-\_\-name@{gvplugin\-\_\-api\-\_\-name}}
\index{gvplugin\-\_\-api\-\_\-name@{gvplugin\-\_\-api\-\_\-name}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-api\-\_\-name}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ gvplugin\-\_\-api\-\_\-name (
\begin{DoxyParamCaption}
\item[{{\bf api\-\_\-t}}]{api}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a8aab65252d0762914b998fc7e776a3cf}


Definition at line 71 of file gvplugin.\-c.



References A\-R\-R\-A\-Y\-\_\-\-S\-I\-Z\-E, and N\-U\-L\-L.



Referenced by gvconfig\-\_\-plugin\-\_\-install\-\_\-from\-\_\-library().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-graph@{gvplugin\-\_\-graph}}
\index{gvplugin\-\_\-graph@{gvplugin\-\_\-graph}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-graph}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Agraph\-\_\-t}$\ast$ gvplugin\-\_\-graph (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_afaa8bc597ef243b499137edb68e8b967}


Definition at line 490 of file gvplugin.\-c.



References agattr(), Agdirected, A\-G\-E\-D\-G\-E, agedge(), agfindedge, agfindedgeattr, agfindgraphattr, agfindnode, agfindnodeattr, A\-G\-N\-O\-D\-E, agnode(), agopen(), A\-G\-R\-A\-P\-H, agsubg(), agxset(), G\-V\-C\-\_\-s\-::apis, A\-R\-R\-A\-Y\-\_\-\-S\-I\-Z\-E, gvplugin\-\_\-package\-\_\-s\-::name, gvplugin\-\_\-package\-\_\-s\-::next, N\-I\-L, N\-O\-D\-E\-N\-A\-M\-E\-\_\-\-E\-S\-C, N\-U\-L\-L, and G\-V\-C\-\_\-s\-::packages.



Referenced by dotneato\-\_\-args\-\_\-initialize().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-install@{gvplugin\-\_\-install}}
\index{gvplugin\-\_\-install@{gvplugin\-\_\-install}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-install}]{\setlength{\rightskip}{0pt plus 5cm}{\bf boolean} gvplugin\-\_\-install (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc, }
\item[{{\bf api\-\_\-t}}]{api, }
\item[{const char $\ast$}]{typestr, }
\item[{{\bf int}}]{quality, }
\item[{{\bf gvplugin\-\_\-package\-\_\-t} $\ast$}]{package, }
\item[{{\bf gvplugin\-\_\-installed\-\_\-t} $\ast$}]{typeptr}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_afd7613fc825651d55a662d3fbaefcd33}


Definition at line 83 of file gvplugin.\-c.



References G\-V\-C\-\_\-s\-::apis, G\-N\-E\-W, gvplugin\-\_\-available\-\_\-s\-::next, gvplugin\-\_\-available\-\_\-s\-::package, gvplugin\-\_\-available\-\_\-s\-::quality, T\-R\-U\-E, gvplugin\-\_\-available\-\_\-s\-::typeptr, gvplugin\-\_\-available\-\_\-s\-::typestr, and T\-Y\-P\-S\-I\-Z.



Referenced by gvconfig\-\_\-plugin\-\_\-install\-\_\-from\-\_\-library().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-library\-\_\-load@{gvplugin\-\_\-library\-\_\-load}}
\index{gvplugin\-\_\-library\-\_\-load@{gvplugin\-\_\-library\-\_\-load}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-library\-\_\-load}]{\setlength{\rightskip}{0pt plus 5cm}{\bf gvplugin\-\_\-library\-\_\-t}$\ast$ gvplugin\-\_\-library\-\_\-load (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc, }
\item[{char $\ast$}]{path}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a55cdf976f0b2090c09c44f3d7d7f0278}


Definition at line 158 of file gvplugin.\-c.



References agerr(), A\-G\-E\-R\-R, A\-G\-W\-A\-R\-N, G\-V\-C\-\_\-s\-::common, G\-V\-C\-O\-M\-M\-O\-N\-\_\-s\-::demand\-\_\-loading, D\-I\-R\-S\-E\-P, gmalloc(), grealloc(), gvconfig\-\_\-libdir(), N\-U\-L\-L, and G\-V\-C\-O\-M\-M\-O\-N\-\_\-s\-::verbose.



Referenced by gvconfig\-\_\-plugin\-\_\-install\-\_\-from\-\_\-library(), and gvplugin\-\_\-load().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-list@{gvplugin\-\_\-list}}
\index{gvplugin\-\_\-list@{gvplugin\-\_\-list}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-list}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ gvplugin\-\_\-list (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc, }
\item[{{\bf api\-\_\-t}}]{api, }
\item[{const char $\ast$}]{str}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_ada7d816e446713c9aaf0460e4b84abdc}


Definition at line 342 of file gvplugin.\-c.



References agxbinit(), agxbput(), agxbputc, agxbuse, G\-V\-C\-\_\-s\-::apis, F\-A\-L\-S\-E, N\-U\-L\-L, strcasecmp(), and T\-R\-U\-E.



Referenced by dotneato\-\_\-args\-\_\-initialize(), graphcmd(), gv\-Layout(), gv\-Layout\-Jobs(), gvplugin\-\_\-write\-\_\-status(), gv\-Render(), gv\-Render\-Context(), gv\-Render\-Data(), gv\-Render\-Filename(), and tcldot\-\_\-layout().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-load@{gvplugin\-\_\-load}}
\index{gvplugin\-\_\-load@{gvplugin\-\_\-load}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-load}]{\setlength{\rightskip}{0pt plus 5cm}{\bf gvplugin\-\_\-available\-\_\-t}$\ast$ gvplugin\-\_\-load (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc, }
\item[{{\bf api\-\_\-t}}]{api, }
\item[{const char $\ast$}]{str}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_aba311ffbb627766acfde78caba144d6c}


Definition at line 262 of file gvplugin.\-c.



References gvplugin\-\_\-api\-\_\-t\-::api, G\-V\-C\-\_\-s\-::api, gvplugin\-\_\-library\-\_\-t\-::apis, G\-V\-C\-\_\-s\-::apis, G\-V\-C\-\_\-s\-::common, gvplugin\-\_\-library\-\_\-load(), gvplugin\-\_\-load(), gvplugin\-\_\-package\-\_\-s\-::name, N\-U\-L\-L, gvplugin\-\_\-available\-\_\-s\-::package, gvplugin\-\_\-library\-\_\-t\-::packagename, gvplugin\-\_\-package\-\_\-s\-::path, T\-Y\-P\-B\-U\-F\-S\-I\-Z, gvplugin\-\_\-installed\-\_\-t\-::type, gvplugin\-\_\-available\-\_\-s\-::typeptr, gvplugin\-\_\-api\-\_\-t\-::types, gvplugin\-\_\-available\-\_\-s\-::typestr, and G\-V\-C\-O\-M\-M\-O\-N\-\_\-s\-::verbose.



Referenced by gvconfig\-\_\-plugin\-\_\-install\-\_\-from\-\_\-library(), gvjobs\-\_\-output\-\_\-langname(), gvlayout\-\_\-select(), gvplugin\-\_\-load(), gvrender\-\_\-select(), and gvtextlayout\-\_\-select().

\index{gvplugin.\-c@{gvplugin.\-c}!gvplugin\-\_\-write\-\_\-status@{gvplugin\-\_\-write\-\_\-status}}
\index{gvplugin\-\_\-write\-\_\-status@{gvplugin\-\_\-write\-\_\-status}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gvplugin\-\_\-write\-\_\-status}]{\setlength{\rightskip}{0pt plus 5cm}void gvplugin\-\_\-write\-\_\-status (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a0d067f0b86569065988c0d654b4bef25}


Definition at line 465 of file gvplugin.\-c.



References A\-R\-R\-A\-Y\-\_\-\-S\-I\-Z\-E, G\-V\-C\-\_\-s\-::common, G\-V\-C\-\_\-s\-::config\-\_\-found, G\-V\-C\-\_\-s\-::config\-\_\-path, G\-V\-C\-O\-M\-M\-O\-N\-\_\-s\-::demand\-\_\-loading, gvplugin\-\_\-list(), and G\-V\-C\-O\-M\-M\-O\-N\-\_\-s\-::verbose.



Referenced by gv\-Parse\-Args().

\index{gvplugin.\-c@{gvplugin.\-c}!gv\-Plugin\-List@{gv\-Plugin\-List}}
\index{gv\-Plugin\-List@{gv\-Plugin\-List}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{gv\-Plugin\-List}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$$\ast$ gv\-Plugin\-List (
\begin{DoxyParamCaption}
\item[{{\bf G\-V\-C\-\_\-t} $\ast$}]{gvc, }
\item[{const char $\ast$}]{kind, }
\item[{{\bf int} $\ast$}]{sz, }
\item[{const char $\ast$}]{str}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a1794e0559fea52e085b27d7843267cbd}


Definition at line 427 of file gvplugin.\-c.



References agerr(), A\-G\-E\-R\-R, G\-V\-C\-\_\-s\-::apis, A\-R\-R\-A\-Y\-\_\-\-S\-I\-Z\-E, N\-U\-L\-L, R\-A\-L\-L\-O\-C, and strcasecmp().

\index{gvplugin.\-c@{gvplugin.\-c}!strcasecmp@{strcasecmp}}
\index{strcasecmp@{strcasecmp}!gvplugin.c@{gvplugin.\-c}}
\subsubsection[{strcasecmp}]{\setlength{\rightskip}{0pt plus 5cm}{\bf int} strcasecmp (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{s1, }
\item[{const char $\ast$}]{s2}
\end{DoxyParamCaption}
)}\label{gvplugin_8c_a706b36f3a672f84685576723c3928baa}


Definition at line 21 of file strcasecmp.\-c.

