stepcode/doc/man/man1/exp2cxx.1
Cliff Yapp 95d245f22e Whoops - rename man page.
git-svn-id: svn://svn.code.sf.net/p/brlcad/code/brlcad/trunk@57349 2f96ce8b-6d43-0410-b8df-bffccc660ffb
2013-09-01 16:54:03 -04:00

164 lines
4.7 KiB
Groff

.\" This manual was prepared by United States Government employees as a
.\" part of their official duties and is, therefore, a work of the U.S.
.\" Government and not subject to copyright.
.\"
.\" $Id: exp2cxx.1,v 2.1.0.2 1998/02/27 23:54:30 sauderd Exp $
.TH FEDEX_PLUS 1 "19 November 1997"
.SH NAME
exp2cxx - EXPRESS compiler and translater
.SH SYNOPSIS
exp2cxx [ options ] [ express-file ]
.nf
Command Arguments:
options - see OPTIONS below
express-file - the name of an EXPRESS file
.fi
.SH DESCRIPTION
.LP
exp2cxx is based on the NIST EXPRESS compiler fedex. exp2cxx
translates an EXPRESS file into C++ code and a class library. The C++
library includes classes for representing all the types and entities
in the input EXPRESS file, and a dictionary for describing those
classes. The translation depends on base classes provided in the NIST
STEP Class Library.
exp2cxx does not create C++ representations of the rules,
procedures, or any EXPRESS constructs other than schemas, types and
entities. It supports multiple schemas contained in a single file and
complex entities. It generates code which can be integrated with
orbix and ObjectStore.
Combined with the NIST STEP Class Library, the translator provides a
"C++ working form" of an EXPRESS schema. exp2cxx was designed for
use together with a graphical data editing system (see dataprobe(1)),
but care has been taken to keep exp2cxx separate so that it can be
used as a component of other software systems.
The exp2cxx compiler makes two passes through the EXPRESS file. In
the first pass exp2cxx reads the syntax of the EXPRESS file and
detects any errors. In the second pass exp2cxx converts the
EXPRESS code into C++ source code. The C++ source code is generated
in files in the directory in which exp2cxx was run. The files are
named according to the schema names in the input EXPRESS file.
.SH OPTIONS
.TP
.B -s|S
Tells exp2cxx to use only single-inheritance, rather than multiple
inheritance.
.TP
.B -c|C
Generates C++ classes for use with CORBA (Orbix).
.TP
.B -l|L
Prints logging code in the generated C++ classes.
.TP
.B -v
Produces a version description.
.TP
.B -d
Turns on debugging ("-d 0" describes this further).
.TP
.B -p<object>
Turns on printing when processing certain objects, where <object>
may be,
- e entity
- p procedure
- r rule
- f function
- t type
- s schema or file
- # pass #
- E everything (all of the above)
.TP
.B -w<warning>
enable warning
.TP
.B -i<warning>
disable warning, where <warning> may be,
- none
- all
- circular_subtype
- circular_select
- entity_as_type
- downcast
- unknown_subtype
.PD
.RE
If no arguments are given in the command line, a list and description
of the options available are sent to stdout.
.SH OUTPUT
exp2cxx sends the following to stdout subject to the options
specified when executed:
- a statement indicating that the Express schema is being
compiled
- If errors in input encountered, a detailed list of errors
and/or warnings including
- filename
- line number
- description of error/warning
- If no errors encountered,
- a statement indicating that there were no errors
in input
- a statement indicating that the C++ source code
is being generated
- any warnings/errors detected while converting to
C++
.fi
.SH SEE ALSO
.LP
fedex(1)
.LP
dataprobe(1)
.LP
mkProbe(1)
.LP
ISO 10303-11:1994
.I
\Industrial Automation Systems and Integration -- Product Data \
Representation and Exchange -- Part 11: Description Methods: The \
EXPRESS Language Reference Manual.
.LP
.I
\The NIST EXPRESS Toolkit - Design and Implementation, \
Engineering Data Management: Key to Success in a Global Market, \
Proc. of the 1993 ASME Intl. Computers in Engineering Conference,
August 8-12, 1993, San Diego, pp. 167-180.
.LP
.I
\Validation Testing System: Reusable Software Component Design, NISTIR 4937, Morris, K.C., Sauderd, D., Ressler, S., October 1992.
.LP
.I
\Architecture for the Validation Testing System Software, NISTIR 4742, Morris, K.C., January 1992.
.LP
.I
\The NIST EXPRESS Toolkit: Using Applications, NISTIR 5206, Libes, D., June 1993.
.LP
.I
\Fed-X: The NIST EXPRESS Translator, NISTIR 4822, Libes, D., April 1992.
.SH NOTE
.LP
All NISTIR documents may be obtained through the National Technical
Information Service (NTIS), Springfield VA 22161, USA. Postscript
files may be obtained from the STEP Class Library web page
(http://www.nist.gov/scl), the Manufacturing Systems Integration
Division publications page
(http://www.mel.nist.gov/msidlibrary/pubs.htm) or by anonymous ftp
from ftp.cme.nist.gov (see
pub/subject/sc4/national/usa/nist/docs/readme.txt to determine the
appropriate file to download).
.SH BUGS
See fedex(1).