IBME Overview
| This page contains the design document for an enhancement or feature. The design should be considered a work in progress and may not represent the final design. As this is a collaborative design, contributions and participation from other developers and users is encouraged. Use the discussion page for providing comments and suggestions.
|
[edit] Architecture Diagram
iBme Architecture Diagram
The Integrated BRL-CAD Modeling Environment (iBME, or spoken 'I-Beam') consists of three major parts:
- Geometry Engine - C++ library consisting of the existing BRL-CAD libraries and added functionality such as integration of all BRL-CAD file format converters (via LIBGCV) and revision control storage utilities (via the SVN libraries).
- Geometry Service - Background service that leverages a Geometry Engine, a Session Manager, an Access Manager, and a Communications Manager to facilitate multi-user, multi-threaded, networked access to the Geometry Engine.
- GUI - Standalone 'thin client' that provides visualization and captures user input. This thin Client is connected a Geometry Service via one of many communication mediums with network sockets being the most prevalent.
The OO class heirarchy will be laid out that all three components may be compiled into a single binary or the GUI and GS compiled into seperate binaries.