summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-02-24 23:00:15 +0000
committerKarl Berry <karl@freefriends.org>2014-02-24 23:00:15 +0000
commit1183f8e866b15342db38d90474db426a5d2197e1 (patch)
treed7dc427c89ed183873fb5bec244b8d1ffe5e1bb1 /Master
parent896ff7b1cf64274d27af3e7645ede25c72bd5029 (diff)
pgf-umlsd (24feb14)
git-svn-id: svn://tug.org/texlive/trunk@33045 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/README1
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/block.tex9
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/call.tex7
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/callself.tex6
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.log237
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.tex9
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/distance.tex6
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/empty.tex2
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/instance.tex3
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/message.tex6
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/messcall.tex7
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/multi-threads-example.tex37
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/nested-call.tex10
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/no-thread-example.tex33
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/non-instantaneous-message.tex7
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.log216
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.tex8
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/prelevel.tex12
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/single-thread-example.tex29
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/sync-clock.tex16
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/thread.tex3
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.log266
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.tex17
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/diagrams.pdfbin0 -> 24427 bytes
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/logo.pngbin0 -> 4508 bytes
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.pdfbin48718 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.tex101
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.pdfbin39282 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.tex105
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.pdfbin0 -> 235682 bytes
-rw-r--r--Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.tex192
-rw-r--r--Master/texmf-dist/tex/latex/pgf-umlsd/pgf-umlsd.sty90
32 files changed, 1207 insertions, 228 deletions
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/README b/Master/texmf-dist/doc/latex/pgf-umlsd/README
index 21c687fcc06..c6735d5df49 100644
--- a/Master/texmf-dist/doc/latex/pgf-umlsd/README
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/README
@@ -1,2 +1,3 @@
Some LaTeX macros for UML Sequence Diagrams.
Home page of project: http://pgf-umlsd.googlecode.com/
+Please read pgf-umlsd-manual.pdf for more information.
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/block.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/block.tex
new file mode 100644
index 00000000000..deec2c8fa75
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/block.tex
@@ -0,0 +1,9 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+ \newinst[1]{i}{:Instance}
+
+ \begin{sdblock}{Block}{description}
+ \begin{call}{t}{function()}{i}{}
+ \end{call}
+ \end{sdblock}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/call.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/call.tex
new file mode 100644
index 00000000000..b67d61e8411
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/call.tex
@@ -0,0 +1,7 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+ \newinst[1]{i}{:Instance}
+
+ \begin{call}{t}{function()}{i}{return value}
+ \end{call}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/callself.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/callself.tex
new file mode 100644
index 00000000000..47297582374
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/callself.tex
@@ -0,0 +1,6 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+
+ \begin{call}{t}{function()}{t}{return value}
+ \end{call}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.log b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.log
new file mode 100644
index 00000000000..978a646b07e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.log
@@ -0,0 +1,237 @@
+This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=latex 2011.5.2) 27 JUL 2011 02:55
+entering extended mode
+ %&-line parsing enabled.
+**\input customize.tex
+(./customize.tex
+
+! LaTeX Error: Environment sequencediagram undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.1 \begin{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+! Undefined control sequence.
+l.2 \newthread
+ [red]{r}{:Red}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.2 \newthread[
+ red]{r}{:Red}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no R in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no d in font nullfont!
+! Undefined control sequence.
+l.3 \newthread
+ [green]{g}{:Green}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no g in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no g in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no G in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no n in font nullfont!
+! Undefined control sequence.
+l.4 \newthread
+ [blue]{b}{:Blue}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no B in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no e in font nullfont!
+! Undefined control sequence.
+l.5 \tikzstyle
+ {inststyle}+=[bottom color=yellow]
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no i in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no y in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no + in font nullfont!
+Missing character: There is no = in font nullfont!
+Missing character: There is no [ in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no m in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no = in font nullfont!
+Missing character: There is no y in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no w in font nullfont!
+Missing character: There is no ] in font nullfont!
+! Undefined control sequence.
+l.6 \newinst
+ {y}{:Yellow}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no y in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no Y in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no w in font nullfont!
+! Undefined control sequence.
+l.7 \tikzstyle
+ {inststyle}+=[rounded corners=3mm]
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no i in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no y in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no + in font nullfont!
+Missing character: There is no = in font nullfont!
+Missing character: There is no [ in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no = in font nullfont!
+Missing character: There is no 3 in font nullfont!
+Missing character: There is no m in font nullfont!
+Missing character: There is no m in font nullfont!
+Missing character: There is no ] in font nullfont!
+! Undefined control sequence.
+l.8 \newinst
+ {o}{:Rounded}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no o in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no R in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no d in font nullfont!
+
+! LaTeX Error: \begin{document} ended by \end{sequencediagram}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 \end{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+)
+! Emergency stop.
+<*> \input customize.tex
+
+*** (job aborted, no legal \end found)
+
+
+Here is how much of TeX's memory you used:
+ 7 strings out of 495062
+ 174 string characters out of 1182645
+ 45108 words of memory out of 3000000
+ 3284 multiletter control sequences out of 15000+50000
+ 3640 words of font info for 14 fonts, out of 3000000 for 9000
+ 28 hyphenation exceptions out of 8191
+ 6i,0n,6p,69b,19s stack positions out of 5000i,500n,10000p,200000b,50000s
+No pages of output.
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.tex
new file mode 100644
index 00000000000..db4cc01c19b
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/customize.tex
@@ -0,0 +1,9 @@
+\begin{sequencediagram}
+ \newthread[red]{r}{:Red}
+ \newthread[green]{g}{:Green}
+ \newthread[blue]{b}{:Blue}
+ \tikzstyle{inststyle}+=[top color=yellow, bottom color=gray]
+ \newinst{y}{:Yellow}
+ \tikzstyle{inststyle}+=[bottom color=white, top color=white, rounded corners=3mm]
+ \newinst{o}{:Rounded}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/distance.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/distance.tex
new file mode 100644
index 00000000000..f8008770b77
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/distance.tex
@@ -0,0 +1,6 @@
+\begin{sequencediagram}
+ \newthread{a}{:A}
+ \newinst{b}{:B}
+ \newinst[1]{c}{:C}
+ \newinst[2]{d}{:D}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/empty.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/empty.tex
new file mode 100644
index 00000000000..2b610eade7e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/empty.tex
@@ -0,0 +1,2 @@
+\begin{sequencediagram}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/instance.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/instance.tex
new file mode 100644
index 00000000000..8c5b8339bbe
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/instance.tex
@@ -0,0 +1,3 @@
+\begin{sequencediagram}
+ \newinst{name}{:Instance}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/message.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/message.tex
new file mode 100644
index 00000000000..d5db59320e4
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/message.tex
@@ -0,0 +1,6 @@
+\begin{sequencediagram}
+ \newthread{a}{:Thread A}
+ \newthread[gray]{b}{:Thread B}
+
+ \mess{a}{message}{b}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/messcall.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/messcall.tex
new file mode 100644
index 00000000000..5b73efa5a3a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/messcall.tex
@@ -0,0 +1,7 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+ \newinst[1]{i}{:Instance}
+
+ \begin{messcall}{t}{function()}{i}
+ \end{messcall}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/multi-threads-example.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/multi-threads-example.tex
new file mode 100644
index 00000000000..5493006112a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/multi-threads-example.tex
@@ -0,0 +1,37 @@
+\begin{sequencediagram}
+ \tikzstyle{inststyle}+=[bottom color=yellow] % custom the style
+ \newthread[blue]{ss}{:SimulationServer}
+ \newinst{ps}{:PhysicsServer}
+ \newinst[2]{sense}{:SenseServer}
+ \newthread[red]{ctr}{:SimControlNode}
+
+ \begin{sdblock}[green!20]{Run Loop}{The main loop}
+ \mess{ctr}{StartCycle}{ss}
+ \begin{call}{ss}{Update()}{ps}{}
+ \prelevel
+ \begin{call}{ctr}{SenseAgent()}{ctr}{}
+ \begin{call}[3]{ctr}{Read}{sense}{}
+ \end{call}
+ \end{call}
+ \prelevel\prelevel\prelevel\prelevel
+ \setthreadbias{west}
+ \begin{call}{ps}{PrePhysicsUpdate()}{sense}{}
+ \end{call}
+ \setthreadbias{center}
+ \begin{call}{ps}{Update()}{ps}{}
+ \begin{call}{ps}{\small CollisionDetection()}{ps}{}
+ \end{call}
+ \begin{call}{ps}{Dynamics()}{ps}{}
+ \end{call}
+ \end{call}
+ \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
+ \end{call}
+ \end{call}
+ \mess{ss}{EndCycle}{ctr}
+ \begin{call}{ctr}{ActAgent()}{ctr}{}
+ \begin{call}{ctr}{Write}{sense}{}
+ \end{call}
+ \end{call}
+ \end{sdblock}
+
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/nested-call.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/nested-call.tex
new file mode 100644
index 00000000000..4ca253ed338
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/nested-call.tex
@@ -0,0 +1,10 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+ \newinst{a}{:A}
+ \newinst{b}{:B}
+
+ \begin{call}{t}{funcA()}{a}{return}
+ \begin{call}{a}{funcA()}{b}{return}
+ \end{call}
+ \end{call}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/no-thread-example.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/no-thread-example.tex
new file mode 100644
index 00000000000..cd5bf028033
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/no-thread-example.tex
@@ -0,0 +1,33 @@
+\begin{sequencediagram}
+ \tikzstyle{inststyle}+=[{font=\large}]
+ \def\unitfactor{.9}
+
+ \newinst{instance 1}
+ {instance 1}
+
+ \newinst{instance 2}
+ {instance 2}
+
+ \newinst[4cm]{instance 3}
+ {instance 3}
+
+ \tikzstyle{instcolordienst}=[fill=black!25]
+ \tikzstyle{instcolorbuerger}=[fill=black!25]
+
+ \messcall{instance 3}{data 1}{instance 2}
+
+ \begin{call}
+ {instance 3}{data 2}
+ {instance 2}{data 2*}
+
+ \begin{callself}
+ {instance 2}{Nutzerinteraktion}{data 3, data 2}
+ \end{callself}
+
+ \begin{call}
+ {instance 2}{data 4, data 2}
+ {instance 1}{}
+ \end{call}
+ \end{call}
+
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/non-instantaneous-message.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/non-instantaneous-message.tex
new file mode 100644
index 00000000000..1efcde133b5
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/non-instantaneous-message.tex
@@ -0,0 +1,7 @@
+\begin{sequencediagram}
+ \newthread{a}{:Thread A}
+ \newthread[gray]{b}{:Thread B}
+
+ \mess[1]{a}{ping}{b}
+ \mess[1]{b}{pong}{a}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.log b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.log
new file mode 100644
index 00000000000..8fb6b0813df
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.log
@@ -0,0 +1,216 @@
+This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=latex 2011.5.2) 15 SEP 2011 06:48
+entering extended mode
+ %&-line parsing enabled.
+**\input postlevel.tex
+(./postlevel.tex
+
+! LaTeX Error: Environment sequencediagram undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.1 \begin{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+! Undefined control sequence.
+l.2 \newthread
+ {t}{:Thread}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.2 \newthread{t
+ }{:Thread}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no t in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no T in font nullfont!
+Missing character: There is no h in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no d in font nullfont!
+! Undefined control sequence.
+l.3 \newinst
+ [1]{i}{:Instance}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no 1 in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no I in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no e in font nullfont!
+
+Overfull \hbox (20.0pt too wide) in paragraph at lines 2--4
+[]
+ []
+
+
+! LaTeX Error: Environment sdblock undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 \begin{sdblock}
+ {Block}{description}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.5 \begin{sdblock}{B
+ lock}{description}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no B in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no k in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no p in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no n in font nullfont!
+
+! LaTeX Error: Environment call undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.6 \begin{call}
+ {t}{function()}{i}{I have a lot of\newline things to do}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+Missing character: There is no t in font nullfont!
+Missing character: There is no f in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no c in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no ( in font nullfont!
+Missing character: There is no ) in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no I in font nullfont!
+Missing character: There is no h in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no v in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no f in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no h in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no g in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no o in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no o in font nullfont!
+
+! LaTeX Error: \begin{document} ended by \end{call}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 \end{call}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! LaTeX Error: \begin{document} ended by \end{sdblock}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 \end{sdblock}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! LaTeX Error: \begin{document} ended by \end{sequencediagram}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.9 \end{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+)
+! Emergency stop.
+<*> \input postlevel.tex
+
+*** (job aborted, no legal \end found)
+
+
+Here is how much of TeX's memory you used:
+ 11 strings out of 495062
+ 202 string characters out of 1182645
+ 45108 words of memory out of 3000000
+ 3288 multiletter control sequences out of 15000+50000
+ 3640 words of font info for 14 fonts, out of 3000000 for 9000
+ 28 hyphenation exceptions out of 8191
+ 6i,0n,6p,100b,32s stack positions out of 5000i,500n,10000p,200000b,50000s
+No pages of output.
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.tex
new file mode 100644
index 00000000000..184d927906a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/postlevel.tex
@@ -0,0 +1,8 @@
+\begin{sequencediagram}
+ \newthread{t}{:Thread}
+ \newinst[1]{i}{:Instance}
+ \begin{call}{t}{function()}{i}{\shortstack{return A\\ return B\\
+ return C}}
+ \postlevel
+ \end{call}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/prelevel.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/prelevel.tex
new file mode 100644
index 00000000000..84448e47cab
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/prelevel.tex
@@ -0,0 +1,12 @@
+\begin{sequencediagram}
+ \newthread{t1}{:Thread1}
+ \newthread[gray]{t2}{:Thread2}
+
+ \begin{callself}{t1}{loop}{}
+ \end{callself}
+
+ \prelevel\prelevel
+
+ \begin{callself}{t2}{loop}{}
+ \end{callself}
+\end{sequencediagram}
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/single-thread-example.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/single-thread-example.tex
new file mode 100644
index 00000000000..5f3628e479d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/single-thread-example.tex
@@ -0,0 +1,29 @@
+\begin{sequencediagram}
+ \newthread{ss}{:SimulationServer}
+ \newinst{ctr}{:SimControlNode}
+ \newinst{ps}{:PhysicsServer}
+ \newinst[1]{sense}{:SenseServer}
+
+ \begin{call}{ss}{Initialize()}{sense}{}
+ \end{call}
+ \begin{sdblock}{Run Loop}{The main loop}
+ \begin{call}{ss}{StartCycle()}{ctr}{}
+ \begin{call}{ctr}{ActAgent()}{sense}{}
+ \end{call}
+ \end{call}
+ \begin{call}{ss}{Update()}{ps}{}
+ \begin{messcall}{ps}{PrePhysicsUpdate()}{sense}{state}
+ \end{messcall}
+ \begin{sdblock}{Physics Loop}{}
+ \begin{call}{ps}{PhysicsUpdate()}{ps}{}
+ \end{call}
+ \end{sdblock}
+ \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
+ \end{call}
+ \end{call}
+ \begin{call}{ss}{EndCycle()}{ctr}{}
+ \begin{call}{ctr}{SenseAgent()}{sense}{}
+ \end{call}
+ \end{call}
+ \end{sdblock}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/sync-clock.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/sync-clock.tex
new file mode 100644
index 00000000000..9c4a70f28ce
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/sync-clock.tex
@@ -0,0 +1,16 @@
+\begin{sequencediagram}
+ \newthread{a}{:Machine A}
+ \newthread[gray]{b}{:Machine B}
+
+ \mess[1]{a}{}{b}
+ \node[anchor=east] (t0) at (mess from) {$t_0$};
+ \node[anchor=west] (t1) at (mess to) {$t_1$};
+ \prelevel
+ \mess[1]{b}{}{a}
+ \node[anchor=east] (t2) at (mess to) {$t_2$};
+
+ \path (t0.east) |- coordinate(t12) (t1);
+ \draw[dashed] (t1) -- (t12);
+ \node[anchor=south west] at (t12) {$\Delta{}t_1$};
+ \node[anchor=north west] at (t12) {$\Delta{}t_2$};
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/thread.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/thread.tex
new file mode 100644
index 00000000000..9f1007a9482
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/thread.tex
@@ -0,0 +1,3 @@
+\begin{sequencediagram}
+ \newthread{name}{:Thread}
+\end{sequencediagram} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.log b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.log
new file mode 100644
index 00000000000..1532fefa607
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.log
@@ -0,0 +1,266 @@
+This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=latex 2011.5.2) 15 SEP 2011 07:22
+entering extended mode
+ %&-line parsing enabled.
+**\input threadbias.tex
+(./threadbias.tex
+
+! LaTeX Error: Environment sequencediagram undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.1 \begin{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+! Undefined control sequence.
+l.2 \newthread
+ [blue]{s1}{:Server1}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.2 \newthread[
+ blue]{s1}{:Server1}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no l in font nullfont!
+Missing character: There is no u in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no 1 in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no S in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no v in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no 1 in font nullfont!
+! Undefined control sequence.
+l.3 \newinst
+ {db}{:Database}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no d in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no D in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no e in font nullfont!
+! Undefined control sequence.
+l.4 \newthread
+ [red]{s2}{:Server2}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+Missing character: There is no [ in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no ] in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no 2 in font nullfont!
+Missing character: There is no : in font nullfont!
+Missing character: There is no S in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no v in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no 2 in font nullfont!
+
+Overfull \hbox (20.0pt too wide) in paragraph at lines 2--5
+[]
+ []
+
+! Undefined control sequence.
+l.6 \setthreadbias
+ {west}
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.6 \setthreadbias{w
+ est}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no w in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no s in font nullfont!
+Missing character: There is no t in font nullfont!
+
+! LaTeX Error: Environment call undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.7 \begin{call}
+ {s1}{reading}{db}{data}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+Missing character: There is no s in font nullfont!
+Missing character: There is no 1 in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no g in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no a in font nullfont!
+
+! LaTeX Error: \begin{document} ended by \end{call}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.8 \end{call}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+Overfull \hbox (20.0pt too wide) in paragraph at lines 6--9
+[]
+ []
+
+! Undefined control sequence.
+l.10 \prelevel
+
+The control sequence at the end of the top line
+of your error message was never \def'ed. If you have
+misspelled it (e.g., `\hobx'), type `I' and the correct
+spelling (e.g., `I\hbox'). Otherwise just continue,
+and I'll forget about whatever was undefined.
+
+
+! LaTeX Error: Environment call undefined.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 \begin{call}
+ {s2}{reading}{db}{data}
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! LaTeX Error: Missing \begin{document}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.12 \begin{call}{s
+ 2}{reading}{db}{data}
+You're in trouble here. Try typing <return> to proceed.
+If that doesn't work, type X <return> to quit.
+
+Missing character: There is no s in font nullfont!
+Missing character: There is no 2 in font nullfont!
+Missing character: There is no r in font nullfont!
+Missing character: There is no e in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no i in font nullfont!
+Missing character: There is no n in font nullfont!
+Missing character: There is no g in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no b in font nullfont!
+Missing character: There is no d in font nullfont!
+Missing character: There is no a in font nullfont!
+Missing character: There is no t in font nullfont!
+Missing character: There is no a in font nullfont!
+
+! LaTeX Error: \begin{document} ended by \end{call}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.13 \end{call}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+
+! LaTeX Error: \begin{document} ended by \end{sequencediagram}.
+
+See the LaTeX manual or LaTeX Companion for explanation.
+Type H <return> for immediate help.
+ ...
+
+l.14 \end{sequencediagram}
+
+Your command was ignored.
+Type I <command> <return> to replace it with another command,
+or <return> to continue without it.
+
+)
+! Emergency stop.
+<*> \input threadbias.tex
+
+*** (job aborted, no legal \end found)
+
+
+Here is how much of TeX's memory you used:
+ 9 strings out of 495062
+ 189 string characters out of 1182645
+ 45108 words of memory out of 3000000
+ 3286 multiletter control sequences out of 15000+50000
+ 3640 words of font info for 14 fonts, out of 3000000 for 9000
+ 28 hyphenation exceptions out of 8191
+ 6i,0n,6p,66b,24s stack positions out of 5000i,500n,10000p,200000b,50000s
+No pages of output.
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.tex
new file mode 100644
index 00000000000..f4f8ac7f7f5
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/demo/threadbias.tex
@@ -0,0 +1,17 @@
+\begin{sequencediagram}
+ \newthread[blue]{s1}{:Server1}
+ \newinst{db}{:Database}
+ \newthread[red]{s2}{:Server2}
+
+ \begin{call}{s1}{reading}{db}{data}
+ \postlevel
+ \end{call}
+
+ \prelevel\prelevel
+
+ \setthreadbias{east}
+
+ \begin{call}{s2}{reading}{db}{data}
+ \postlevel
+ \end{call}
+\end{sequencediagram}
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/diagrams.pdf b/Master/texmf-dist/doc/latex/pgf-umlsd/diagrams.pdf
new file mode 100644
index 00000000000..5e5269184d7
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/diagrams.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/logo.png b/Master/texmf-dist/doc/latex/pgf-umlsd/logo.png
new file mode 100644
index 00000000000..6f77296cd2a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/logo.png
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.pdf b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.pdf
deleted file mode 100644
index f69b759b23a..00000000000
--- a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.tex
deleted file mode 100644
index 6c807d65e40..00000000000
--- a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo.tex
+++ /dev/null
@@ -1,101 +0,0 @@
-% Demonstration of pgf-umlsd.sty, a convenient set of macros for drawing
-% UML sequence diagrams. Written by Xu Yuan <xuyuan.cn@gmail.com> from
-% Southeast University, China.
-% This file is part of pgf-umlsd
-% you may get it at
-% http://code.google.com/p/pgf-umlsd/
-
-\documentclass{article}
-
-\usepackage{tikz}
-\usetikzlibrary{arrows,shadows} % for pgf-umlsd
-\usepackage[underline=true,rounded corners=false]{pgf-umlsd}
-
-\begin{document}
-
-\begin{figure}
- \centering
- \begin{sequencediagram}
- \newthread{ss}{:SimulationServer}
- \newinst{ctr}{:SimControlNode}
- \newinst{ps}{:PhysicsServer}
- \newinst[1]{sense}{:SenseServer}
-
- \begin{call}{ss}{Initialize()}{sense}{}
- \end{call}
- \begin{sdblock}{Run Loop}{The main loop}
- \begin{call}{ss}{StartCycle()}{ctr}{}
- \begin{call}{ctr}{ActAgent()}{sense}{}
- \end{call}
- \end{call}
- \begin{call}{ss}{Update()}{ps}{}
- \begin{messcall}{ps}{PrePhysicsUpdate()}{sense}{state}
- \end{messcall}
- \begin{sdblock}{Physics Loop}{}
- \begin{callself}{ps}{PhysicsUpdate()}{}
- \end{callself}
- \end{sdblock}
- \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
- \end{call}
- \end{call}
- \begin{call}{ss}{EndCycle()}{ctr}{}
- \begin{call}{ctr}{SenseAgent()}{sense}{}
- \end{call}
- \end{call}
- \end{sdblock}
- \end{sequencediagram}
- \caption{UML sequence diagram demo. The used style-file is
- \texttt{pgf-umlsd.sty}, you may get it at
- http://code.google.com/p/pgf-umlsd/}
-\end{figure}
-
-\begin{figure}
- \centering
- \begin{sequencediagram}
- \tikzstyle{inststyle}+=[bottom color=yellow] % custom the style
- \newthread[blue]{ss}{:SimulationServer}
- \newinst{ps}{:PhysicsServer}
- \newinst[2]{sense}{:SenseServer}
- \newthread[red]{ctr}{:SimControlNode}
-
- \begin{sdblock}[green!20]{Run Loop}{The main loop}
- \mess{ctr}{StartCycle}{ss}
- \begin{call}{ss}{Update()}{ps}{}
- \prelevel
- \begin{callself}{ctr}{SenseAgent()}{}
- \begin{call}[3]{ctr}{Read}{sense}{}
- \end{call}
- \end{callself}
- \prelevel\prelevel\prelevel\prelevel
- \setthreadbias{west}
- \begin{call}{ps}{PrePhysicsUpdate()}{sense}{}
- \end{call}
- \setthreadbias{center}
- \begin{callself}{ps}{Update()}{}
- \begin{callself}{ps}{\small CollisionDetection()}{}
- \end{callself}
- \begin{callself}{ps}{Dynamics()}{}
- \end{callself}
- \end{callself}
- \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
- \end{call}
- \end{call}
- \mess{ss}{EndCycle}{ctr}
- \begin{callself}{ctr}{ActAgent()}{}
- \begin{call}{ctr}{Write}{sense}{}
- \end{call}
- \end{callself}
- \end{sdblock}
-
- \end{sequencediagram}
- \caption{Example of a sequence with parallel activities and the
- customed style. The used style-file is \texttt{pgf-umlsd.sty}, you
- may get it at http://code.google.com/p/pgf-umlsd/}
-\end{figure}
-
-\end{document}
-
-%%% Local Variables:
-%%% mode: Tex-PDF
-%%% TeX-master: t
-%%% End:
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.pdf b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.pdf
deleted file mode 100644
index 7401831ec08..00000000000
--- a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.tex
deleted file mode 100644
index 7a419f232e7..00000000000
--- a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-demo2.tex
+++ /dev/null
@@ -1,105 +0,0 @@
-% Demonstration of pgf-umlsd.sty, a convenient set of macros for drawing
-% UML sequence diagrams. Written by Xu Yuan <xuyuan.cn@gmail.com> from
-% Southeast University, China.
-
-% The used style-file is part of pgf-umlsd
-% you may get it at
-% http://code.google.com/p/pgf-umlsd/
-
-
-\documentclass{article}
-
-\usepackage{tikz}
-\usetikzlibrary{arrows,shadows} % for pgf-umlsd
-
-\usepackage{soul} % hereby we are able to \hl == highlight some strings, or to \ul underline specials
-
-%\usepackage[underline=true,rounded corners=false]{pgf-umlsd} % changed to following parameter-values:
-\usepackage[underline=false,rounded corners=true]{pgf-umlsd}
-
-\begin{document}
-
-\begin{figure}
- \centering
- \begin{sequencediagram}
- \tikzstyle{inststyle}+=[rounded corners=3.2mm, bottom color=cyan] %% hier werden weitere Optionen angegeben
- \newthread{ss}{simulationServer}
- \newinst{ctr}{simControlNode}
- \newinst{ps}{physicsServer}
- \newinst[1]{sense}{senseServer}
-
- \begin{call}{ss}{Initialize()}{sense}{}
- \end{call}
- \begin{sdblock}{Run Loop}{}
- \begin{call}{ss}{StartCycle()}{ctr}{}
- \begin{call}{ctr}{ActAgent()}{sense}{}
- \end{call}
- \end{call}
- \begin{call}{ss}{Update()}{ps}{}
- \begin{call}{ps}{PrePhysicsUpdate()}{sense}{state}
- \end{call}
- \begin{callself}{ps}{PhysicsUpdate()}{}
- \end{callself}
- \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
- \end{call}
- \end{call}
- \begin{call}{ss}{EndCycle()}{ctr}{}
- \begin{call}{ctr}{SenseAgent()}{sense}{}
- \end{call}
- \end{call}
- \end{sdblock}
- \end{sequencediagram}
-
- \caption{UML sequence diagram demo. The used style-file is part of pgf-umlsd-0.2.tar.gz
-Get it at http://code.google.com/p/pgf-umlsd/}
-\end{figure}
-
-\begin{figure}
- \centering
- \begin{sequencediagram}
- \tikzstyle{inststyle}+=[rounded corners=0mm, bottom color=yellow] %% with rounded corners=0mm we get the standard behavior again
- \newthread{ss}{\ul{:SimulationServer}} %% to show, that one is able, to underline special elements
- \newinst{ps}{:PhysicsServer}
- \newinst[2]{sense}{\ul{:SenseServer}} %% to show, that one is able, to underline special elements
- \newthread[red]{ctr}{:SimControlNode}
-
- \begin{sdblock}[green!20]{Run Loop}{\small This is the main loop.}
- \mess{ctr}{StartCycle}{ss}
- \begin{call}{ss}{Update()}{ps}{}
- \prelevel
- \begin{callself}{ctr}{SenseAgent()}{}
- \begin{call}[3]{ctr}{Read}{sense}{}
- \end{call}
- \end{callself}
- \prelevel\prelevel\prelevel\prelevel
- \setthreadbias{west}
- \begin{call}{ps}{PrePhysicsUpdate()}{sense}{}
- \end{call}
- \setthreadbias{center}
- \begin{callself}{ps}{Update()}{}
- \begin{callself}{ps}{\small CollisionDetection()}{}
- \end{callself}
- \begin{callself}{ps}{Dynamics()}{}
- \end{callself}
- \end{callself}
- \begin{call}{ps}{PostPhysicsUpdate()}{sense}{}
- \end{call}
- \end{call}
- \mess{ss}{EndCycle}{ctr}
- \begin{callself}{ctr}{ActAgent()}{}
- \begin{call}{ctr}{Write}{sense}{}
- \end{call}
- \end{callself}
- \end{sdblock}
-
- \end{sequencediagram}
- \caption{Example of a sequence with parallel activities.The used style-file is part of pgf-umlsd-0.2.tar.gz --
-get it at http://code.google.com/p/pgf-umlsd/}
-\end{figure}
-
-\end{document}
-
-%%% Local Variables:
-%%% mode: Tex-PDF
-%%% TeX-master: t
-%%% End:
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.pdf b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.pdf
new file mode 100644
index 00000000000..002c7d4eaba
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.tex b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.tex
new file mode 100644
index 00000000000..8d3bcf39cba
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/pgf-umlsd/pgf-umlsd-manual.tex
@@ -0,0 +1,192 @@
+% Manual of pgf-umlsd.sty, a convenient set of macros for drawing UML
+% sequence diagrams.
+% Written by Xu Yuan <xuyuan.cn@gmail.com> from
+% Southeast University, China.
+% This file is part of pgf-umlsd
+% you may get it at http://code.google.com/p/pgf-umlsd/
+
+\documentclass{article}
+\usepackage[margin=12mm]{geometry}
+\usepackage{hyperref}
+
+\usepackage[underline=true,rounded corners=false]{pgf-umlsd}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\usepackage{listings}
+\usepackage{color}
+\definecolor{listinggray}{gray}{0.92}
+\lstset{ %
+language=[LaTeX]TeX,
+breaklines=true,
+frame=single,
+% frameround=tttt,
+basicstyle=\footnotesize\ttfamily,
+backgroundcolor=\color{listinggray},
+keywordstyle=\color{blue}
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\hypersetup{
+ colorlinks=true,
+ linkcolor=blue,
+ anchorcolor=black,
+ citecolor=olive,
+ filecolor=magenta,
+ menucolor=red,
+ urlcolor=blue
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\demo}[2][1]{
+ \begin{center}
+ \begin{tabular}{cc}
+ \begin{minipage}{.49\linewidth}
+ \centering
+ \resizebox{#1\linewidth}{!}{
+ \input{demo/#2}
+ }
+ \end{minipage}
+ &
+ \begin{minipage}{.45\linewidth}
+ \lstinputlisting{demo/#2}
+ \end{minipage}
+ \end{tabular}
+ \end{center}
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\example}[2][1]{
+ \begin{center}
+ \resizebox{#1\linewidth}{!}{
+ \input{demo/#2}
+ }
+ \end{center}
+ \lstinputlisting{demo/#2}
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{document}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\title{Drawing UML Sequence Diagram by using \texttt{pgf-umlsd}}
+\author{\href{mailto:xuyuan.cn@gmail.com}{Yuan Xu}}
+\date{\today{}~(v0.7)}
+\maketitle
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{abstract}
+ \texttt{pgf-umlsd} is a LaTeX package for drawing UML Sequence
+ Diagrams. As stated by its name, it is based on a very popular
+ graphic package \texttt{PGF/TikZ}. This document presents the usage
+ of \texttt{pgf-umlsd} and collects some UML sequence diagrams as
+ examples. \texttt{pgf-umlsd} can be downloaded from
+ \href{http://code.google.com/p/pgf-umlsd/}{http://code.google.com/p/pgf-umlsd/}.
+\end{abstract}
+
+\tableofcontents
+
+\section{The Essentials}
+\subsection{Basic graphics objects}
+\subsubsection{empty diagram}
+\demo{empty}
+
+\subsubsection{thread}
+\demo[0.3]{thread}
+
+\subsubsection{instance}
+\demo[0.3]{instance}
+
+\subsubsection{distance between threads and instances}
+\demo{distance}
+
+\subsubsection{customization}
+The package has two options for customization: \texttt{underline} and
+\texttt{rounded corners}, further customization see the example below:
+
+\demo{customize}
+
+
+\subsection{Call}
+\subsubsection{call}
+\demo[0.6]{call}
+
+\subsubsection{call self}
+\demo[0.6]{callself}
+
+\subsubsection{message call}
+\demo[0.6]{messcall}
+
+\subsubsection{nested call}
+\demo[0.6]{nested-call}
+
+\subsection{Message}
+\demo[0.6]{message}
+
+Sometimes however, it takes a considerable amount of time to reach the
+receiver (relatively speaking of course) . For example, a message
+across a network. Such a non-instantaneous message is drawn as a
+slanted arrow.
+
+\demo[0.6]{non-instantaneous-message}
+
+\subsection{Block}
+\demo[0.6]{block}
+
+\section{Manually adjustment}
+The idea of \texttt{pgf-umlsd} is users only have to write the logic
+of diagram, the program generates figure automatically. However, the
+package can not handle all the use case, it still needs to be adjusted
+manually.
+
+\subsection{Level}
+If the text on the arrows is more than one line (large function name
+for example) it will overlap other things. \texttt{postlevel} can be
+used to make the time (level) later.
+
+\demo[0.6]{postlevel}
+
+In the situation of multi-threads, some events happen at the same
+time. \texttt{prelevel} can make the call earlier.
+
+\demo[0.6]{prelevel}
+
+\subsection{Bias of thread line}
+In the situation of multi-threads, the instance cen be accessed at the
+same time (e.g. two threads reading data at the same time). Currently,
+we have to adjust the bias of thread line manually for this. Possible
+parameters for \texttt{setthreadbias} are: \texttt{center},
+\texttt{west} and \texttt{east}.
+
+\demo[0.8]{threadbias}
+
+\section{Examples}
+\subsection{Single thread}
+\example[0.8]{single-thread-example}
+
+\subsection{Multi-threads}
+\example[0.8]{multi-threads-example}
+
+\subsection{Annotation}
+\example[0.5]{sync-clock}
+
+\subsection{Known Issue}
+\texttt{pgf-umlsd} confilts with tikz \texttt{backgrounds} library.
+
+\section{Acknowledgements}
+Many people contributed to \texttt{pgf-umlsd} by reporting problems,
+suggesting various improvements or submitting code. Here is a list of
+these people:
+\href{mailto:nobel1984@gmail.com}{Nobel Huang},
+\href{mailto:humbert@uni-wuppertal.de}{Dr. Ludger Humbert},
+\href{mailto:MathStuf@gmail.com}{MathStuf},
+\href{mailto:vlado.handziski@gmail.com}{Vlado Handziski},
+\href{mailto:frankmorgner@gmail.com}{Frank Morgner},
+and \href{mailto:petrautzki@hs-coburg.de}{Dirk Petrautzki}.
+
+\end{document}
+%%% Local Variables:
+%%% mode: Tex-PDF
+%%% TeX-master: t
+%%% End:
diff --git a/Master/texmf-dist/tex/latex/pgf-umlsd/pgf-umlsd.sty b/Master/texmf-dist/tex/latex/pgf-umlsd/pgf-umlsd.sty
index 01c97ca83fb..99847db73b5 100644
--- a/Master/texmf-dist/tex/latex/pgf-umlsd/pgf-umlsd.sty
+++ b/Master/texmf-dist/tex/latex/pgf-umlsd/pgf-umlsd.sty
@@ -7,6 +7,15 @@
% Contributor: Nobel Huang <nobel1984@gmail.com>, Southeast University, China
%
% History:
+% v0.7 2012/03/05
+% - unify interface of call and callself
+% - non-instantaneous message
+% - bugfix: conflits with tikz library backgrounds
+% v0.6 2011/07/27
+% - Fix Issue 6 reported by frankmorgner@gmail.com
+% - diagram without a thread
+% - allows empty diagram
+% - New manual
% v0.5 2009/09/30 Fix Issue 2 reported by vlado.handziski
% - Nested callself is supported
% - Rename sdloop and sdframe to sdblock
@@ -27,9 +36,14 @@
%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{pgf-umlsd}[2009/09/30 v0.5 Some LaTeX macros for UML
+\ProvidesPackage{pgf-umlsd}[2011/07/27 v0.6 Some LaTeX macros for UML
Sequence Diagrams.]
+\RequirePackage{tikz}
+\usetikzlibrary{arrows,shadows}
+
+\RequirePackage{ifthen}
+
% Options
% ? the instance name under line ?
\newif\ifpgfumlsdunderline\pgfumlsdunderlinetrue
@@ -43,11 +57,6 @@ Sequence Diagrams.]
\DeclareOption{roundedcorners=false}{\pgfumlsdroundedcornersfalse}
\ProcessOptions
-% declare layers
-\pgfdeclarelayer{background}
-\pgfdeclarelayer{threadground}
-\pgfsetlayers{background,threadground,main}
-
% new counters
\newcounter{preinst}
\newcounter{instnum}
@@ -86,7 +95,7 @@ Sequence Diagrams.]
% draw running (thick) line, should not call directly
\newcommand*{\drawthread}[2]{
- \begin{pgfonlayer}{threadground}
+ \begin{pgfonlayer}{umlsd@threadlayer}
\draw[threadstyle] (#1.west) -- (#1.east) -- (#2.east) -- (#2.west) -- cycle;
\end{pgfonlayer}
}
@@ -96,6 +105,27 @@ Sequence Diagrams.]
% \begin{call}[height]{caller}{function}{callee}{return}
% \end{call}
\newenvironment{call}[5][1]{
+\ifthenelse{\equal{#2}{#4}}
+{
+ \begin{callself}[#1]{#2}{#3}{#5}
+}
+{
+ \begin{callanother}[#1]{#2}{#3}{#4}{#5}
+}
+}
+{
+\ifthenelse{\equal{\f\thecallevel}{\t\thecallevel}}
+{
+ \end{callself}
+}
+{
+ \end{callanother}
+}
+}
+
+% function call to another instance
+% interal use only
+\newenvironment*{callanother}[5][1]{
\stepcounter{seqlevel}
\stepcounter{callevel} % push
\path
@@ -122,10 +152,11 @@ Sequence Diagrams.]
}
% a function do not need call others
+% interal use only
% Example:
% \begin{callself}[height]{caller}{function}{return}
% \end{callself}
-\newenvironment{callself}[4][1]{
+\newenvironment*{callself}[4][1]{
\stepcounter{seqlevel}
\stepcounter{callevel} % push
\stepcounter{callselflevel}
@@ -139,6 +170,7 @@ Sequence Diagrams.]
-- (scb\thecallevel);
\def\l\thecallevel{#1}
\def\f\thecallevel{#2}
+ \def\t\thecallevel{#2}
\def\returnvalue{#4}
\tikzstyle{threadstyle}+=[instcolor#2]
}{
@@ -155,13 +187,19 @@ Sequence Diagrams.]
% message between threads
% Example:
-% \mess{sender}{message content}{receiver}
-\newcommand{\mess}[3]{
+% \mess[delay]{sender}{message content}{receiver}
+\newcommand{\mess}[4][0]{
\stepcounter{seqlevel}
\path
- (#1)+(0,-\theseqlevel*\unitfactor-0.7*\unitfactor) node (messbeg) {}
- (#3)+(0,-\theseqlevel*\unitfactor-0.7*\unitfactor) node (messend) {};
- \draw[->,>=angle 60] (messbeg) -- (messend) node[midway, above] {#2};
+ (#2)+(0,-\theseqlevel*\unitfactor-0.7*\unitfactor) node (mess from) {};
+ \addtocounter{seqlevel}{#1}
+ \path
+ (#4)+(0,-\theseqlevel*\unitfactor-0.7*\unitfactor) node (mess to) {};
+ \draw[->,>=angle 60] (mess from) -- (mess to) node[midway, above]
+ {#3};
+
+ \node (#3 from) at (mess from) {};
+ \node (#3 to) at (mess to) {};
}
\newenvironment{messcall}[4][1]{
@@ -192,11 +230,12 @@ Sequence Diagrams.]
% manually. Possible parameters are: center, west, east
\newcommand{\setthreadbias}[1]{\global\def\threadbias{#1}}
-% In the situation of multi-threads, some events happen at the same
-% time. Currently, we have to adjust the level(time) of events
-% manually. This function makes the call earlier.
+% This function makes the call earlier.
\newcommand{\prelevel}{\addtocounter{seqlevel}{-1}}
+% This function makes the call later.
+\newcommand{\postlevel}{\addtocounter{seqlevel}{+1}}
+
% a block box with caption
% \begin{sdblock}[caption background color]{caption}{comments}
% \end{sdblock}
@@ -215,9 +254,8 @@ Sequence Diagrams.]
(current bounding box.west |- {blockbeg\theblocklevel}) + (-0.2,0)
node (nw) {};
\path (boxeast |- blockend) node (se) {};
- \draw (nw) rectangle (se);
- % title
+ % % title
\node[blockstyle] (blocktitle) at (nw) {\blockname\theblocklevel};
\path (blocktitle.south east) + (0,0.2) node (set) {}
(blocktitle.south east) + (-0.2,0) node (seb) {}
@@ -227,11 +265,10 @@ Sequence Diagrams.]
\node[blockstyle] (blocktitle) at (nw) {\blockname\theblocklevel};
\node[blockcommentstyle] (blockcomment) at (comm) {\blockcomm\theblocklevel};
+ \coordinate (se) at (current bounding box.south east);
\end{pgfinterruptboundingbox}
- % add two points to keep the bounding box
- \node[dot] (fnw) at (nw) {};
- \node[dot] (fse) at (se) {};
+ \draw (se) rectangle (nw);
\addtocounter{blocklevel}{-1} % pop
\stepcounter{seqlevel}
@@ -239,6 +276,11 @@ Sequence Diagrams.]
% the environment of sequence diagram
\newenvironment{sequencediagram}{
+ % declare layers
+ \pgfdeclarelayer{umlsd@background}
+ \pgfdeclarelayer{umlsd@threadlayer}
+ \pgfsetlayers{umlsd@background,umlsd@threadlayer,main}
+
\begin{tikzpicture}
\setlength{\unitlength}{1cm}
\tikzstyle{sequence}=[coordinate]
@@ -266,15 +308,19 @@ Sequence Diagrams.]
\node[coordinate] (inst0) {};
}
{
- \begin{pgfonlayer}{background}
+ \begin{pgfonlayer}{umlsd@background}
+ \ifnum\c@instnum > 0
\foreach \t [evaluate=\t] in {1,...,\theinstnum}{
\draw[dotted] (inst\t) -- ++(0,-\theseqlevel*\unitfactor-2.2*\unitfactor);
}
+ \fi
+ \ifnum\c@threadnum > 0
\foreach \t [evaluate=\t] in {1,...,\thethreadnum}{
\path (thread\t)+(0,-\theseqlevel*\unitfactor-0.1*\unitfactor) node (threadend) {};
\tikzstyle{threadstyle}+=[threadcolor\t]
\drawthread{thread\t}{threadend}
}
+ \fi
\end{pgfonlayer}
\end{tikzpicture}}