Next: Importing Models, Up: Creating a Component [Contents][Index]
A component declaration is named, and introduces a list of provides and requires interfaces and optionally behaviour or a system.
1) component CompName // placeholder for component implemented in another programming language { provides CompInterface compinterface; // list of provided interfaces requires UsedInterface usedinterface; // list of required interfaces }
2) component CompName { // component with behaviour provides CompInterface compinterface; // list of provided interfaces requires UsedInterface usedinterface; // list of required interfaces behaviour // behaviour { ... } }
3) component CompName { // system component provides CompInterface compinterface; // list of provided interfaces requires UsedInterface usedinterface; // list of required interfaces system // system { ... } }
This component has no implementation. It represents a component implemented in another programming language.
component CompName { provides CompInterface compinterface; }
The following component implements one interface and a straightforward behaviour section.
component Leaf { provides ISensor ctrl; behaviour { on ctrl.event(): { } } }
A component decomposed into two components where these components are connected via their ports.
component Composition { provides CompInterface compinterface; system { Comp1 comp1instance; Comp2 comp2instance; comp1instance.port1 <=> comp2instance.port2; } }