    digraph SigC {
        ranksep=2
        node [shape=record,style=filled];
    @

    function toGraphvizText(sText : value) {
        sText = sText.replaceString(" < ", "\\n<\\n");
        sText = sText.replaceString(" > ", "\\n>\\n");
        sText = sText.replaceString(' ', "\\ ");
        sText = sText.replaceString('"', "\\\"");
        return sText;
    }

    function writeAction<"duration">(action : node) {
        @|@
        local sStreet = toGraphvizText('"' + action.crossroad_entry.street + '"');
        if action.crossroad_entry.direction == "c->s" {
            @@action.crossroad_entry.crossroad@-\>@sStreet@\n@
        } else {
            @@sStreet@-\>@action.crossroad_entry.crossroad@\n@
        }
        foreach i in action.durations {
            if !i.first() {
                @/@
            }
            local iSec = $i%60$;
            if iSec.length() == 1 iSec = '0' + iSec;
            @@floor($i/60$)@min@iSec@@
        }
    }

    function writeAction<"activate">(action : node) {
        @|@action.strategy@@
    }

    function writeAction<"desactivate">(action : node) {}

    @    @this.name@ [style=filled, fillcolor="#A1E1FF",fontname="Arial-Narrow"];
        @this.name@_start [label="@toGraphvizText(this.start)@",fontname="Arial-Narrow",shape=box];
        @this.name@ -> @this.name@_start [label="start",fontname="Arial-Narrow",fontcolor="red",color="red",style="bold"];
        ranksep=4
    @
    foreach rule in this.rules {
        @
        @this.name@_rule@rule.key()@ [label="@toGraphvizText(rule.condition)@",fontname="Arial-Narrow",shape=box];
        @this.name@ -> @this.name@_rule@rule.key()@ [color="purple",style="bold"];
    @
        foreach action in rule.actions {
            @    @this.name@_rule@rule.key()@_@action.key()@ [shape=record,label="{@action@@
            writeAction<action>(action);
            @}",fontname="Arial-Narrow",fillcolor=yellow];
        @this.name@_rule@rule.key()@ -> @this.name@_rule@rule.key()@_@action.key()@ [color="orange",style="bold"];
    @
        }
    }

    @}

Generated by CodeWorker v3.11.0.1 from CWscript2HTML.cwp.