The predefined types are defined in the PredefinedTypesC package (the PredefinedTypesC.sbs file in the Share\Properties directory).
Predefined types include:
RiCBoolean is a Boolean data type defined in the framework (in RiCTypes.h) as follows:
typedef unsigned char RiCBoolean;
RiCString is a string data type that is defined in the framework (in RiCString.h) as follows:
typedef struct RiCString {
unsigned int size; /* The current allocated size */
unsigned int count; /* The number of characters in
the string (without \0) */
char * string; /* the string */
} RiCString;
The RiCString type has a number of operations for creating, destroying, and manipulating strings.
OMString is a string data type that is defined in the Rational Rhapsody Developer for C++ framework (in omstring.h). The OMString type provides compatibility with models created in IBM Rational Rhapsody Developer for C++.
User‑defined data types include data types that can be either enumerations or compositions of primitive data types, such as arrays, structures, or unions.
Types are generated in the specification file for the package. For example, a type myType could have the following declaration:
typedef char * myType
This type definition is generated verbatim in the package specification file, after the forward declarations of objects and object types:
typedef char * myType;
A semicolon is automatically appended to the line, so you do not have to include it in the declaration.
You can control the order in which types are generated in code using the Edit Type Order feature of the package.