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

FreeBSD Manual Pages

  
 
  

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 descrip-
       tions 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 pro-
       tocols  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 omit-
	      ted 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 de-
	      faults to	<infile>.<type>.

       -F font
	      Use specified font for rendering PNG output.  This is only  sup-
	      ported if	mscgen was built with USE_FREETYPE and is ignored oth-
	      erwise.

       -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.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
       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/

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.0>

home | help