Salome HOME
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git] / doc / Modules.doc
1 // Special file to define and describe the modules (goups)
2
3 /**
4  * \defgroup DataModel Data model
5  *
6  * \brief Structures for storage and management the application data.
7  * 
8  * Data structures are unified and splitted in universal <b>ModelAPI</b> package.
9  * The OCCT specialized implementation of ModelAPI interfaces is located in the <b>Model</b>.
10  * The geometrical primitives interfaces in <b>GeomAPI</b> package are supported by geometrical 
11  * persistence elements in <b>GeomDatAPI</b> interface and has OCCT-specific implementation in GeomData package.
12  *
13  */
14
15 /**
16  * \defgroup DataAlgo Algorithms
17  *
18  * \brief Different algorithm used in the application
19  * 
20  * The geometrical algorithms implementation (basing on OCCT libraries) are located in <b>GeomAlgoAPI</b>.
21  *
22  */
23  
24
25 /**
26  * \defgroup Plugins Plugins
27  *
28  * \brief Implementation of specific features of the application is concentrated in plugins.
29  * 
30  * The C++ and Python features implementations are located in plugins: specially organized libraries
31  * and configuration files that allows to define the user interface and specific algorithms.
32  * There are many plugins that should be extended with the development of the application. The names
33  * of plugin-packages are ended with "Plugin" string:
34  * <b>PartSetPlugin</b>, <b>ConstructionPlugin</b>, <b>SketchPlugin</b>, <b>FeaturesPlugins</b>, etc.
35  *
36  */
37  
38  /**
39  * \defgroup Config Config 
40  *
41  * \brief XML processing tools used in the application
42  * 
43  * The tools for reading definitions of plugins, features and widgets.  
44  *
45  */
46
47 /**
48  * \defgroup GUI GUI of the application
49  *
50  * \brief Classes for graphic user interface definition
51  * 
52  * Classes of application windows definition, operations launching, 
53  * and objects presentations. It consists of two packages:
54  * - ModuleBase - level for modules definition
55  * - XGUI - implementation of Application GUI.
56  */
57
58 /**
59  * \defgroup Salome A Salome connector
60  * 
61  * \brief A set of classes which provide wrapping of 
62  * OpenParts application as SALOME module
63  */
64
65 /** 
66  * \defgroup Desktop Classes for standalone application
67  * 
68  * \brief This group contains classes for launching the application 
69  * in standalone desktop (without SALOME)
70  */
71
72 /** 
73  * \defgroup Modules Modules
74  * 
75  * \brief Definition of a module as a set of classes for plugins management
76  */
77
78 /**
79  * \defgroup Validators Validators
80  *
81  * \brief Implementation of internal logic of the feature
82  * 
83  * Validators are used for checking validity of the feature: each argument, 
84  * dependencies between the arguments. Validators are defined in the 
85  * configuration files and may be also used for selection filters (ModuleBase_SelectionValidator),
86  * passing configurable parameters from XML file to the feature implementation 
87  * (like in ExchangePlugin_ImportFormatValidator).
88  *
89  */
90