Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
MSCGEN(1)			  User Commands 		       MSCGEN(1)

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  out-
     put.  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 al-
     though MSCs need not be complicated to create or use. Mscgen aims	to  pro-
     vide  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, us-
     ing 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.mcter-
     nan.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 un-
     der 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/

mscgen-0.20			   2011-03-05			       MSCGEN(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mscgen&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help