GUI mode: access to the SALOME functionalities via SALOME session server
Viewers and Object Browser
Batch mode: access to the SALOME functionalities from the terminal console (no GUI)
Python console for direct access to SALOME
Run test scripts (python)
Standards & rules
Unified source code
Open Source Platform and capability to:
Define proprietary or commercial solutions
Integrate existing components which can be non Open Source
User-friendliness & performance:
Shared common look-and-feel
Multi-CPU and parallel computations
Modularity / interchangeability of components
Adhesion to standards:
Operating System (Linux)
Software Architecture (CORBA)
Format to exchange CAD models (STEP, IGES)
High graphical performance (OpenGL)
Adhesion to Open Source:
Distributed under the terms of the GNU LGPL license
Available in source codes and binaries
Use of open-source software components
Used technologies, libraries, tools
- omniORB - Open source Object Request Broker (ORB) library that implements the 2.3
specification of the Common Object Request Broker Architecture (CORBA). SALOME allows distributed calculations via the CORBA interfaces, implemented with omniORB.
- Python - Powerful dynamic programming language. Used in SALOME for scripting purposes. SALOME GUI desktop embeds Python console allowing user to access different SALOME functionalities via Python interfaces.
- Open CASCADE Technology - Set of C++ software components for 3D modeling, visualization, data exchange. It accumulates several hundred man-years of development and has been successfully used for more than 10 years by a lot of companies. Used in SALOME for CAD modeling, displayng of the CAD models in the 3D viewer (OpenGL based).
- Qt - Cross-platform application and UI framewor. Used in SALOME for implementation of the Graphical User Interface front-end.
- VTK - Image processing, 3D graphics and visualization software system. SALOME GUI module embeds OpenGL-based VTK 3D viewer for visualization purposes.
- Qwt - 2D plotting extension for Qt library. Used in the SALOME Post-Pro module to visualize 2D graphs (set of 2D curves).
- PyQt - Python bindings for Qt library. Provides a Python wrappings to access GUI functionalities in the scripts.
- SWIG - Simplified Wrapper and Interface Generator. Used to wrap different functinalities of SALOME platform to the Python language.
- HDF5 - Hierarchical Data Format library. SALOME persistence mechanizm (data storage) is implemented with help of this library.
- Med - MED format interface library. Used in SALOME Med, Mesh and Post-Pro modules as an internal format for representing of the mesh data structures. SALOME supports importing / exporting of the data from the files of the MED format.
- Netgen - Open-source automatic meshing engine used in SMESH module for 2D/3D mesh generation purposes.
- Doxygen - Popular documentation system for C++, C, Java, IDL, etc. Used in SALOME for automatic generation of the user documentation.
- boost - Free peer-reviewed portable STL extension. Powerful template library used in SALOME for different purposes.
- libxml2 - Open-source XML-parsing library.
- QScintilla - Auxiliary tool for source code editing and debugging. Used in YACS module as editor of the Python scripts.