Geosoft GX Developer 8.5

Part 1: GX Language Reference

The GX language is used to create a specific task (a compiled GX) that will run and work within an Oasis montaj working environment.  A GX task can include one or more simple dialogs that present or collect information from the user, plus any kind of process that is applied to data.  GXs also support basic interaction with the Oasis montaj environment, including open maps and databases. 

A GX can be run directly from Oasis montaj (GX/Run a GX...), or it can be included as a menu item that is run when a user selects that item from a menu.  

Most of Geosoft functionality is delivered as GX's connected to menus, and Geosoft provides all Geosoft GX source code as part of GX Developer (C:\Program Files (x86)\Geosoft\GX Developer\gx\src).

You can also use the GX language to create a workflow that calls an external program to carry out some processing work for you.  For example, you may have a 64-bit Python script that you would like to call to do something useful.  In this case, use the shell command in a GX to call Python to run your script, which can in turn use the Geosoft 64-bit API to carry out some processing work.  For more information on using Python and other languages with the GX API, refer to the Part 2: Extending Oasis montaj section of this documentation.

Who should use the GX Language?

The GX language (GXC and GRC) in GX Developer has been designed for people with some software development experience, such as would be learned in a university or college level introductory course in computer programming. GX Developer should not be your first programming language as many of the basic concepts of variables, logic, looping, etc. are assumed.

More advanced developers can use the GX Developer API to develop advanced applications in most common programming languages such as C, C# or Python.  GX Developer includes interfaces for a number of these languages.  To extend Oasis montaj see Part 2: Extending Oasis montaj, and to access the GX API functions from external programs see Part 3: Stand-Alone Programs.

Additional Information

The GX Programming Language is a subset of the C Programming Language. This document does not deal with the C language in detail and you may wish to refer to a C language programming guide, such as:

Kernighan, B.W. and Ritchie, D. M., 1988. The C Programming Language, PTR Prentice Hall, Englewood Cliffs, N.J., U.S.A.

or  http://www.tutorialspoint.com/cprogramming/c_quick_guide.htm

We recommend that you refer to the sample Source code shipped with the GX Developer. It will provide you with a wealth of information about how to program GXs and use the GX Programming Language. The GX Developer compiled help file documents all classes and methods. This help system is produced from our Header (.GXH) files but contains the definitive documentation.

Geosoft GX Developer 8.5