]> rtime.felk.cvut.cz Git - boost-statechart-viewer.git/blob - www/index.mdwn
4d01e6578346d2b2556cd4888c652488d6694ad8
[boost-statechart-viewer.git] / www / index.mdwn
1 [[!meta title="Boost Statechart Viewer"]]
2
3 Overview
4 ---------
5
6 Boost-statechart-viewer is a program for visualization state state
7 machines written in C++ with [boost][boost]/[statechart][statechart]
8 library. The program itself is written in C++ and uses [clang][clang]
9 from [LLVM][llvm] project for analyzing the source code. This program is released under the GNU GPL
10 license.
11
12 [boost]: http://www.boost.org/
13 [statechart]: http://www.boost.org/doc/libs/1_46_1/libs/statechart/doc/index.html
14 [clang]: http://clang.llvm.org/
15 [llvm]: http://llvm.org/
16
17 Authors
18 --------
19
20 Petr Silhavik <silhape2@fel.cvut.cz> <br>
21 Michal Sojka  <sojkam1@fel.cvut.cz>
22
23 For compiling
24 and correctly working program is necessary to have LLVM and clang
25 version 2.9.
26
27
28 Status
29 -------
30
31 - The program can found states and transitions in the source code.
32 - The program understands all options and flags as the compilers (gcc, clang, ...).
33 - State machines can be defined in more than one file.
34 - Now it doesn't support orthogonal states.
35 - The state machine can be inside many namespaces, but not inside templates. 
36
37 Usage
38 ------
39
40 The program can be used almost the same way as a C compiler. You will
41 typically need to specify locations for all header files except of the
42 files stored in system folder(in Linux: /usr/...) using `-I` option.
43 Of course you can specify the output filename (`-o` option). Program
44 displays all diagnostic messages like compilers. If an error occurs
45 the program stops.
46
47 ####Example of command line invocation: 
48
49     ./visualizer main.cpp -o graph.dot -I /home/petr/install/
50
51 The output file can be transformed into the picture using classical
52 [dot][graphviz] commands (e.g. `dot -Tpng graph.dot -o graph.png`) . The initial
53 state is double outlined. Each transition has a label with the name of
54 the triggering event.
55
56 [graphviz]: http://www.graphviz.org/
57
58 Download:
59 ---------
60
61 Boost statechart viewer can be downloaded from GIT repository.
62
63     git clone git://rtime.felk.cvut.cz/boost-statechart-viewer.git
64
65 You can also browse the [repository online][1].
66
67
68 Gallery
69 -------
70
71 ### Small
72 [[small.png]]  
73 [[Source code|test.cpp]]
74
75 ### StopWatch
76 [[stopWatch.png]]  
77 [[Source code|StopWatch.cpp]]
78
79 ### Camera
80 [[camera.png]]  
81 [[Source code|StopWatch.cpp]]
82
83 ### Big
84 [[big.png]]  
85 [[Source code|big_sm.tar.gz]]
86
87   [1]: http://rtime.felk.cvut.cz/gitweb/boost-statechart-viewer.git