File:Callback-async-notitle.svg

From testwiki
Jump to navigation Jump to search
Original file (SVG file, nominally 512 × 253 pixels, file size: 4 KB)

This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.

Summary

Description A simple diagram made with Graphviz of an asynchronous callback, including the application main program, a software platform registration function, the callback function, the software platform main loop. The initial step is registration, and the later steps are callbacks.
Date
Source Own work
Author TuukkaH
SVG development
InfoField
 The SVG code is valid.
 This chart was created with Graphviz.
Source code
InfoField

Command line code

<callback-async.dot dot -Tsvg ┃ sed -e 's/<title>.*<\/title>//' >callback-async-notitle.svg

Data

Graphiz code
digraph Pipeline {
        rankdir=LR
        labeljust="l"
        style=filled
        color=lightgrey
        node [style=filled,fillcolor=white,color=white]

# phase 1: registration

        subgraph clusterApplication {
                style=filled
                label="Application program (Initial step)"
                program [label="Main program",shape=rect]
                callback [label="Callback function"]
# invisible content to match layout with intention:
                edge [style=invis]
                node [style=invis,label="",width=0.01,height=0.01]
                program -> callback
        }

        subgraph clusterLibrary {
                margin="5,5"
                label="Software platform"
                labelloc=b
                node [color=blue,fontcolor=blue]
                loop [label="Main loop",shape=rect]
                function [label="Registration function"]
                loop -> function [style=invis]
        }
        program -> function [label="calls",weight=100]

# phase 2: callback

        subgraph clusterApplication2 {
                label="Application program (Later steps)"
                program2 [label="Main program",shape=rect]
                callback2 [label="Callback function"]
# invisible content to match layout with intention:
                edge [style=invis]
                node [style=invis,label="",width=0.01,height=0.01]
                program2 -> callback2
        }

        subgraph clusterLibrary2 {
                margin="5,5"
                label="Software platform"
                labelloc=b
                node [color=blue,fontcolor=blue]
                loop2 [label="Main loop",shape=rect]
                function2 [label="Registration function"]

                loop2 -> function2 [style=invis]
        }


        callback2
        loop2 -> callback2 [label="calls"]

# vertical constraint between phases
        program -> callback2 [style=invis]
}


Licensing

Public domain I, the copyright holder of this work, release this work into the public domain. This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

20 April 2006

image/svg+xml

74d2dcb14b2deb88b1afc51276cabfb39d3885b7

3,782 byte

253 pixel

512 pixel

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current00:48, 12 February 2018Thumbnail for version as of 00:48, 12 February 2018512 × 253 (4 KB)wikimediacommons>Pat HawksReprocess GraphViz code to SVG to eliminate SVG errors

The following page uses this file: