IBM
Contents Index Previous Next



Static Interface Definitions Using SDL


SDL offers two major means to define the interfaces of a block:

When signals are used to define the interface to a block they define the communication items that can be sent to and from the block. A signal can represent a service to be carried and it contains all relevant data that is associated with the request. A useful way to structure the signals if one particular interface contains many signals is to define signal lists that group together related signals. Consider the CentralCtrl block above. This block has two interfaces, one to the Door blocks and one to the OperatorCtrl block. The interface to the Door blocks can in SDL be defined as in Figure 658.

Figure 658 : An interface definition using signals

When using signals to define the interface of a block we do not put any constraints on the execution strategies in the respective blocks, we only define the data that is transported. However, in some cases, especially when using a client-server based architecture, it is more convenient to define the interface using remote procedures instead of signals. As an example consider once more the CentralCtrl block. The major responsibility of this block is to store the cards with their associated code. Some possible operations on this data is to check weather a particular card is registered and what the code for a particular card is. A remote procedure definition of these operations is depicted in Figure 659.

Figure 659 : An interface definition using remote procedures

In addition to the signals/remote procedures that are used to define the interfaces in SDL there is of course also a need to define the data types that are visible in the interface. This issue is to a large extent the same as the issue of mapping passive objects to SDL data types. This is treated in more detail in section "Mapping a Passive Object" on page 3923.


http://www.ibm.com/rational
Contents Index Previous Next