Overview
The developer kit is composed of the Foundation Modeling and Editing libraries (old Gocad Software libraries) and the Plug-in Development Framework.
- Gocad Software libraries are used to write standalone applications. The development toolkit allows developers to incorporate Gocad technology into their proprietary applications.
- The Plug-in Development framework is used to develop plug-in modules that are added at run-time into the Base Module. The development framework allows oil companies to easily add and integrate in-house algorithms as plug-ins inside the main product.
Plug-ins have been implemented by our clients to integrate the earth model and in-house or vendor processing modules such as ray-tracing, or flow-simulators.

Object-Oriented Toolkit
The developer kit is an object oriented toolkit written in C++ programming language. It provides read and write access to the different geometrical objects used in modeling as well as to the algorithms to create and edit such objects. Using the toolkit, applications can create new objects by deriving from existing objects, thus extending the behavior of built-in objects. Applications can add new objects (GObj) that will be fully understood and managed by the native application. The Gocad toolkit architecture (based on basic patterns such as Factory or Factoryfinder patterns) provides the underlying mechanism for defining new objects to Gocad.
Plug-Ins
A plug-in developer will use features of the Gocad framework such as the Gocad CLI (Command Language Interpreter) system to develop his own components. CLI automates standard features such as the creation of user interface components and Command classes that can be integrated into the Gocad command scripting language (Embedded in TCL) and into the Base Module menus or wizards.
Commands are described to the Command Interpreter using a specific language. From this description, a user interface component and a Command component are automatically created. The User interface component will provide a dialog for you to enter command parameters. The Command component will interpret the ASCII command line coming from either the dialog (the dialog resends the events to CLI as semantic events) or from an outside source (voice recognition, TCL scripts, command history)
Once the command has been described, it can be integrated in the Command MenuBar of the main application. The Command can carry "brand" information so the user will know the origin of the component.

Links to Libraries Description
|