ST-Developer Tools
ST-Developer is a set of software tools to build tools, translators and databases for STEP Product Models, Industry Foundation Classes (IFC), Cimsteel (CIS/2), or other EXPRESS-defined models. It contains programming bindings for C++, C, and Java, plus tools for testing data sets against verification rules and constraints, browsing through the contents of your data sets, building information models, and more.
This manual describes the executable tools included with ST-Developer. Consult the ROSE Library Reference Manual, SDAI C Library Reference Manual and ST-Developer Java Library Reference Manual for more information on the ST-Developer programming language bindings.
This manual is divided into the following sections:
- Part One: EXPRESS Tools -- Produce C++ definitions from EXPRESS information models, then use these classes with the ROSE library to build application software or object-oriented databases.
- Part Two: EXPRESS-G Tools-- Construct EXPRESS-G diagrams from any EXPRESS information model, such as those in STEP, display, rearrange, and print them using a graphical editor.
- Part Three: Conformance and Editing Tools -- Check STEP data sets for adherence to the STEP Application Protocols using these tools. These systematically evaluate EXPRESS constraints and derived attributes to verify that a data set is correct.
- Part Four: Data Management and Development Tools -- Manage and extend C++ class files, create makefiles, and perform other software development tasks.
Each section describes the command line and GUI tools, with examples, screen shots, and a complete listing of all options.
ST-Developer for Windows includes command-line and GUI versions of each tool described in this manual. It also includes the ST-Developer Launcher, a quick starting point for running tools. It is available on the Start menu and has icons for each tool, as well as a link to the ST-Developer online manuals. A shortcut to each tool is also available in the "ST-Developer Tools" folder on the Start Menu.
You can drag and drop files into the Windows dialogs or onto the icons in the ST-Developer Launcher, each one keeps a list or recently used files, and you can cut and paste, save or print the messages printed by the tools.

ST-Developer Launcher
Font Conventions
Within the body of a paragraph, tools, functions, keywords, and filenames are denoted with bold font, such as librose.a or /usr/local/bin. Function names are shown with trailing parenthesis, such as findDomain() or name(). When referring to a C++ member function, the C++ scope notation is used, such as RoseDesign::save() or RoseObject::domain().
We describe environment variable settings using either UNIX convention ($VAR) or the DOS/Windows convention (%VAR%)
Arguments for command-line tools are shown in a fixed-width font as below. The tool name is shown in bold. Optional arguments are shown in square brackets. An ellipsis ( . . . ) indicates that an argument can be repeated as needed.
expfront [options] expfile1 [expfile2 ...]
Function prototypes are listed with each parameter on a separate line and the function name set off in bold as shown below. Optional parameters are listed in standard C++ notation showing the default value.
RoseAggregate * findObjects( RoseAggregate * list_to_fill, RoseDesign* design = <Current> );
Occasionally, functions must be described in a parameterized manner, with angle brackets indicating the parameterized portion of the function definition. For example, the following prototype is used for the RoseObject getInteger(), getString(), getObject(), etc. functions:
<type_ref> get<name> ( RoseAttribute * att );
Programming examples are shown in a separate paragraph, in a fixed-width font:
/* Create a point using the default constructor * and use the update methods to set its values. */ Point * point1 = pnew Point; point1->x (1.0); point1->y (0.0); /* Create points using a different constructor, * that fills in the values in one step. */ Point * point2 = pnew Point (2.5, 4.0); Point * point3 = pnew Point (5.0, 0.0);
Sample terminal sessions are shown in the same format, and the command prompt is indicated with a percent sign (%).
% expfront -classes geometry_schema.exp % cd classes % mkmakefile geometry % make
References
The ISO STEP standards documents are the ultimate reference for the EXPRESS language and the application protocols. These documents should be available from your national standards body or directly from ISO.
The following publications may be of interest to readers looking for additional information on the STEP standard, or the EXPRESS information modeling language:
- J. Owen, STEP: An Introduction, Information Geometers (47 Stockers Avenue, Winchester SO22 5LB, United Kingdom), 1993.
- D. Schenck and P. Wilson, Information Modeling the EXPRESS Way, Oxford University Press, New York, 1994.
If you have questions regarding the installation or use of ST-Developer or any other STEP Tools product, please contact us via electronic mail at support@steptools.com
In addition, you may wish to visit the STEP Tools Web Site at: http://www.steptools.com/. This site has support files, tutorials, demos, sources for various documents, and other helpful material.