Provided by: mscgen_0.20-12_amd64 bug

NAME

       mscgen - Message Sequence Chart Renderer

SYNOPSIS

       mscgen -T type [ -o file ] [ -i ] infile

       mscgen -l

DESCRIPTION

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

OPTIONS

       -T type
              Specifies the output file type, which maybe one of 'png', 'eps', 'svg' or 'ismap'

       -i infile
              The file from which to read input.  If omitted or specified as '-', input will be read from stdin.
              The '-i' option maybe omitted if <infile> is specified as the last option.

       -o file
              Write  output  to  the  named  file.   This option must be specified if input is taken from stdin,
              otherwise the output filename defaults to <infile>.<type>.

       -F font
              Use specified font for rendering PNG output.  This is only supported  if  mscgen  was  built  with
              USE_FREETYPE and is ignored otherwise.

       -p     Display the parsed msc as text to stdout.  This is useful only for checking the parser.

       -l     Display program licence and exit.

EXAMPLE

       The  language interpreted by mscgen is similar to that of Graphviz dot, using simple text instructions to
       add entities and then message arcs.  The following example shows the input for a simple message  sequence
       chart.

       # MSC for some fictional process

       msc {
         a,b,c;

         a->b [ label = "ab()" ] ;
         b->c [ label = "bc(TRUE)"];
         c=>c [ label = "process(1)" ];
         c=>c [ label = "process(2)" ];
         ...;
         c=>c [ label = "process(n)" ];
         c=>c [ label = "process(END)" ];
         a<<=c [ label = "callback()"];
         ---  [ label = "If more to run", ID="*" ];
         a->a [ label = "next()"];
         a->c [ label = "ac1()\nac2()"];
         b<-c [ label = "cb(TRUE)"];
         b->b [ label = "stalled(...)"];
         a<-b [ label = "ab() = FALSE"];

       }

       More information on the input can be found at http://www.mcternan.co.uk/mscgen/.

COPYRIGHT

       Mscgen, Copyright (C) 2010 Michael C McTernan,
                                  Michael.McTernan.2001@cs.bris.ac.uk

       This  program  is  free  software;  you  can  redistribute it and/or modify it under the terms of the GNU
       General Public License as published by the Free Software Foundation; either version 2 of the License,  or
       (at your option) any later version.

       PNG rendering by libgd, www.libgd.org.

SEE ALSO

       http://www.mcternan.co.uk/mscgen/