Introduction to reverse modes

The Modelio Cxx Reverser reverse tool provides three reverse modes, each of which corresponds to a specific result in the produced project.

The "Simple structure" reverse mode

The "Simple structure" reverse mode is used to reverse only the packages and classes of the application.

This level makes it possible to use the reversed classes so as to:

  • define attribute types

  • define association types

  • create specialization, implementation or use links from the classes to be reversed to the classes used.

This reverse mode is the fastest.

The "Complete structure" reverse mode

The "Complete structure" reverse mode makes it possible to reverse not only the same elements as the "Simple structure" mode, but also all the attributes, operations and associations of the reversed classes.  However, operation contents and initializations (and code) are not reversed.

Reversed classes provide the same possibilities as with the "Simple structure" mode, but in this mode, it is also possible to:

  • visualize the reversed classes' operations

  • visualize attributes and associations

  • overload the operations reversed into the project

The "Complete" reverse mode

The "Complete" reverse mode is used to reverse the application completely, including operation source code and attribute initialization.

This reverse mode creates a project from an application developed outside Modelio Cxx Reverser, and allows you to continue its development within Modelio UML Modeler, thereby taking advantage of Modelio Cxx Reverser generation.

Reversing comments

For all three reverse modes, if there exist comments describing the application’s elements, these are also reversed.

For example, a comment on a class will be reversed into the project from "Simple structure" level upwards, whereas operation comments will only be reversed when the "Complete" reverse mode is used.

The following table details the elements reversed into the project at each level.

Simple structure

Complete structure

Complete

Packages

X

X

X

Classes

X

X

X

Comments

X

X

X

Attributes

X

X

Attribute comments

X

X

Attribute initializations

X

Associations

X

X

Association comments

X

X

Association initializations

X

Operations

X

X

Operation comments

X

X

Operation code

X

Note: "X" indicates that the element is retrieved during the reverse operation.