doc-src/Codegen/document/adapt.tex
changeset 48954 c548d26daa8c
parent 48951 b9238cbcdd41
equal deleted inserted replaced
48953:8cd245b8ccb1 48954:c548d26daa8c
       
     1 
       
     2 \documentclass[12pt]{article}
       
     3 \usepackage{tikz}
       
     4 
       
     5 \begin{document}
       
     6 
       
     7 \thispagestyle{empty}
       
     8 \setlength{\fboxrule}{0.01pt}
       
     9 \setlength{\fboxsep}{4pt}
       
    10 
       
    11 \fcolorbox{white}{white}{
       
    12 
       
    13 \begin{tikzpicture}[scale = 0.5]
       
    14   \tikzstyle water=[color = blue, thick]
       
    15   \tikzstyle ice=[color = black, very thick, cap = round, join = round, fill = white]
       
    16   \tikzstyle process=[color = green, semithick, ->]
       
    17   \tikzstyle adaptation=[color = red, semithick, ->]
       
    18   \tikzstyle target=[color = black]
       
    19   \foreach \x in {0, ..., 24}
       
    20     \draw[style=water] (\x, 0.25) sin + (0.25, 0.25) cos + (0.25, -0.25) sin
       
    21       + (0.25, -0.25) cos + (0.25, 0.25);
       
    22   \draw[style=ice] (1, 0) --
       
    23     (3, 6) node[above, fill=white] {logic} -- (5, 0) -- cycle;
       
    24   \draw[style=ice] (9, 0) --
       
    25     (11, 6) node[above, fill=white] {intermediate language} -- (13, 0) -- cycle;
       
    26   \draw[style=ice] (15, -6) --
       
    27     (19, 6) node[above, fill=white] {target language} -- (23, -6) -- cycle;
       
    28   \draw[style=process]
       
    29     (3.5, 3) .. controls (7, 5) .. node[fill=white] {translation} (10.5, 3);
       
    30   \draw[style=process]
       
    31     (11.5, 3) .. controls (15, 5) .. node[fill=white] (serialisation) {serialisation} (18.5, 3);
       
    32   \node (adaptation) at (11, -2) [style=adaptation] {adaptation};
       
    33   \node at (19, 3) [rotate=90] {generated};
       
    34   \node at (19.5, -5) {language};
       
    35   \node at (19.5, -3) {library};
       
    36   \node (includes) at (19.5, -1) {includes};
       
    37   \node (reserved) at (16.5, -3) [rotate=72] {reserved}; % proper 71.57
       
    38   \draw[style=process]
       
    39     (includes) -- (serialisation);
       
    40   \draw[style=process]
       
    41     (reserved) -- (serialisation);
       
    42   \draw[style=adaptation]
       
    43     (adaptation) -- (serialisation);
       
    44   \draw[style=adaptation]
       
    45     (adaptation) -- (includes);
       
    46   \draw[style=adaptation]
       
    47     (adaptation) -- (reserved);
       
    48 \end{tikzpicture}
       
    49 
       
    50 }
       
    51 
       
    52 \end{document}