The transformation generates in header files the code for UML template classes, and method bodies for template classes.
The transformation generates a C++ enum for each UML enumeration that you specify in the source of the transformation configuration. If necessary, the transformation assigns a unique name that conforms to C++ rules; otherwise, the generated C++ enumeration has the same name as the UML enumeration. The transformation transforms UML enumeration literals into C++ enumeration literals.
The transformation transforms UML interfaces into C++ classes. UML operations in the interface are transformed into pure virtual C++ methods.
The transformation does not generate a separate header and body file for nested elements. Instead, the transformation adds information about the nested elements to the header and body file of the class that contains the nested elements.