| % ------------------------------------------------------------------------------ |
| % Copyright (c) 2010, 2020 Contributors to the Eclipse Foundation |
| % |
| % See the NOTICE file(s) distributed with this work for additional |
| % information regarding copyright ownership. |
| % |
| % This program and the accompanying materials are made available under the terms |
| % of the MIT License which is available at https://opensource.org/licenses/MIT |
| % |
| % SPDX-License-Identifier: MIT |
| % ------------------------------------------------------------------------------ |
| \documentclass{article} |
| \usepackage{tikz} |
| \usepackage{verbatim} |
| |
| \usepackage[paperwidth=40in, paperheight=20in]{geometry} |
| |
| \usetikzlibrary{arrows, automata, positioning} |
| \begin{document} |
| \pagestyle{empty} |
| |
| \definecolor{se-blue}{HTML}{D0D5FF} |
| |
| \newcommand{\state}[2]{\begin{tabular}{@{}c@{}}#1\\#2\end{tabular}} |
| |
| \begin{tikzpicture}[ |
| ->,>=stealth',auto,node distance=2.5cm,thick, |
| every node/.style={font=\sffamily\small}, |
| every state/.style={draw=se-blue,thick,top color=white, |
| bottom color=se-blue!75,initial text=}, |
| accepting/.style={accepting by arrow,accepting text=\ldots}, |
| every edge/.style={draw=black!50}] |
| |
| \node[state, initial] (s0) {p/i}; |
| \node[state] (s1) [right of=s0] {i/i}; |
| \node[state] (s2) [below =1cm of s0] {p/c}; |
| \node[state] (s3) [below =1cm of s1] {i/c}; |
| |
| \path[every node/.style={font=\sffamily\normalsize,outer sep=0pt}] |
| (s0) edge[] node[] {produce} (s1) |
| (s1) edge[] node[sloped,anchor=south] {provide} (s2) |
| (s2) edge[] node[swap] {produce} (s3) |
| (s3) edge[] node[swap] {consume} (s1) |
| (s2) edge[] node[] {consume} (s0) |
| ; |
| |
| \end{tikzpicture} |
| \end{document} |