From e213ab3090959c0281ed67125a451b8f1a267c93 Mon Sep 17 00:00:00 2001 From: Francois Bleibel <fbleibel@gmail.com> Date: Tue, 12 Oct 2010 18:55:15 +0900 Subject: [PATCH] Work on documentation. --- doc/additionalDoc/dgshell_doc.h | 10 + doc/additionalDoc/package.h | 91 +++-- doc/figures/entity.svg | 566 ++++++++++++++++++++++++++++++++ doc/figures/use-case.svg | 1 + doc/pictures/HRP2.jpg | Bin 0 -> 23613 bytes doc/pictures/entity.png | Bin 0 -> 33097 bytes doc/pictures/footer.jpg | Bin 0 -> 23613 bytes 7 files changed, 644 insertions(+), 24 deletions(-) create mode 100644 doc/additionalDoc/dgshell_doc.h create mode 100644 doc/figures/entity.svg create mode 100644 doc/figures/use-case.svg create mode 100644 doc/pictures/HRP2.jpg create mode 100644 doc/pictures/entity.png create mode 100644 doc/pictures/footer.jpg diff --git a/doc/additionalDoc/dgshell_doc.h b/doc/additionalDoc/dgshell_doc.h new file mode 100644 index 0000000..dca53b3 --- /dev/null +++ b/doc/additionalDoc/dgshell_doc.h @@ -0,0 +1,10 @@ +/** +\page dgshell_doc dg-shell executable +Dynamic-graph shell program "dg-shell" allows access to the dynamic-graph library's +Interpreter class, which can execute commands and scripts from the command line. +It can be found in the installlation prefix's bin/ directory. + +There is also a linux shell script available, dg-shell-plugin, that runs +dg-shell with a default script, which in turns loads useful plugins as +shell-functions and shell-procedure. +**/ diff --git a/doc/additionalDoc/package.h b/doc/additionalDoc/package.h index 579d522..8854c3a 100644 --- a/doc/additionalDoc/package.h +++ b/doc/additionalDoc/package.h @@ -1,6 +1,7 @@ /* * Copyright 2010, * François Bleibel, + * Thomas Moulard, * Olivier Stasse, * * CNRS/AIST @@ -28,7 +29,61 @@ together using a graph system, akin to what Simulink does. With the building blocks this package provides, you can easily create a full computation graph for a given problem. It is the basis for the stack of tasks operation. +\image html pictures/entity.png +Functionality: +\li Built-in scripting language* for fast prototyping and testing +\li Support for extensions and modules using dynamic link libraries +\li Template-based signal definition, independant +\li Type-safe connection of input and output signals +\li On-demand signal computation as well as a caching system for signal values allow fast +computation of signal values, which is a critical point for real-time systems\n +* See \ref scriptingabout + \section overview Code overview + +\section entities List of entities in this package +Since most of the functionality in projects using the dynamic-graph framework +is exposed from entities, here is a short description of all the entities contained in +this package. Note that most entities are contained in a binary file that closely matches +the entities' names in the scripts; loading this file with the plugin loader will +enable creation of this entity through the factory. +\li \ref tracerdoc +\li \ref tracerrealtimedoc +\li ShellProcedure +\li \ref shellfunctions_doc + +The entities will be placed in ${PREFIX}/lib/plugin (since this may change, it is advised to +check the install log or the CMakeLists.txt file to check the installation path). +\section sigintro About signals + +Entities can output different types of signals. All signals are templated by a Time +tick type parameter (which is used in the caching of signals) - usually \c int. Signals +are also templated after the type of data they accept or provide. For example: +(example) +For a more detailed programmer-oriented description of signals, please see \ref signals + +\section scriptingabout Note about the scripting language +The scripting language allows entities to define their own commands, and +provides a basic framework for working with the dynamic-graph. + +A couple of functions are built-in in the interpreter and provides low-level features such as file sourcing or +plug-in loading.\n +These functions are:\n +\code plug <obj1.sig1> <obj2.sig2> \endcode plugs the signal sig1 of obj1 to the signal sig2 of obj2. sig1 and sig2 +have to be of the same type. sig1 has to be an output signal and sig2 an input signal. +\code new <class> <object> \endcode instantiates an object object of class class. object has to be a free identifier and +class an existing entity. +\code destroy <object> \endcode deletes an instance previously created. +\code run <script.txt> \endcode sources (i.e. read and interpret) an external file. +\code loadPlugin <file.so> <directory> \endcode loads a plugin called file.so and located in the directory directory. +\code unloadPlugin <path/file.so> \endcode unloads a plugin. +\code help \endcode lists available functions. +\code set <obj.signal> <value> \endcode defines an input signal to a specific, constant, value. +\code get <obj.signal> <value> \endcode +\code compute <obj.sig> <time> \endcode computes an output signal and sets the associated time to time. + +\section usecase How to use this package +1) Programmatically This code implements the factory design pattern, making creation of entities available to packages depending on the dynamic-graph API. @@ -59,34 +114,22 @@ corresponding headers in this module are: \li g_pool: dynamicgraph::PoolStorage \li g_shell: dynamicgraph::Interpreter -\section entities List of entities in this package -Since most of the functionality in projects using the dynamic-graph framework -is exposed from entities, here is a short description of all the entities contained in -this package. Note that most entities are contained in a binary file that closely matches -the entities' names in the scripts; loading this file with the plugin loader will -enable creation of this entity through the factory. -\li \ref tracerdoc -\li \ref tracerrealtimedoc -\li ShellProcedure -\li \ref shellfunctions_doc -\li \link dynamicgraph::Contiifstream Contiifstream \endlink - -The entities will be placed in ${PREFIX}/lib/plugin (since this may change, it is advised to -check the install log or the CMakeLists.txt file to check the installation path). -\section sigintro About signals +For an example of a program creating entities programmatically, see the unit test +test_pool.cpp (in your package source directory/unitTesting). -Entities can output different types of signals. All signals are templated by a Time -tick type parameter (which is used in the caching of signals) - usually \c int. Signals -are also templated after the type of data they accept or provide. For example: -(example) -For a more detailed programmer-oriented description of signals, please see \ref signals +2) Through scripts +The program \ref dgshell_doc can be used to have scripting access to the dynamic-graph +library, where you can execute scripts and commands, load plugins, create entities and connect signals. -\section scriptingabout About the scripting language -(...) +Here is a typical use case for programmers: +\image html figures/use-case.svg -\section usecase Programmers use case +\section References +\anchor Mansard2007 -\image html pictures/use-case.svg +<b>"Task sequencing for sensor-based control"</b>, +<em>N. Mansard, F. Chaumette,</em> +IEEE Trans. on Robotics, 23(1):60-72, February 2007 \defgroup dgraph Core classes and objects diff --git a/doc/figures/entity.svg b/doc/figures/entity.svg new file mode 100644 index 0000000..7840311 --- /dev/null +++ b/doc/figures/entity.svg @@ -0,0 +1,566 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + + id="svg2" + version="1.1" + inkscape:version="0.47 r22583" + sodipodi:docname="entity.svg" + inkscape:export-filename="/home/thomas/entity.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <defs + id="defs4"> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 526.18109 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="744.09448 : 526.18109 : 1" + inkscape:persp3d-origin="372.04724 : 350.78739 : 1" + id="perspective10" /> + <inkscape:perspective + id="perspective4620" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4645" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend" + style="overflow:visible"> + <path + id="path3718" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <inkscape:perspective + id="perspective4645-2" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend-1" + style="overflow:visible"> + <path + id="path3718-0" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <inkscape:perspective + id="perspective4645-3" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend-7" + style="overflow:visible"> + <path + id="path3718-7" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <inkscape:perspective + id="perspective4699" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow2Lend-8" + style="overflow:visible"> + <path + id="path3718-2" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="marker4705" + style="overflow:visible"> + <path + id="path4707" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <marker + inkscape:stockid="Arrow2Lend" + orient="auto" + refY="0" + refX="0" + id="marker4709" + style="overflow:visible"> + <path + id="path4711" + style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" + d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" + transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + </marker> + <inkscape:perspective + id="perspective4749" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="filter5789" + inkscape:label="Roughen" + inkscape:menu="ABCs" + inkscape:menu-tooltip="Small-scale roughening to edges and content" + color-interpolation-filters="sRGB"> + <feTurbulence + id="feTurbulence5791" + numOctaves="3" + seed="0" + type="turbulence" + baseFrequency="0.04" + result="result91" /> + <feDisplacementMap + id="feDisplacementMap5793" + in2="result91" + scale="6.6" + yChannelSelector="G" + xChannelSelector="R" + in="SourceGraphic" /> + </filter> + <inkscape:perspective + id="perspective4791" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="filter5789-3" + inkscape:label="Roughen" + inkscape:menu="ABCs" + inkscape:menu-tooltip="Small-scale roughening to edges and content" + color-interpolation-filters="sRGB"> + <feTurbulence + id="feTurbulence5791-8" + numOctaves="3" + seed="0" + type="turbulence" + baseFrequency="0.04" + result="result91" /> + <feDisplacementMap + id="feDisplacementMap5793-2" + in2="result91" + scale="6.6" + yChannelSelector="G" + xChannelSelector="R" + in="SourceGraphic" /> + </filter> + <inkscape:perspective + id="perspective4828" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4899" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4924" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4924-0" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4924-8" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4924-3" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective4982" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective5007" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective5007-4" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective5007-8" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective5007-6" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <inkscape:perspective + id="perspective5007-1" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.979899" + inkscape:cx="276.29655" + inkscape:cy="882.07221" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1030" + inkscape:window-x="-4" + inkscape:window-y="-3" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid2816" + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + style="fill:#54536c;fill-opacity:0.62352941;stroke:none" + id="rect2818" + width="175.45276" + height="205" + x="284.54724" + y="37.362183" + rx="5.0129361" + ry="5" /> + <text + xml:space="preserve" + style="font-size:16px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="353.47302" + y="57.362183" + id="text2834-8" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan2836-8" + x="353.47302" + y="57.362183">Entity</tspan></text> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 460,87.362183 35,0" + id="path2920-8-2" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 460,147.36218 35,0" + id="path2920-8-2-1" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 460,207.36218 35,0" + id="path2920-8-2-6" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 250,87.362183 35,0" + id="path2920-8-2-8" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 250,207.36218 35,0" + id="path2920-8-2-1-2" /> + <path + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" + d="m 250,147.36218 35,0" + id="path2920-8-2-6-7" /> + <rect + style="fill:#eae827;fill-opacity:1;stroke:#ddff55;stroke-width:0.92932039;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter5789)" + id="rect5421" + width="190" + height="60" + x="45" + y="82.362183" + transform="matrix(0.52631579,0,0,0.58333333,51.315789,69.317576)" /> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="81.590897" + y="138.73219" + id="text5327-0-9" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="81.590897" + y="138.73219" + style="font-size:18px;font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:URW Chancery L;-inkscape-font-specification:URW Chancery L Medium Italic" + id="tspan5404">Input signals</tspan></text> + <rect + style="fill:#eae827;fill-opacity:1;stroke:#ddff55;stroke-width:0.92932039;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter5789-3)" + id="rect5421-7" + width="190" + height="60" + x="45" + y="82.362183" + transform="matrix(0.52631579,0,0,0.58333333,551.31579,74.317576)" /> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="581.59088" + y="143.73221" + id="text5327-0-9-3" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + x="581.59088" + y="143.73221" + style="font-size:18px;font-style:italic;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:URW Chancery L;-inkscape-font-specification:URW Chancery L Medium Italic" + id="tspan5404-5">Output signals</tspan></text> + <flowRoot + xml:space="preserve" + id="flowRoot4845" + style="font-size:12px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"><flowRegion + id="flowRegion4847"><rect + id="rect4849" + width="165" + height="125" + x="290" + y="87.362183" + style="font-size:12px" + ry="0" /></flowRegion><flowPara + id="flowPara4859">- name</flowPara><flowPara + id="flowPara4885" /><flowPara + id="flowPara4875">- signals map</flowPara><flowPara + id="flowPara4877"> (indexed by their name)</flowPara><flowPara + id="flowPara4883" /><flowPara + id="flowPara4879">- command line interpreter</flowPara><flowPara + id="flowPara4881"> (define entities methods)</flowPara></flowRoot> <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="205" + y="77.362183" + id="text4887"><tspan + sodipodi:role="line" + id="tspan4889" + x="205" + y="77.362183" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="205" + y="137.36218" + id="text4887-8"><tspan + sodipodi:role="line" + id="tspan4889-0" + x="205" + y="137.36218" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="205" + y="197.36218" + id="text4887-8-6"><tspan + sodipodi:role="line" + id="tspan4889-0-1" + x="205" + y="197.36218" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="465" + y="77.362183" + id="text4887-8-0"><tspan + sodipodi:role="line" + id="tspan4889-0-6" + x="465" + y="77.362183" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="465" + y="137.36218" + id="text4887-8-4"><tspan + sodipodi:role="line" + id="tspan4889-0-4" + x="465" + y="137.36218" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" + x="465" + y="197.36218" + id="text4887-8-9"><tspan + sodipodi:role="line" + id="tspan4889-0-9" + x="465" + y="197.36218" + style="font-size:12px">signal name</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="220" + y="92.362183" + id="text4887-6" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2" + x="220" + y="92.362183" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="500" + y="92.362183" + id="text4887-6-5" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2-9" + x="500" + y="92.362183" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="500" + y="152.36218" + id="text4887-6-6" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2-1" + x="500" + y="152.36218" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="500" + y="212.36218" + id="text4887-6-0" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2-6" + x="500" + y="212.36218" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="220" + y="212.36218" + id="text4887-6-3" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2-7" + x="220" + y="212.36218" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + <text + xml:space="preserve" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif" + x="220" + y="152.36218" + id="text4887-6-32" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" + id="tspan4889-2-71" + x="220" + y="152.36218" + style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Serif;-inkscape-font-specification:DejaVu Serif">TYPE</tspan></text> + </g> +</svg> diff --git a/doc/figures/use-case.svg b/doc/figures/use-case.svg new file mode 100644 index 0000000..cafbf10 --- /dev/null +++ b/doc/figures/use-case.svg @@ -0,0 +1 @@ +<svg xmlns:x="http://ns.adobe.com/Extensibility/1.0/" xmlns:i="http://ns.adobe.com/AdobeIllustrator/10.0/" xmlns:graph="http://ns.adobe.com/Graphs/1.0/" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="721" height="735"><defs></defs><rect stroke="#000000" stroke-width="0" fill="#ffffff" x="0" y="0" width="720" height="734"/><g transform='translate(21.0,40.0)'><line x1='0.0' y1='0.0' x2='601.0' y2='0.0' stroke-dasharray='23, 0' stroke='#333333' stroke-width='1' /><g transform='translate(290.5,0.0)'></g></g><g transform='translate(26.5,-9.5) rotate(0 175.0 33.5)'><g transform='translate(0.0,41.5)'><text x='2' style='text-anchor: start' y='-3.0'><tspan xml:space='preserve' font-size='18' font-family='Arial' fill='#000000' >Typical plugin loading and usage process</tspan></text></g></g><g transform='translate(56.0,55.5) rotate(0 70.0 37.5)'><g transform='translate(0.0,0.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='21.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,21.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='20.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,41.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='34.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,15.5)'><text x='70.0' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' text-decoration='underline' >:PluginLoader</tspan></text></g><g ></g><g ></g></g><g transform='translate(91.26515179773804,214.89454904672732) rotate(0 37.734848202261965 30.10545095327268)'><rect x='0.0' y='4.493350888548161' width='67.65211829090791' height='55.41799429209398' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><polygon points='0.0,4.493350888548161 7.516902032323101,0.0 75.16902032323101,0.0 67.65211829090791,4.493350888548161 ' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><polygon points='75.16902032323101,0.0 75.16902032323101,55.41799429209398 67.65211829090791,59.911345180642144 67.65211829090791,4.493350888548161 ' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><g transform='translate(0.0,35.10545095327268)'><text x='37.734848202261965' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-style='italic' >plugin.so</tspan></text></g></g><g transform='translate(361.0,245.5) rotate(0 70.0 37.5)'><g transform='translate(0.0,0.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='21.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,21.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='20.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,41.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='34.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,15.5)'><text x='70.0' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' text-decoration='underline' >factory:Factory</tspan></text></g><g ></g><g ></g></g><g transform='translate(361.0,395.5) rotate(0 70.0 37.5)'><g transform='translate(0.0,0.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='21.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,21.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='20.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,41.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='34.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,15.5)'><text x='70.0' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' text-decoration='underline' >pool:Pool</tspan></text></g><g ></g><g ></g></g><g transform='translate(361.0,542.0) rotate(0 70.0 45.0)'><g transform='translate(0.0,0.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='36.0' stroke="#000000" stroke-width="2.0" fill="#ffffff"/></g><g transform='translate(0.0,36.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='34.0' stroke="#000000" stroke-width="2.0" fill="#ffffff"/></g><g transform='translate(0.0,70.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='20.0' stroke="#000000" stroke-width="2.0" fill="#ffffff"/></g><g transform='translate(0.0,15.0)'><text x='70.0' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' text-decoration='underline' >myEntityInstance</tspan></text><text x='70.0' style='text-anchor: middle' y='14.2'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' text-decoration='underline' >:Entity</tspan></text></g><g transform='translate(0.0,54.0)'><text x='2' style='text-anchor: start' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >+</tspan><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >commandLine(input</tspan></text><text x='2' style='text-anchor: start' y='14.2'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >stream, output stream)</tspan></text></g><g ></g></g><g transform='translate(130.0,214.0)'><line x1='-0.017762440882695196' y1='-0.49968439608805953' x2='-3.0' y2='-84.39454904672732' stroke-dasharray='23, 0' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(267.9641458400894)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(-1.5031560391194043,-37.19727452336366)'><rect fill='#ffffff' x='-20.5' y='-9.0' width='41.0' height='15'/><text x='0.0' style='text-anchor: middle' y='2.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >loads</tspan></text></g></g><g transform='translate(360.0,128.5) rotate(0 70.0 37.5)'><g transform='translate(0.0,0.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='21.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,21.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='20.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,41.0)'><rect x='0.0' y='0.0' width='139.4422310756972' height='34.0' stroke="#000000" stroke-width="2.0" fill="#ffcc33"/></g><g transform='translate(0.0,15.5)'><text x='70.0' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' font-weight='bold' >Shell:Interpreter</tspan></text></g><g ></g><g ></g></g><g transform='translate(536.2421099913893,64.97396996134887) rotate(0 29.75789000861068 48.026030038651136)'><circle cx='29.56081788934836' cy='9.566938254711381' r='9.85360596311612' fill='#FFFFFF' stroke="#000000" stroke-width="1.0"/><line x1='29.56081788934836' y1='19.133876509422763' x2='29.56081788934836' y2='57.40162952826829' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='29.56081788934836' y1='57.40162952826829' x2='19.70721192623224' y2='95.66938254711381' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='29.56081788934836' y1='57.40162952826829' x2='39.41442385246448' y2='95.66938254711381' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='29.56081788934836' y1='57.40162952826829' x2='39.41442385246448' y2='95.66938254711381' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='0.0' y1='28.700814764134144' x2='59.12163577869672' y2='28.700814764134144' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><g transform='translate(0.0,114.05206007730227)'><text x='29.75789000861068' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >user</tspan></text></g></g><g transform='translate(431.0,321.0)'><line x1='0.006666074153073843' y1='0.4999555614806037' x2='1.0' y2='75.0' stroke-dasharray='23, 0' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(89.23610153907002)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(0.49955561480603716,42.5)'><rect fill='#ffffff' x='-53.0' y='-9.0' width='106.0' height='15'/><text x='0.0' style='text-anchor: middle' y='2.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >calls newEntity()</tspan></text></g></g><g transform='translate(501.0,580.0)'><path d='M1.0,0.0 L94.75789000861073,0.0 Q104.75789000861073,0.0 104.75789000861073,-10.0 L104.75789000861073,-457.0 Q104.75789000861073,-467.0 94.75789000861073,-467.0 L93.75789000861073,-467.0 ' stroke-dasharray='23, 0' fill='none' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(0.0)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(104.75789000861073,-166.62105499569464)'><rect fill='#ffffff' x='-98.5' y='-17.0' width='197.0' height='15'/><text x='0.0' style='text-anchor: middle' y='-6.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >requests new instance creation</tspan></text><rect fill='#ffffff' x='-98.5' y='1.1999999999999993' width='197.0' height='15'/><text x='0.0' style='text-anchor: middle' y='12.2'><tspan font-size='13px' font-family='Arial' fill='#000000' >(either through code or the shell)</tspan></text></g></g><g transform='translate(196.0,93.0)'><line x1='0.49913841090379535' y1='0.029340190190827932' x2='340.24210999138927' y2='20.0' stroke-dasharray='23, 0' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(3.364070655892468)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(160.13828677761873,10.0)'><rect fill='#ffffff' x='-98.5' y='-17.0' width='197.0' height='15'/><text x='0.0' style='text-anchor: middle' y='-6.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >requests plugin load</tspan></text><rect fill='#ffffff' x='-98.5' y='1.1999999999999993' width='197.0' height='15'/><text x='0.0' style='text-anchor: middle' y='12.2'><tspan font-size='13px' font-family='Arial' fill='#000000' >(either through code or the shell)</tspan></text></g></g><g transform='translate(167.0,245.0)'><path d='M0.0,0.0 Q96.5,0.0 96.5,-39.5 Q96.5,-79.0 189.0,-78.98193899898531 ' stroke-dasharray='23, 0' fill='none' stroke='#000000' stroke-width='1' /><g transform='translate(193.0,-79.0) rotate(539.0)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(102.0,-37.5)'><rect fill='#ffffff' x='-90.0' y='-9.0' width='180.0' height='15'/><text x='0.0' style='text-anchor: middle' y='2.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >(auto-)registers functions with</tspan></text></g></g><g transform='translate(361.0,283.0)'><path d='M-4.0,-0.008528940762130819 Q-97.13257589886902,0.0 -97.13257589886902,-19.0 Q-97.13257589886902,-38.0 -194.26515179773804,-38.0 ' stroke-dasharray='23, 0' fill='none' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(180.0)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(-92.0,-16.5)'><rect fill='#ffffff' x='-85.0' y='-9.0' width='170.0' height='15'/><text x='0.0' style='text-anchor: middle' y='2.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >(auto-)registers entities with</tspan></text></g></g><g transform='translate(431.0,471.0)'><line x1='0.0' y1='0.5' x2='0.0' y2='64.0' stroke-dasharray='23, 0' stroke='#000000' stroke-width='1' /><g transform='translate(0.0,0.0) rotate(90.0)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(0.0,37.0)'><rect fill='#ffffff' x='-74.0' y='-9.0' width='148.0' height='15'/><text x='0.0' style='text-anchor: middle' y='2.0'><tspan font-size='13px' font-family='Arial' fill='#000000' >(auto-)registers entity to</tspan></text></g></g><g transform='translate(361.0,587.0)'><line x1='0.0' y1='0.0' x2='-131.5' y2='-6.123233995736766E-17' stroke-dasharray='23, 0' stroke='#000000' stroke-width='1' /><g transform='translate(-132.0,0.0) rotate(360.0)'><polygon points='2.0,0 8.0,-3.0 8.0,3.0' fill='#000000' stroke='#000000' stroke-width='1.0' /></g><g transform='translate(-76.0,0.0)'></g></g><g transform='translate(81.5,555.0) rotate(0 72.5 40.0)'><polygon points='0.0,0.0 124.203187250996,0.0 144.42231075697208,18.543046357615896 144.42231075697208,79.47019867549669 0.0,79.47019867549669 ' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='124.203187250996' y1='0.0' x2='124.203187250996' y2='18.543046357615896' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><line x1='124.203187250996' y1='18.543046357615896' x2='144.42231075697208' y2='18.543046357615896' stroke="#000000" stroke-width="1.0" fill="#ffffff"/><g transform='translate(0.0,21.0)'><text x='72.5' style='text-anchor: middle' y='-2.0'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >Can respond to</tspan></text><text x='72.5' style='text-anchor: middle' y='14.2'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >commands e.g. (in the</tspan></text><text x='72.5' style='text-anchor: middle' y='30.4'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >shell) myEntity.help,</tspan></text><text x='72.5' style='text-anchor: middle' y='46.599999999999994'><tspan xml:space='preserve' font-size='13' font-family='Arial' fill='#000000' >etc.</tspan></text></g></g></svg> \ No newline at end of file diff --git a/doc/pictures/HRP2.jpg b/doc/pictures/HRP2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..377681b20575b32c765e0ad9403723a0e3ea5c75 GIT binary patch literal 23613 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 literal 0 HcmV?d00001 diff --git a/doc/pictures/entity.png b/doc/pictures/entity.png new file mode 100644 index 0000000000000000000000000000000000000000..2b3d60f6245ccdc87bad7ae2a7ba5a074f9f1cee GIT binary patch literal 33097 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 L6;>u~68Jv=hk3O) literal 0 HcmV?d00001 diff --git a/doc/pictures/footer.jpg b/doc/pictures/footer.jpg new file mode 100644 index 0000000000000000000000000000000000000000..377681b20575b32c765e0ad9403723a0e3ea5c75 GIT binary patch literal 23613 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 literal 0 HcmV?d00001 -- GitLab