Setting up interfaces for generating C code (C code)
In addition to the standard Interface properties in Modeler, you can apply the «C Class» stereotype to an Interface, and then use its Tag Definitions to define C specific information.
1. If you have not done so already, add the C Profile package to your Model.
How?
2. Set the standard properties of the Interface as required.
Tell me more...
3. If you want to generate a Model's or Package's Interfaces in a specific order, order the Interfaces as required.
Tell me more...
4. Apply the «C Class» stereotype to the Interface.
For information about applying Stereotypes to an item, see
![](../../Integrity_Modeler/images/btn_mini_294.gif)
5. Open the Interface's Property Pages, and then click the C Class tab
For information about setting the tagged value of a Tag Definition, see
![](../../Integrity_Modeler/images/btn_mini_294.gif)
6. If you want to specify a header file comment, type the text as the tagged value of the C Header File Comment tag definition.
7. If you want to specify header file #includes to files not modeled in Modeler, type the #includes text as the tagged value of the C Header Include tag definition.
| You model #includes to files modeled in Modeler through Dependencies. |
8. If you want the Interface to be generated inline when used as a type, set the tagged value of the C Anonymous Item tag definition to TRUE.
9. .If the Interface is scoped to a Class and you want to specify that the Interface is a non-member, that is, the Interface is not a member of the owning item but you want it to appear in the owning item's Header file, set the tagged value of the C Non Member tag definition to TRUE.
10. If you want to specify forward declarations to structs, unions or enums, reference those Classes, Data Types, Interfaces or Type Definitions through the C Forward Declarationstag definition. If you want to specify forward declarations to items not modeled in the Model, type the text of the forward declarations as the tagged value of the C Forward Declaration Text.
11. If the Interface owns a State Diagram and you do not want to generate state machine code to implement that State Diagram, set the tagged value of the C Generate State Machine tag definition to FALSE.