1MSCGEN(1)                        User Commands                       MSCGEN(1)
2
3
4

NAME

6       mscgen - Message Sequence Chart Renderer
7

SYNOPSIS

9       mscgen -T type [ -o file ] [ -i ] infile
10
11       mscgen -l
12
13

DESCRIPTION

15       Mscgen  is  a small program that parses Message Sequence Chart descrip‐
16       tions and produces PNG, EPS, SVG or server side image maps (ismaps)  as
17       the  output.  Message  Sequence Charts (MSCs) are a way of representing
18       entities and interactions over some time period and are often  used  in
19       combination with SDL.  MSCs are popular in Telecoms to specify how pro‐
20       tocols operate although MSCs need not be complicated to create or  use.
21       Mscgen  aims to provide a simple text language that is clear to create,
22       edit and understand, which can also be transformed into images.
23
24

OPTIONS

26       -T type
27              Specifies the output file type, which maybe one of 'png', 'eps',
28              'svg' or 'ismap'
29
30       -i infile
31              The  file  from which to read input.  If omitted or specified as
32              '-', input will be read from stdin.  The '-i' option maybe omit‐
33              ted if <infile> is specified as the last option.
34
35       -o file
36              Write  output  to the named file.  This option must be specified
37              if input is taken from  stdin,  otherwise  the  output  filename
38              defaults to <infile>.<type>.
39
40       -F font
41              Use  specified font for rendering PNG output.  This is only sup‐
42              ported if mscgen was built with USE_FREETYPE and is ignored oth‐
43              erwise.
44
45       -p     Display  the  parsed msc as text to stdout.  This is useful only
46              for checking the parser.
47
48       -l     Display program licence and exit.
49
50

EXAMPLE

52       The language interpreted by mscgen is similar to that of Graphviz  dot,
53       using  simple  text instructions to add entities and then message arcs.
54       The following example shows the input for  a  simple  message  sequence
55       chart.
56
57
58       # MSC for some fictional process
59
60       msc {
61         a,b,c;
62
63         a->b [ label = "ab()" ] ;
64         b->c [ label = "bc(TRUE)"];
65         c=>c [ label = "process(1)" ];
66         c=>c [ label = "process(2)" ];
67         ...;
68         c=>c [ label = "process(n)" ];
69         c=>c [ label = "process(END)" ];
70         a<<=c [ label = "callback()"];
71         ---  [ label = "If more to run", ID="*" ];
72         a->a [ label = "next()"];
73         a->c [ label = "ac1()\nac2()"];
74         b<-c [ label = "cb(TRUE)"];
75         b->b [ label = "stalled(...)"];
76         a<-b [ label = "ab() = FALSE"];
77
78       }
79
80       More  information  on  the  input  can  be  found  at http://www.mcter
81       nan.co.uk/mscgen/.
82
83
85       Mscgen, Copyright (C) 2010 Michael C McTernan,
86                                  Michael.McTernan.2001@cs.bris.ac.uk
87
88       This program is free software; you can redistribute it and/or modify it
89       under  the  terms of the GNU General Public License as published by the
90       Free Software Foundation; either version 2 of the License, or (at  your
91       option) any later version.
92
93       PNG rendering by libgd, www.libgd.org.
94
95

SEE ALSO

97       http://www.mcternan.co.uk/mscgen/
98
99
100
101mscgen-0.20                       2011-03-05                         MSCGEN(1)
Impressum