mbuilder - The IRIS Explorer Module Builder
mbuilder [ file ]
The IRIS Explorer Module Builder (mbuilder) is a utility that helps programmers transform functions and subroutines in C, C++ and Fortran into IRIS Explorer modules. mbuilder also includes an interface builder that is used to assemble Motif-based widgets into control panels used by the Map Editor.
If the file argument to mbuilder is specified, it must be an IRIS Explorer module resource file. These files have a .mres extension; though the extension need not be added to the file name on the command line.
mbuilder accepts a description of a function or subroutine (known as the computational function) and a description of how the the computational function interfaces to the rest of IRIS Explorer. The external interface for the computational function is provided by creating a set of input and output ports and by specifying associations between these ports and arguments to the computational function.
With these descriptions, mbuilder generates a module resource file, wrapper code, and a Makefile necessary to build the computational function as an IRIS Explorer module.
In addition to integrating code into the IRIS Explorer environment, the Module Builder can change a module's appearance by editing the layout of the module's control panel.
mbuilder is a tool with a graphical user interface. Information about the module being created or edited is entered through a number of windows.
The main display window is shown when the Module Builder is started. The main window is used to specify the name of the module and the file that contains the user's code. Other information that mbuilder uses to compile and link the user's software may also be specified in the main window (see the IRIS Explorer Module Writers' Guide for details). The creation of collaborative modules is described in the IRIS Explorer Collaborative User Guide.
Using selections from the main window's menu bar, the user can open module resource files for editing, save the current resource, compile user code into a working IRIS Explorer module and install the module into a standard location. By default, modules are installed into the directory $EXPLORERUSERHOME/modules. If the environment variable EXPLORERUSERHOME is not set, modules are installed into $EXPLORERHOME/modules. If neither environment variable is set, modules are installed into /usr/explorer/modules.
The right hand side of the mbuilder main window contains a set of buttons that activate the other windows in the Module Builder. Brief discussions of these secondary windows are given below.
With the ``Input Ports'' display, the user enters the names and data types of the input ports for the module under construction. The ``Output Ports'' display operates similarly.
In the ``Function Args'' display, the user specifies the names and types of the arguments in the calling sequence of the computational function. The user also specifies the language in which his or her code is written and the name of the function or subroutine.
In the ``Connections'' display, the user specifies how data from input ports is supplied to the arguments of the computational function. The user also specifies how data generated by the computational function is supplied to module output ports.
Selecting ``Control Panels'' in the main display brings up the control panel editor (CPE). The control panel editor is used to specify the type location and attributes of widgets that will appear in the user's module control panel.
The Module Builder allows the user to specify a maximum of 45 input ports, 45 output ports, and 45 function arguments.
Port names entered into either the Input Ports window or the Output Ports window must be unique and must begin with an alphabetic character. The same holds for arguments in the Function Args window. Additionally, the names of function arguments must be legal in the language specified in the Function Args window.
$EXPLORERHOME/bin/mbuilder $XUSERFILESEARCHPATH/mbuilder $EXPLORERHOME/lib/std.mres
Release 1 and 2 produced by the IRIS Explorer Development Group, Silicon Graphics, Inc. 1991-1994. Subsequent releases produced by The Numerical Algorithms Group Ltd. 1995, 1996, 1997, 1998, 1999, 2000, 2001.