Geometry Service Project Main
The Geometry Service Project (GS) is the internal name for a project under development that aims to restructure the geometry management services within BRL-CAD and provide a new user interface. More specifically, the restructuring aims to leverage an object-oriented design and encapsulate much of the existing functionality in BRL-CAD through three C++ interfaces. The GS Project consists of three major pieces:
- Geometry Engine - C++ library consisting of the existing BRL-CAD libraries and added functionality such as integration of all BRL-CAD file format converters and SVN storage utilities.
- 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 client that provides visualization of geometry and captures user input. This client is connected a Geometry Service over the network via the Geometry Service Network (GSNet) Protocol.
Project implementation particulars:
- The Geomtery Service will be written in C/C++ to allow runtime-extensibility and reuse of code in future projects.
- The Geomtery Service leverages the proven and stable functionalities in BRL-CAD's libraries and binaries.
- The Geometry Service provides an easy to use and extensible network protocol (GSNet Protocol) for interacting with a running Geometry Server.
- The Geometry Engine provides a clean and easy to use API for BRL-CAD's libraries and binaries.
- Each of the three major pieces will be stand-alone products