Section : MacroModule
Cette section décrit les paramètres du MacroModule. La section est créée automatiquement lorsque vous générez un module de macro. Comme alternative, vous pouvez insérer manuellement la section dans une déclaration de module ou modifier une section générée automatiquement.
SEC MacroModule //optional: yes, modifier: None
SEC Rootmodule : <identifier> //optional: no, modifier: None
SEC MacroParameter : <identifier> //optional: yes, modifier: None
Local_ParameterID := <parameter ID>; //optional: no, type: ID
New_Name := <parameter name>; //optional: no, type: text
New_Desc := <parameter description>; //optional: no, type: text
END_SEC
SEC MacroIO : <identifier> //optional: yes, modifier: None
Local_IOID := <IO ID>; //optional: no, type: ID
New_Name := <IO name>; //optional: yes, type: text
New_Desc := <IO description>; //optional: yes, type: text
END_SEC
SEC MacroSlot : <identifier> //optional: yes, modifier: None
Local_SlotID := <slot ID>; //optional: no, type: ID
New_Role := <role name>; //optional: yes, type: text
END_SEC
SEC Default_Allocation //optional: no, modifier: None
Module_Name := <module name>; //optional: no, type: QID
SEC VisuEmbeddings //optional: yes, modifier: None
Empty := TRUE/FALSE; //optional: yes, type: BoolFlag
SEC Embedding : <identifier> //optional: yes, modifier: None
VisuName := <visu ID>; //optional: no, type: ID
ProxyVisuName := <proxy visu ID>; //optional: no, type: ID
Target := <target ID>; //optional: yes, type: ID
LinkId := <linke ID>; //optional: yes, type: ID
END_SEC
END_SEC
SEC PageVisu //optional: yes, modifier: None
VisuName := <visu ID>; //optional: yes, type: ID
TopLevelTab := <top level tab>; //optional: yes, type: ID/Bool
END_SEC
SEC IOMappings : <identifier> //optional: no, modifier: None
SEC Mapping : <identifier> //optional: yes, modifier: None
NoMapping := TRUE/FALSE; //optional: yes, type: BoolFlag
STExpression := <ST expression>; //optional: yes, type: ID/ST expression
ModuleConnection := <module connection>; //optional: yes, type: ID/ST expression
END_SEC
END_SEC
SEC Parameters : <identifier> //optional: yes, modifier: None
SEC Param : <identifier> //optional: yes, modifier: None
Value := <value ID>; //optional: no, type: ID
END_SEC
END_SEC
END_SEC
END_SEC
SEC Submodule : <identifier> //optional: yes, modifier: None
Parent_Instance := <instance ID>; //optional: no, type: ID
Parent_Slot := <slot ID>; //optional: no, type: ID
SEC MacroParameter : <identifier> //optional: yes, modifier: None
Local_ParameterID := <parameter ID>; //optional: no, type: ID
New_Name := <parameter name>; //optional: yes, type: text
New_Desc := <parameter description>; //optional: yes, type: text
END_SEC
SEC MacroIO : <identifier> //optional: yes, modifier: None
Local_IOID := <IO Id>; //optional: no, type: ID
New_Name := <IO name>; //optional: yes, type: text
New_Desc := <IO description>; //optional: yes, type: text
END_SEC
SEC MacroSlot : <identifier> //optional: yes, modifier: None
Local_SlotID := <slot ID>; //optional: no, type: ID
New_Role := <role name>; //optional: yes, type: text
END_SEC
SEC Default_Allocation //optional: no, modifier: None
Module_Name := <module name>; //optional: no, type: QID
Instance_Name := <instance name>; //optional: no, type: ID
SEC VisuEmbeddings //optional: no, modifier: None
Empty := TRUE/FALSE; //optional: yes, type: BoolFlag
SEC Embedding : <identifier> //optional: yes, modifier: None
VisuName := <visu ID> //optional: no, type: ID
ProxyVisuName := <proxy visu ID> //optional: no, type: ID
Target := <target ID>; //optional: yes, type: ID
LinkId := <link ID>; //optional: yes, type: ID
END_SEC
END_SEC
SEC PageVisu //optional: yes, modifier: None
VisuName := <visu ID>; //optional: yes, type: ID
TopLevelTap := <top level tab>; //optional: yes, type: ID/Bool
END_SEC
SEC IOMappings : <identifier> //optional: yes, modifier: None
SEC Mapping : <identifier> //optional: yes, modifier: None
NoMapping := TRUE/FALSE //optional: yes, type: BoolFlag
STExpression := <ST expression> //optional: yes, type: ID/ST expression
ModuleConnection := <module connection> //optional: yes, type: ID/ST expression
END_SEC
END_SEC
SEC Parameters //optional: yes, modifier: None
SEC Param : <identifier> //optional: yes, modifier: None
Value := <value>; //optional: no, type: ID
END_SEC
END_SEC
END_SEC
END_SEC
SEC Reference : <identifier> //optional: yes, modifier: None
Parent_Instance := <instance ID>; //optional: no, type: ID
Parent_Slot := <slot ID>; //optional: no, type: ID
Referenced_Instance := <instance ID>; //optional: no, type: ID
END_SEC
END_SECLes détails concernant la syntaxe des types de définition sont décrits dans la section Déclaration des modules.
MacroModule: Si cette section est définie, aucune autre section n'est autorisée à apparaître dans l'ensemble de la déclaration du module, à l'exception de la sectionMetaData. Chaque déclaration de module avec cette section est clairement identifiée comme type MacroModule. Une autre rubriqueMacroModulen'est pas autorisé dans une déclaration de module.Rootmodule: Indique que les sous-sections suivantes décrivent le sous-module racine, qui doit être 1) la racine de ce type MacroModule et 2) inséré en tant que parent supérieur de tous les autres sous-modules du type MacroModule.Submodule: Indique que les sous-sections suivantes décrivent un sous-module, qui doit être inséré sous le sous-module racine dans une sous-arborescence pour le type MacroModule.MacroParameter: Si ce type de sous-section est utilisé dans une sectionSubmoduleouRoot, on peut alors indiquer qu'un paramètre spécifique du sous-module défini (ou racine) doit lui-même apparaître en tant que paramètre du module macro. Pour cela, la cible de la sectionMacroParameterest utilisé comme nouvel ID de paramètre pour le paramètre de module de macro. Le paramètre du sous-module donné (ou racine) est alors défini parLocal_ParameterID. De plus, des entrées de liste de textes peuvent être créées à l'aide des définitions deNew_NameetNew_Desc. Ces entrées sont utilisées pour le nom et la description du nouveau paramètre de module de macro au lieu de celui du sous-module ou du paramètre racine. Toutes les cibles définies de toutes les sectionsMacroParameterdans un module de macro entier doit être clair pour garantir des ID de paramètres uniques pour tous les paramètres de module de macro.MacroIO: Si ce type de sous-section est utilisé dans la sectionSubmoduleouRoot, on peut alors indiquer qu'une E/S spécifique du sous-module défini (ou racine) doit elle-même apparaître comme une E/S du module macro. Pour cela, la cible de la sectionMacroIOest utilisé comme nouvel ID d'E/S pour les E/S du module macro. L'E / S du sous-module (ou racine) donné est alors défini parLocal_IOID. De plus, des entrées de liste de textes peuvent être créées à l'aide des définitions deNew_NameetNew_Desc. Ces entrées sont utilisées pour le nom et la description de la nouvelle E/S du module macro au lieu du sous-module ou de l'E/S racine. Toutes les cibles définies de toutes les sectionsMacroIOdans un module macro entier doit être clair pour garantir des ID d'E/S uniques pour toutes les E/S du module macro.MacroSlot: Si cette sous-section est utilisée dans la sectionSubmoduleouRoot, on peut alors indiquer qu'un emplacement spécifique du sous-module défini (ou racine) doit lui-même apparaître comme un emplacement du macro-module. De cette manière, des instances de module supplémentaires peuvent être insérées sous cet emplacement de l'instance de MacroModule. Pour cela, la cible de la sectionMacroSlotest utilisé comme nouvel ID d'emplacement pour l'emplacement du module macro. L'emplacement du sous-module donné (ou racine) est alors défini parLocal_SlotID. De plus, une entrée de liste de textes peut être créée à l'aide des définitionsNew_Role. Cette entrée est utilisée pour le rôle du nouvel emplacement de module macro au lieu de celui du sous-module ou de l'emplacement racine. Toutes les cibles définies de toutes les sectionsMacroSlotà l'intérieur d'un MacroModule entier doit être clair pour garantir des ID d'emplacement uniques pour tous les emplacements de MacroModule.Parent_Instance: Définit un ID correspondant à un ID cible d'une sectionRootmoduleouSubmodulede la section englobanteMacroModule. Cette définition n'existe que dans la sectionSubmodule. Il définit l'instance du module parent sous laquelle le sous-module doit être inséré. Ce sous-module est décrit par la section correspondanteSubmoduledu MacroModule. De plus, la définitionParent_Slotest également requis.Parent_Slot: Définit un ID correspondant à l'ID d'emplacement situé sous le type de sous-module identifié parParent_Module. Le sous-module de type MacroModule décrit par la sectionSubmoduleest inséré sous cette fente.Default_Allocation: Ceci est identique à la section du même nom sous les déclarations d'emplacement (SlotetSlot_Multi). Cette section définit à la fois pour le "module racine" et le "sous-module" quel type de sous-module de type MacroModule doit être inséré pour quelle configuration d'instance. La seule différence est que nonInstance_Namepeut être défini pourDefault_Allocationsous une rubriqueRootmodule, mais plutôt sous les rubriquesSubmodule. La raison en est que les instances de module insérées en tant que "module racine" reçoivent leur nom de l'instance MacroModule et ne peuvent donc pas être saisies par "défaut".Reference: Indique que les sous-sections suivantes décrivent une référence de module. Une référence est générée sous l'instance du moduleParent_Instanceet la fenteParent_Slot, faisant référence au sous-moduleReferenced_Instance. Comme leParent_Instance, cette instance référencée doit provenir de l'ensemble du sous-module d'instances de module racine sous la même sectionMacroModule.
Il ne doit pas utiliser
IMPLEMENTED_BYouIMPORTSdans sa déclaration de module.Il doit inclure la section
MetaDataetMacroModule. Sinon, les sections supplémentaires ne doivent pas être utilisées.Il doit y avoir au moins un
Rootmodulerubrique sous leMacro_Modulesection. De plus, il ne doit pas y avoir une secondeRootmodulesection.Pour chaque
submodule, à la fois leParent_Instanceet leParent_Slotdoit être défini dansMacroModule. Celle-ci doit alors être définie commeLocal_SlotIDdansMacroSlotduParent_Instance.