Difference between revisions of "Geometry Service Project Main"
From BRL-CAD
Line 17: | Line 17: | ||
---- | ---- | ||
− | [[GeometryServiceNetworkProtocol]] | + | |
+ | [[GeometryServiceNetworkProtocol|Geometry Service's Network Protocol Documentation]] | ||
---- | ---- | ||
− | |||
[[NetMsgTypes]] | [[NetMsgTypes]] |
Revision as of 07:04, 21 September 2010
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 specifically layered 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 '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.
Project implementation particulars:
- GS's core will be written in C/C++.
- OO Design will be leveraged to allow runtime-extensibility
- GS leverages existing functionality in BRL-CAD's libraries and binaries
- The Geometry Engine provides compile-time bindings
- The Geometry Service provides a network protocol run-time interface
- Each of the three major pieces will be stand-alone products
Geometry Service's Network Protocol Documentation