1 <?xml version="1.0" encoding="utf-8" ?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6 <meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
7 <title>Work in progress</title>
8 <style type="text/css">
11 :Author: David Goodger
12 :Contact: goodger@users.sourceforge.net
15 :Copyright: This stylesheet has been placed in the public domain.
17 Default cascading style sheet for the HTML output of Docutils.
19 See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
20 customize this style sheet.
23 /* used to remove borders from tables and images */
24 .borderless, table.borderless td, table.borderless th {
27 table.borderless td, table.borderless th {
28 /* Override padding for "table.docutils td" with "! important".
29 The right padding separates the table cells. */
30 padding: 0 0.5em 0 0 ! important }
33 /* Override more specific margin styles with "! important". */
34 margin-top: 0 ! important }
36 .last, .with-subtitle {
37 margin-bottom: 0 ! important }
43 text-decoration: none ;
50 margin-bottom: 0.5em }
52 /* Uncomment (and remove this text!) to get bold-faced definition list terms
60 div.abstract p.topic-title {
64 div.admonition, div.attention, div.caution, div.danger, div.error,
65 div.hint, div.important, div.note, div.tip, div.warning {
67 border: medium outset ;
70 div.admonition p.admonition-title, div.hint p.admonition-title,
71 div.important p.admonition-title, div.note p.admonition-title,
72 div.tip p.admonition-title {
74 font-family: sans-serif }
76 div.attention p.admonition-title, div.caution p.admonition-title,
77 div.danger p.admonition-title, div.error p.admonition-title,
78 div.warning p.admonition-title {
81 font-family: sans-serif }
83 /* Uncomment (and remove this text!) to get reduced vertical space in
85 div.compound .compound-first, div.compound .compound-middle {
86 margin-bottom: 0.5em }
88 div.compound .compound-last, div.compound .compound-middle {
97 div.dedication p.topic-title {
105 div.footer, div.header {
114 div.line-block div.line-block {
121 border: medium outset ;
123 background-color: #ffffee ;
128 div.sidebar p.rubric {
129 font-family: sans-serif ;
132 div.system-messages {
135 div.system-messages h1 {
139 border: medium outset ;
142 div.system-message p.system-message-title {
149 h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
150 h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
168 ol.simple, ul.simple {
172 list-style: decimal }
175 list-style: lower-alpha }
178 list-style: upper-alpha }
181 list-style: lower-roman }
184 list-style: upper-roman }
198 white-space: nowrap }
207 font-family: sans-serif ;
212 font-family: sans-serif ;
224 pre.literal-block, pre.doctest-block {
227 background-color: #eeeeee }
230 font-family: sans-serif ;
231 font-style: oblique }
233 span.classifier-delimiter {
234 font-family: sans-serif ;
238 font-family: sans-serif }
241 white-space: nowrap }
249 span.section-subtitle {
250 /* font-size relative to parent (h1..h6 element) */
254 border-left: solid 1px gray;
262 margin-bottom: 0.5em }
265 border-left: solid 1px black;
268 table.docutils td, table.docutils th,
269 table.docinfo td, table.docinfo th {
270 padding-left: 0.5em ;
271 padding-right: 0.5em ;
272 vertical-align: top }
274 table.docutils th.field-name, table.docinfo th.docinfo-name {
277 white-space: nowrap ;
280 h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
281 h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
285 background-color: #eeeeee }
288 list-style-type: none }
293 <div class="document" id="work-in-progress">
294 <h1 class="title">Work in progress</h1>
295 <div class="contents topic">
296 <p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
298 <li><a class="reference" href="#what-is-done" id="id1" name="id1">What is done ?</a></li>
299 <li><a class="reference" href="#to-do" id="id2" name="id2">To do</a><ul>
300 <li><a class="reference" href="#output-a-trace-pr" id="id3" name="id3">Output a trace (PR)</a></li>
301 <li><a class="reference" href="#make-another-runtime-mt" id="id4" name="id4">Make another runtime (MT)</a></li>
302 <li><a class="reference" href="#save-load-pr" id="id5" name="id5">Save/load (PR)</a></li>
303 <li><a class="reference" href="#partial-execution" id="id6" name="id6">Partial execution</a></li>
304 <li><a class="reference" href="#deployment-resource-management" id="id7" name="id7">Deployment, resource management</a></li>
305 <li><a class="reference" href="#add-other-data-types" id="id8" name="id8">Add other data types</a></li>
306 <li><a class="reference" href="#managing-several-schema" id="id9" name="id9">Managing several schema</a></li>
307 <li><a class="reference" href="#better-management-of-outputs-in-elementarynode" id="id10" name="id10">Better management of outputs in ElementaryNode</a></li>
308 <li><a class="reference" href="#errors-when-reading-the-xml-file" id="id11" name="id11">Errors when reading the XML file</a></li>
309 <li><a class="reference" href="#errors-when-executing" id="id12" name="id12">Errors when executing</a></li>
310 <li><a class="reference" href="#add-macro-nodes" id="id13" name="id13">Add macro nodes</a></li>
311 <li><a class="reference" href="#discover-base-types-from-runtime-gui-and-parser" id="id14" name="id14">Discover base types from runtime (GUI and parser)</a></li>
316 <div class="section">
317 <h1><a class="toc-backref" href="#id1" id="what-is-done" name="what-is-done">What is done ?</a></h1>
319 <li>XML parser with expat. No more xsd : problem with license</li>
320 <li>support several elementary nodes : CompoNode,
321 RefNode, FuncNode, ScriptNode</li>
322 <li>support all composite nodes : Bloc, While, ForLoop, ForEachLoop, Switch</li>
323 <li>support control links, data links and datastream links (DSC and Calcium datastream)</li>
324 <li>support initialization from data in XML-RPC syntax</li>
325 <li>support execution in threaded Executor : manage Python GIL</li>
326 <li>the Runtime SALOME is connected to the SALOME LifeCycle to implement
327 CompoNode. It's not yet possible to choose a computer or to express
328 a resource constraint.</li>
329 <li>dump of the schema state in graphviz form (.dot file)</li>
330 <li>execution error management : an ElementaryNode signals an error by throwing
331 an exception. This exception is catched by the executor which notifies the
332 ElementaryNode and makes propagate the error to all depending nodes and to
333 the father. All depending nodes and the father are put in FAILED state. The
334 ElementaryNode is put in ERROR state.</li>
335 <li>Python interface : main C++ API wrapped with SWIG to be able to create schema from Python
336 and to control execution</li>
337 <li>a Salome loader in pyqt directory (salomeloader.py)</li>
340 <div class="section">
341 <h1><a class="toc-backref" href="#id2" id="to-do" name="to-do">To do</a></h1>
342 <div class="section">
343 <h2><a class="toc-backref" href="#id3" id="output-a-trace-pr" name="output-a-trace-pr">Output a trace (PR)</a></h2>
344 <p>It would be fine to have an execution trace (event sequence)
345 to be able to analyze the execution afterwards.</p>
347 <div class="section">
348 <h2><a class="toc-backref" href="#id4" id="make-another-runtime-mt" name="make-another-runtime-mt">Make another runtime (MT)</a></h2>
349 <p>To check the design</p>
351 <div class="section">
352 <h2><a class="toc-backref" href="#id5" id="save-load-pr" name="save-load-pr">Save/load (PR)</a></h2>
353 <p>Be able to dump the schema state in a XML file.
354 Then to reload the state and restart from this state.</p>
355 <p>Two levels : with CORBA objects and without</p>
357 <div class="section">
358 <h2><a class="toc-backref" href="#id6" id="partial-execution" name="partial-execution">Partial execution</a></h2>
359 <p>Execute some selected nodes (directly or with backtrack)</p>
361 <div class="section">
362 <h2><a class="toc-backref" href="#id7" id="deployment-resource-management" name="deployment-resource-management">Deployment, resource management</a></h2>
365 <div class="section">
366 <h2><a class="toc-backref" href="#id8" id="add-other-data-types" name="add-other-data-types">Add other data types</a></h2>
369 <div class="section">
370 <h2><a class="toc-backref" href="#id9" id="managing-several-schema" name="managing-several-schema">Managing several schema</a></h2>
371 <p>One executor for all schemas or one executor by schema ?</p>
373 <div class="section">
374 <h2><a class="toc-backref" href="#id10" id="better-management-of-outputs-in-elementarynode" name="better-management-of-outputs-in-elementarynode">Better management of outputs in ElementaryNode</a></h2>
375 <p>Execution in threads : all outputs are mixed</p>
377 <div class="section">
378 <h2><a class="toc-backref" href="#id11" id="errors-when-reading-the-xml-file" name="errors-when-reading-the-xml-file">Errors when reading the XML file</a></h2>
380 <li>Stop at first error (Exception)</li>
381 <li>Collect all errors</li>
382 <li>Check the overall validity</li>
385 <div class="section">
386 <h2><a class="toc-backref" href="#id12" id="errors-when-executing" name="errors-when-executing">Errors when executing</a></h2>
388 <li>Stop as soon as possible when encountering an error</li>
389 <li>Or execute most calculations possible</li>
391 <p>Need an execution option to specify that</p>
392 <p>To be able to restart an execution on another computer</p>
394 <div class="section">
395 <h2><a class="toc-backref" href="#id13" id="add-macro-nodes" name="add-macro-nodes">Add macro nodes</a></h2>
397 Be able to reference them several times</p>
399 <div class="section">
400 <h2><a class="toc-backref" href="#id14" id="discover-base-types-from-runtime-gui-and-parser" name="discover-base-types-from-runtime-gui-and-parser">Discover base types from runtime (GUI and parser)</a></h2>
401 <p>Runtime would have a service to give all known types (map name:type)</p>