<
From version < 34.1 >
edited by aas2
on 2015/10/28 15:28
To version < 36.1 >
edited by aas2
on 2016/02/15 16:32
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -78,12 +78,13 @@
78 78  
79 79  An environment consists of
80 80  
81 -1. a unique **name**, that does not contain a comma
81 +1. a unique **name**, which may not contain a comma
82 82  1. a **related project wizard**
83 83  1. information about a **main file** for the project
84 84  1. information about the **target code** KiCo should produce
85 85  1. information for **wrapper code generation**
86 -1. a list of **shell commands** which should be run as part of a project launch
86 +1. a list of **shell commands**, which should be run as part of a project launch
87 +1. an **associated launch shortcut**, which is used on the compiled main file
87 87  
88 88  Besides the name, all of these are optional, but can improve the workflow.
89 89  
... ... @@ -127,12 +127,16 @@
127 127  
128 128  Explicit annotations have the form **{{code language="none"}}@Wrapper SnippetName, arg1, arg2, ..., argN{{/code}}**. An explicit wrapper annotation raises an error if the snippet does not exist, thus it is **recommened** to use the explicit **@Wrapper** annotation. Every other annotation is tried as wrapper code annotation as well, but will be ignored, if no such snippet could be found. Thus you can write the above explicit annotation as **@SnippetName arg1, arg2, ..., argN**{{code language="none"}}{{/code}}, but there will be no error if the snippet with this name does not exist or could not be found, for example because of a typo.
129 129  
131 +**//Note~://** Annotation **names** and parameters are **case sensitive**. That means that //Clock, clock, Floodlight, FloodLight// are all different annotations.
132 +
130 130  [[image:attach:wrapper_code_generation_scheme.png]]
131 131  
132 132  In the **template file** one can use special **placeholders**.
133 133  
134 -**${model_name}** will be replaced with the name of the model.
137 +**${file_name}** is replaced with the name withouth extension of the file that is generated (e.g. //Main.java// will be //Main//).
135 135  
139 +**${model_name}** is replaced with the name of the last compiled model.
140 +
136 136  **${declarations}** and** ${decls}** will be replaced with additional declarations of variables and functions (<@decl>...</@decl> of a snippet definition). Declarations should occur before the tick loop of the model file. In general they are not required for Java code but may be useful in C applications (e.g. for //extern// calls).
137 137  
138 138  **${initializations}** and **${inits}** will be replaced with initialization code for components (<@init>...</@init> of a snippet definition). Initialization should occur before the tick loop of the model file.
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -13763282
1 +16810568
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/13763282/Project Creation, Initialization and Launch (Prom)
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/16810568/Project Creation, Initialization and Launch (Prom)