Sektion: SourceTemplate
Die Untersektionen von SourceTemplate
definieren Funktionsbausteine, die mit in das Projekt kopiert werden.
Im Moduleditor werden die hier definierten Funktionsbausteine aufgelistet. Dort können Sie das Kopieren aktivieren oder deaktivieren.
SEC std.SourceTemplate SEC SourceFB : <Identifier> // optional: no SourceType := <FunctionBlock>; // optional: no, type: InstancePath Variable := <variable name>; // optional: no, type: InstancePath Default := TRUE/FALSE; // optional: yes, type: Bool Flag IsMandatory := TRUE/FALSE; // optional: yes, type: Bool Flag FBVariable := <variable name>; // optional: yes, type: InstancePath DestinationType := <default name>; // optional: yes, Type: String/Literal END_SEC END_SEC
Details über die Syntax der Definitionstypen sind im Kapitel Syntax der Moduldeklaration beschrieben.
Der
Identifier
dient der Zuordnung im Editor und der Namensgebung, falls inDestinationType
nichts angegeben ist.In
SourceType
wird der Funktionsbaustein spezifiziert, der kopiert werden soll.Variable
muss eine Input-Variable des Modul-FBs darstellen. Sie muss entweder ein Zeiger auf eine Basisklasse des kopierten Funktionsbausteins oder ein Interface darstellen, das der kopierte Funktionsbausteins implementiert.Über
Default
wird angegeben, ob der Funktionsbaustein standardmäßig für dieses Modul kopiert wird. Fehlt dieser Eintrag, so istTRUE
der Standardwert. Diese Option kann im Modulinstanz-Editor angepasst werden.Wenn
IsMandatory
aufTRUE
gesetzt ist, kann der Projektierer die OptionIsToCopy
im Editor nicht ändern.Mit
FBVariable
wird eine Input-Variable des kopierten Funktionsbaustein angegeben, die mit der Moduleinstanz gefüllt wird. Deren Typ kann ein Zeiger auf einen Basistyp des Modul-FBs oder ein Zeiger auf Interface des Modul-FBs sein.In
DestinationType
wird ein Standardname für den kopierten Funktionsbaustein angegeben. Wenn diese Definition fehlt, so gilt folgende Namenskonvention:<Name der Modulinstanz>_<Identifier>[_<fortlaufendeNummer>]
.
Die angegebenen SourceTemplates werden in den Ordner AC_SourceTemplate
kopiert und vom zugehörigen Modul-FB instantiiert und initialisiert. Einmal erzeugte SourceTemplates können editiert werden und werden bei erneuten Generierungsläufen nicht überschrieben. Nicht mehr verwendete SourceTemplates werden umbenannt (anhängen von <_unused
>) und in den Unterordner <UnusedSourceTemplates>
verschoben.
SEC std.SourceTemplate SEC SourceFB : ID_ConnectSwitches SourceType := ConnectSwitches; Variable := itfConnect; FBVariable := pBuilding; Default := TRUE; IsMandatory := FALSE; DestinationType := 'TypeInModuleDescription'; END_SEC END_SEC