The auxiliary window and C# Developer

 

The "C#" tab of the auxiliary window on a package

 

Figure 2 - The "C#" tab of the auxiliary window on a package

Key:

1.      This field is used to indicate that the annotated package is the root generation node for your project

 

 

The "C#" tab of the auxiliary window on a class

 

Figure 3 - The "C#" tab of the auxiliary window on a class

Key:

1.      The "Main class" tickbox is used to define the current class as being the main class of the application.  When this tickbox is checked, a "public static void main (String[] argv)" is added to the class.  The contents of the operation can then be defined.

2.      The "Visibility" field is used to select the visibility of the class.  The choice depends on the context of the class.  If the class is located within a package, the choice of visibility is as follows: default, public and internal (only these visibilities are available in C#).  If the class is embedded, all visibility types are available: default, public, protected, internal, protected internal, private).

3.      The "Class type" field is used to indicate the type of the class ("Interface", "Delegate container", "CsAttribute", "CsIndexer").

4.      The "Invariant" field is used to specify invariants for the selected class.  The expression entered in this field must be a boolean expression.  Invariants are generated automatically if the "Generate invariants" parameter has been activated.

5.      The "Abstract" tickbox indicates that the class is abstract.

6.      The "Struct" tickbox indicates that the class is a structure.

7.      The "Sealed" tickbox indicates that the class cannot be specialized.

8.      The "Summary" field is used to enter a C# summary-type comment for the selected class.  Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

9.      The "Remarks" field is used to enter a C# remark-type comment for the selected class. Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

 

Note:      When the selected visibility is "default", no visibility is generated for the class. The C# language has its own default values for class visibilities.

 

 

The "C#" tab of the auxiliary window on an operation

 

Figure 4 - The "C#" tab of the auxiliary window on an operation

Key:

1.      The "Visibility" field is used to select the visibility of the operation (default, public, protected, internal, protected internal or private).  When the selected visibility is "default", no visibility is generated for the operation.  The C# language has its own default values for operation visibilities

2.      The "Operation type" radio buttons are used to indicate the operation type:

·         "None": This means that the operation has no special type.

·         "constructor": This means that the operation is a constructor of the class. Objecteering C# Developer ignores the modeling name of the operation and uses the name of the class to generate the constructor.

·         "destroy": This means that the operation is a destructor of the class.

·         "delegate": This means that the operation is a C# delegate.

·         "operator": This means that the operation is a C# operator.

3.      The "Static" tickbox indicates that the operation is a "class" operation, in other words, it is shared by all its instances.

4.      The "Override" tickbox is used to generate the "override" keyword, which indicates that it overloads an operation of the parent class.

5.      The "Sealed" tickbox specifies that the operation cannot be specialized.

6.      The "Virtual" tickbox specifies that the operation is virtual.

7.      The "Abstract" tickbox indicates that the operation is abstract.

8.      The "Unsafe" tickbox is used to generate the "unsafe" keyword to the operation.  This keyword must be generated if the operation uses pointers.

9.      The "Cs code" field is used to enter or modify the C# code of the operation.

10.  The "Cs return" field is used to enter or modify the C# return code of the operation.

11.  The "Pre-condition" field is used to specify a constraint which is checked at the start of the execution of the operation.  This field must contain a boolean expression.

12.  The "Post-condition" field is used to specify a constraint which is checked at the end of the execution of the operation.  This field must contain a boolean expression..

13.  The "Summary" field is used to enter a C# summary-type comment for the selected operation.  Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

14.  The "Remarks" field is used to enter a C# remark-type comment for the selected operation. Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

 

Note:      The code of the pre-condition and post-condition constraints is automatically generated in the source code if the "Generating pre/post-conditions" parameter is active.

 

 

The "C#" tab of the auxiliary window on an attribute

 

Figure 5 - The "C#" tab of the auxiliary window on an attribute

Key:

1.      The "Visibility" field is used to select the attribute’s visibility (default, public, protected, internal, protected internal or private).

2.      The "Attribute type" field is used to indicate the attribute's C# type.  Possible C# types are string, int, long, bool, char, float, decimal, double, short, unsigned short, byte, unsigned int, unsigned long, signed byte.  If "default" is chosen, the type generated will be "object".

3.      The "Access mode" radio buttons are used to indicate the attribute's access mode.  If the "Generate properties" parameter is active, the access mode is used to manage the properties generated for the attribute in question.  The following table details the different possible cases:

 

Access mode

Generation

No access

No properties are generated.

Read

The "get" property is generated.

Write

The "set" property is generated.

ReadWrite

The "get" and "set" properties are generated.

 

4.      The "Collection" field is used to select the collection which will be generated where the multiplicity of the attribute is greater than 1.

5.      The "Multiplicity" field indicates the attribute's multiplicity.

6.      The "Iterator" field indicates whether or not the class implements the "GetEnumerator" method.

7.      The "Initial value" field indicates the attribute's initial value.

8.      The "Static" tickbox indicates that the attribute is static, in other words, that it is shared by all the instances of the class.

9.      The "Sealed" tickbox means that the attribute cannot be redefined.

10.  The "Const" tickbox is used to define an attribute as being const.  If this tickbox is checked, an initial value must be defined in the "Summary" field.

11.  The "ReadOnly" tickbox is used to generate the "readonly" keyword.  The initialization of the attribute is carried out in the constructor, or with the "Multiplicity" field.

12.  The "Summary" field is used to enter a C# summary-type comment for the selected attribute.  Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

13.  The "Remarks" field is used to enter a C# remark-type comment for the selected attribute. Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

 

Note:      A default C# type is assigned to each UML base type (such as real or integer), to which several default C# types are associated: float for real, integer for Integer, and so on.  When the attribute is of base type, additional explicit tick boxes are available to indicate the corresponding C# type of the attribute, when the specified C# type is not the default one.

 

 

The "C#" tab of the auxiliary window on an association

 

Figure 6 - The "C#" tab of the auxiliary window on an association

Key:

1.      The "Visibility" radio buttons are used to select the visibility of the association (default, public, protected, internal, protected internal or private).

2.      The "Access mode" radio buttons are used to specify the access mode of the association. If the "Generate properties" parameter is active, the access mode is used to manage the properties generated for the association in question.  The following table details the different possible cases:

 

Access mode

Generation

No access

No properties are generated.

Read

The "get" property is generated.

Write

The "set" property is generated.

ReadWrite

The "get" and "set" properties are generated.

 

3.      The "Collection" field is used to select the collection which will be generated where the multiplicity of the association is greater than 1.

4.      The "Min" field is used to enter the association's minimum multiplicity.

5.      The "Max" field is used to enter the association's maximum multiplicity.

6.      The "Iterator" field indicates whether or not the class implements the "GetEnumerator" method.

7.      The "Initial value" field is used to define the initial value of the selected association.

8.      The "Static" tickbox indicates that the association is static, in other words, that it is shared by all the instances of the class.

9.      The "Sealed" tickbox means that the association cannot be redefined.

10.  The "Volatile" tickbox generates the "volatile" keyword.

11.  The "Const" tickbox is used to define an association as being const.  If this tickbox is checked, an initial value must be defined in the "Summary" field.

12.  The "ReadOnly" tickbox is used to generate the "readonly" keyword.  The initialization of the association is carried out in the constructor, or with the "Multiplicity" field.

13.  The "New" tickbox is used to generate the "new" keyword.

14.  The "Summary" field is used to enter a C# summary-type comment for the selected association.  Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

15.  The "Remarks" field is used to enter a C# remark-type comment for the selected association. Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.

 

 

The "C#" tab of the auxiliary window on a parameter

 

Figure 7 - The "C#" tab of the auxiliary window on a parameter

Key:

1.      The "Variant parameters" tick box is used to indicate that the parameter is a variant parameter.

2.      The "Parameter type" field is used to indicate the parameter's C# type.  Possible C# types are string, int, long, bool, char, float, decimal, double, short, unsigned short, byte, unsigned int, unsigned long, signed byte.

3.      The "Collection" field is used to select the collection which will be generated where the multiplicity of the parameter is greater than 1.

4.      The "Multiplicity" field is used to define the multiplicity of the parameter.

5.      The "Param" field is used to enter a C# param-type comment for the selected parameter.  Only the comment itself has to be entered, as C# markers are automatically added to the generated code by Objecteering C# Developer.