]> SALOME platform Git repositories - modules/yacs.git/blob - doc/yacs.dox
Salome HOME
copy tag mergefrom_BR_V0_1_CC_Salome_04oct07
[modules/yacs.git] / doc / yacs.dox
1 //----------------------------------------------------------------------------------
2 /*!
3 // \file    yacs.dox
4 // \author  Christian Caremoli
5 // \date    2006-11
6 */
7 //----------------------------------------------------------------------------------
8
9 /*!
10 \mainpage
11
12  \section Introduction
13
14  \b %YACS is a tool to supervise execution of complex interconnected 
15  scientific applications on computer networks and clusters. 
16  Interconnected scientific applications can be seen as a collection 
17  of computational tasks that are executed in a known order.
18
19  In %YACS such a kind of application is described by a calculation schema.
20  %A calculation schema can be defined with an XML syntax and is mainly
21  a graph of nodes that refer to computational tasks or control structures.
22  Nodes are connected by control and data flow links.
23
24  \section Features
25
26  - Build calculation schemas from XML files
27  - Execute calculation schema (batch, step by step)
28  - Can manage mainly Salome component nodes, inline python nodes but
29    also to a lesser extent : C++ component nodes, XML component nodes
30
31  \section Packages
32
33  %YACS is composed of four packages
34  - \ref bases : common base classes (threads,...) and constants
35  - \ref engine : calculation schema generic classes (calculation nodes, control nodes,
36    control and data flow links, ...)
37  - \ref runtime : implementation of generic calculation nodes for Salome platform
38  - \ref xml_loader : XML reader for generic calculation schema
39
40  A Python API is provided by wrapping with swig : \ref python
41
42  \section Building
43
44  For building %YACS, you need some prerequisites
45  - g++ 3.3 or more (mandatory)
46  - libxml2 (mandatory)
47  - expat (mandatory)
48  - omniorb (mandatory)
49  - python 2.3 and + (mandatory)
50  - swig 1.3.24 (optional)
51  - cppunits (optional, for unit tests only)
52  - Salome 3.2.x (optional)
53  - DSC Salome Extension (optional)
54
55  If you want to install %YACS for SALOME, you need to set environment 
56  variable: \b KERNEL_ROOT_DIR.
57
58  If you want to install %YACS for Dsc Salome Extension, you need to set environment 
59  variable: \b PARALLEL_KERNEL_ROOT_DIR.
60
61  The building process is the traditional configure/make/make install:
62  - configure --prefix=path_to_install
63  - make
64
65  Then you can run unit tests if cppunits is installed :
66  - make check
67
68  Then you can run a small demo in Demo directory:
69  - cd Demo
70  - make
71  - launch the echoSrv server : echoSrv& (if the omniorb name server is not
72  running you need to launch it : omniNames& should be enough)
73  - run yacs supervisor with the schema.xml file : ../src/yacsloader/driver schema.xml
74
75  Finally you can install yacs:
76  - make install
77  - read the doc in doc directory
78  - go to src/yacsloader/samples directory for XML examples
79
80   \section TODOs
81
82  Many things but mainly:
83  - add resource management features
84  - add GUIs
85
86 */
87
88 /*! \defgroup TypeCodes  TypeCodes
89  */
90
91 /*! \defgroup Nodes  Nodes
92  */
93
94 /*! \defgroup Ports  Ports
95  */
96
97 /*! \defgroup AdaptorPorts AdaptorPorts
98  */
99
100 /*! \defgroup Executors Executor objects
101  */
102