The mapping of basic types is defined through the [Datatype Mappings] section of the Cppgen.ini file, which resides in the 'PTC Integrity Modeler\Modeler\System\CppGen' folder. If you create a basic type in the Model, you may have to map it to a C++ type in the Cppgen.ini file:
• If the Basic Type name does not contain spaces and its case is as you want it generated, you do not have to map the Basic Type to a C++ type.
• If the Basic Type name needs to be generated as a different type, you must map the Basic Type to a C++ type. For example, String=char*.
• If the Basic Type name contains spaces, you must map the Basic Type to a C++ type. You can map a Basic Type name to itself, for example, unsigned long=unsigned long. Failure to do so results in spaces being generated as underscores. If you then reverse engineer the code, the data type will be changed to an uninterpreted data type in the Model that contains underscores instead of spaces.
• If the Basic Type name has the wrong case, you must map the Basic Type to a C++ type with the correct case specified. For example, Short=short.
Cppgen.ini is installed with the following data type mappings defined (the Basic Type name to the left of the equals sign is not case sensitive, the C++ name to the right of the equals sign is case sensitive):
• any=void*
• Boolean=bool
• Char=char
• Date=char*
• Double=double
• Float=float
• Int=int
• Integer=int
• long double=long double
• long int=long int
• long long int=long long int
• long long=long long
• Long=long
• octet=int
• short int=short int
• Short=short
• signed char=signed char
• signed int=signed int
• signed long int=signed long int
• signed long long int=signed long long int
• signed long long=signed long long
• signed long=signed long
• signed short int=signed short int
• signed short=signed short
• String=char*
• unsigned __int64=unsigned __int64
• unsigned char=unsigned char
• unsigned int=unsigned int
• unsigned long int=unsigned long int
• unsigned long long int=unsigned long long int
• unsigned long long=unsigned long long
• unsigned long=unsigned long
• unsigned short int=unsigned short int
• unsigned short=unsigned short
• void=void
If a data type is not defined, ACS uses the default specified in the [Datatype Default] section of the Cppgen.ini file.