summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex')
-rw-r--r--Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex79
1 files changed, 79 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex
new file mode 100644
index 00000000000..091afdc9e80
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pgf/text-en/pgfmanual-en-pgfsys-overview.tex
@@ -0,0 +1,79 @@
+% Copyright 2003 by Till Tantau <tantau@cs.tu-berlin.de>.
+%
+% This program can be redistributed and/or modified under the terms
+% of the LaTeX Project Public License Distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt.
+
+\section{Design of the System Layer}
+
+\makeatletter
+
+
+\subsection{Driver Files}
+\label{section-pgfsys}
+
+The \pgfname\ system layer mainly consists of a large number of
+commands starting with |\pgfsys@|. These commands will be called
+\emph{system commands} in the following. The higher layers
+``interface'' with the system layer by calling these commands. The
+higher layers should never use |\special| commands directly or even
+check whether |\pdfoutput| is defined. Instead, all drawing requests
+should be ``channeled'' through the system commands.
+
+The system layer is loaded and setup by the following package:
+
+\begin{package}{pgfsys}
+ This file provides ``default implementations'' of all system
+ commands, but most simply produce a warning that they are not
+ implemented. The actual implementations of the system commands for a
+ particular driver like, say, |pdftex| reside in files called
+ |pgfsys-xxxx.sty|, where |xxxx| is the driver name. These will be
+ called \emph{driver files} in the following.
+
+ When |pgfsys.sty| is loaded, it will try to determine which driver
+ is used by loading |pgf.cfg|. This file should setup the macro
+ |\pgfsysdriver| appropriately. The, |pgfsys.sty| will input the
+ appropriate |pgfsys-|\meta{drivername}|.sty|.
+\end{package}
+
+\begin{command}{\pgfsysdriver}
+ This macro should expand to the name of the driver to be used by
+ |pgfsys|. The default from |pgf.cfg| is |pgfsys-\Gin@driver|. This
+ is very likely to be correct if you are using \LaTeX. For plain
+ \TeX, the macro will be set to |pgfsys-pdftex.def| if |pdftex| is
+ used and to |pgfsys-dvips.def| otherwise.
+\end{command}
+
+\begin{filedescription}{pgf.cfg}
+ This file should setup the command |\pgfsysdriver| correctly. If
+ |\pgfsysdriver| is already set to some value, the driver normally
+ should not change it. Otherwise, it should make a ``good guess'' at
+ which driver will be appropriate.
+\end{filedescription}
+
+
+The currently supported backend drivers are discussed in
+Section~\ref{section-drivers}.
+
+
+\subsection{Common Definition Files}
+
+Some drivers share many |\pgfsys@| commands. For the reason, files
+defining these ``common'' commands are available. These files are
+\emph{not} usable alone.
+
+\begin{filedescription}{pgfsys-common-postscript}
+ This file defines some |\pgfsys@| commands so that they produce
+ appropriate PostScript code.
+\end{filedescription}
+
+\begin{filedescription}{pgfsys-common-pdf}
+ This file defines some |\pgfsys@| commands so that they produce
+ appropriate \textsc{pdf} code.
+\end{filedescription}
+
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "pgfmanual"
+%%% End: