Table of Contents Previous Chapter 43 The SDT Public Interface

43 The SDT Public Interface

This chapter introduces the SDT Public Interface and describes a message based interface by which external tools and applications could be integrated with SDT. Three conceptually different facilities are provided. The SDT Public Interface uses the SDT PostMaster as transport. This chapter assumes the reader to be familiar with the SDT PostMaster. In chapter 10, How to Use the SDT Public Interface, you may find examples of how to use the interface.

General Concepts

Introduction

In SDT-3 significant steps have been made to increase the openness of SDT by the introduction of the SDT Public Interface. Openness is provided both in terms of diverse ways of controlling SDT and the way data handled by SDT are made visible.

Application Areas

Two different kinds of usage of SDT could be foreseen:

The Public Interface

The public interface to SDT has been made possible due to the modularity of SDT and thanks to the well defined interfaces by which SDT has been built.

The public interface is made available to SDT users using two different mechanisms.

The PostMaster

The PostMaster forms an integral mechanism to integrate tools in the SDT environment (a reference to the PostMaster is provided in chapter 42, The SDT PostMaster).

It is also used as a low level mechanism to physically integrate SDT with external tools. The PostMaster provides three basic facilities:

These facilities are used to implement the concepts provided by SDT services. These are built up of Services and Notifications. A special case of service is Communication with Simulators.

It is important to note that the interface provided could be extended for client-client usage outside SDT as long as the conventions described in this document are followed.

Services

Provides access to functionality within SDT. Such functions could be used by external tool to control SDT, to integrate SDT with external tools or have SDT take part in a larger environment.

Services adopts the client-server concept where a request is sent by a client to a server, which returns with a reply. Service request and service reply take both advantage of message sending from one tool to another.

Notifications

These are broadcasted messages which are spontaneously emitted when a significant event takes place in SDT. Often these notifications are caused by a service being successfully processed.

Communication with Simulators

When external applications are to communicate with simulators, the message SESDLSIGNAL is used. It is asynchronously sent/broadcasted into the system. All simulators subscribes on this message. As a parameter to this message is the receiver (in the context of SDL) provided.

Overview of Available Services

The following services are provided by SDT for external usage. A service is normally supported by a specific tool or a few number of tools within the SDT environment. Some of the services correspond to a menu choice or an operation performed by a user using the tools's graphical interface.

Configuration Services

---------------------------------------------------
Service                Servers     Graphical         
                                   correspondence    
---------------------------------------------------
Start Tool             PostMaster  Start a new tool  
Get Tool Type          PostMaster  N/A               
Get Tool Pid           PostMaster  N/A               
Add Tool               PostMaster  N/A               
Add Tool Subscription  PostMaster  N/A               
---------------------------------------------------

Logging Services

-----------------------------------------
Service        Servers     Graphical       
                           correspondence  
-----------------------------------------
Start MSC Log  PostMaster  N/A             
Stop MSC Log   PostMaster  N/A             
-----------------------------------------

SDT Reference Services

-------------------------------------------------------
Service              Servers    Graphical                
                                correspondence           
-------------------------------------------------------
Show SDT Source      Organizer  Show source menu choice  
Obtain GR Reference  SDLE       N/A                      
                     MSCE                                
-------------------------------------------------------

System File Services

------------------------------------------------------
Service            Servers    Graphical correspondence  
------------------------------------------------------
List System Files  Organizer  N/A                       
Open System        Organizer  Open quick button         
Save System        Organizer  Save quick button         
------------------------------------------------------

Diagram Management Services

------------------------------------------------------
Service             Servers  Graphical correspondence   
------------------------------------------------------
Load Diagram        SDLE     Open diagram menu choice   
                    MSCE                                
Unload Diagram      SDLE     Close diagram menu choice  
                    MSCE                                
Save Diagram        SDLE     Save diagram menu choice   
                    MSCE                                
Create SDL Diagram  SDLE     New diagram menu choice    
                    MSCE                                
Create MSC Dia      SDLE     New diagram menu choice    
gram                MSCE                                
------------------------------------------------------

Diagram Object Management Services

----------------------------------------------------
Service            Servers  Graphical correspondence  
----------------------------------------------------
Select Object      SDLE     Selecting an object       
                   MSCE                               
Insert SDL Object  SDLE     Select object in symbol   
                            menu                      
Insert MSC Object  MSCE     Select object in symbol   
                            menu                      
Remove Object      SDLE     Clear menu choice         
                   MSCE                               
Show Object        SDLE     Selecting an object       
                   MSCE                               
----------------------------------------------------

Menu Management Services

---------------------------------------------------
Service           Servers  Graphical correspondence  
---------------------------------------------------
Add Menu          SDLE     N/A                       
                  MSCE                               
Delete Menu       SDLE     N/A                       
                  MSCE                               
Clear Menu        SDLE     N/A                       
                  MSCE                               
Add Item to Menu  SDLE     N/A                       
                  MSCE                               
---------------------------------------------------

Object Data Management Services

---------------------------------------------------
Service           Servers  Graphical correspondence  
---------------------------------------------------
Display Key       SDLE     N/A                       
                  MSCE                               
List Key          SDLE     N/A                       
                  MSCE                               
Create Attribute  SDLE     N/A                       
                  MSCE                               
Read Attribute    SDLE     N/A                       
                  MSCE                               
Update Attribute  SDLE     N/A                       
                  MSCE                               
Delete Attribute  SDLE     N/A                       
                  MSCE                               
---------------------------------------------------

Information Server Services

------------------------------------------------------------
Service               Servers       Graphical correspondence  
------------------------------------------------------------
Load Definition File  Information   N/A                       
                      Server                                  
------------------------------------------------------------

Client interface

A client which would like to make an integration using these facilities should consult the following interface:

External Client types

Clients connecting to the PostMaster must be known by the PostMaster. This can be accomplished in a number of ways:

  1. By defining a configuration file containing the extended configuration, name this file to post.cfd and to set the environment variable POSTPATH to include the directory where the file is stored.
    A change in this file is kind of static nature, since the configuration files are read every time the PostMaster (SDT) is started.
  2. By modifying the configuration dynamically. Requires a PostMaster to be running. The PostMaster provides services for dynamically changing a configuration, adding tools and adding subscriptions. This is easily done via a script and does only affect the current session.
New tool types or message types added to the PostMaster tool and subscription list should be set in a range not conflicting with SDT. New tools and messages should use values above 100000. Exact numbering should follow the scheme used by SDT:

------------------------------------------------------------------
Item             Description                                        
------------------------------------------------------------------
Tools            Use values in steps of 1000                        
Service Request  Base the value on the tool providing the service   
                 and add local base of 100. Then sequentially       
                 number the services                                
Service Reply    Base the value on the corresponding service        
                 request and add 100.                               
Notifications    Base the value on the tool broadcasting the noti   
                 fication. and add the messages sequentially.       
------------------------------------------------------------------

Message Based Services

Introduction

Using a message based services requires the client to be connected to the PostMaster. To invoke a service, the application sends a service request message to the tool providing the service. A service request message will normally cause a reply message to be sent to the client. An exception is if the server unexpectedly terminates while processing the service.

The client could choose whether to wait for the reply message (emulating a remote procedure call) or to continue working and intercept the reply message via a callback routine.

The client does not need to subscribe on service request messages or service reply messages. However the client itself must be present in the configuration list.

A server can only process one service at time. If additional services are requested from that particular server when being occupied processing the first service, the server is said to be busy and a service error reply is returned to the requester. Other kinds of messages received by server during the processing of a service request are queued up and will be processed as soon as the service has completed.

Service Request

A service request normally takes advantage of the SPSendToTool function. If more than one instance of a tool is active the function SPSendToPid will be more appropriate. The reply is fetched with the SPRead function. The client must however verify that the read message is the reply message. The macro SP_MATCHREPLY could be used to determine whether the received message is the desired reply.

Service Reply

The first parameter in the service reply informs about the result of the service request. The following codes are used:

------------------------------------------------------------------
Status Code  Value  Description                                     
------------------------------------------------------------------
OK           0      The service was successfully processed.         
                    Optional parameters are provided in the         
                    reply message.                                  
Busy         1      The server is busy and cannot process the       
                    service. The service request is aborted. An     
                    additional message might be provided.           
ErrorString  2      The server failed to process the service.       
                    The remaining parts of the message contain      
                    an error message.                               
ErrorCode    3      The server failed to process the service, the   
                    next parameter in the service reply is a        
                    code indicating the error.                      
------------------------------------------------------------------
In the detailed description of each service, the reply format is only specified for the normal case returning OK. For services replying errors in the ErrorString format, the text may be context sensitive and only major error causes are specified.

Error Handling

Error handling takes place at two different levels.

  1. The service request failed to be issued.
    Service Request message couldn't be sent. In such case the SPSendToTool, SPSendToPid. returns false and the variable sperrno indicates the error. It also means that a service reply message will not be sent.
  2. While processing the service.
    In this case the service request reaches the server but cannot be processed or the processing of the service fails. In such a case, an error code is provided in the service reply message. The error is either provided as a code or as explanatory text.
How to decode the service reply is described in the section below.

Common Errors

These errors are common to all services. They all use the ErrorString format. Where applicable, an additional explanatory text is added to the strings below:

Bad parameters
Server busy
Service not supported
Server locked

SDT Reference Errors

When a service request refers to an SDT reference, the following errors could occur:

Reference must contain paranthesis
Reference must start with #SDTREF
Invalid reference
Garbage after reference
Embedded value not terminated
Illegal value in paranthesis after token <token-nr>
Junk after embedded value
Incomplete reference lacking trailing paranthesis
Unsupported reference type <token>
Symbol must be integer >= 0
Malformed coordinate
For a reference to the syntax of references, see chapter 41, References in SDT-3.

Notifications

Certain services will broadcast notifications as the service is processed in order to inform other participants than the service issuer that an operation has been performed by the server or that the state of the server has changed.

Message Parameters

Normally a message (a service request, a service reply, a notification or other) uses one or more parameters. Generally all such parameters are stored in a PostMaster message's data part.

The following parameter types are used:

-----------------------------------------------------------------
Type          Description                                          
-----------------------------------------------------------------
integer       32 bit integer in ASCII form.                        
bool          Logical. True = 1, False = 0                         
string        ASCII string.                                        
QuotedString  ASCII string surrounded by double quotes (i.e.       
              "The string"). If a quote character appears in the   
              string it is proceeded by a backslash. (`\'). An     
              empty string is also double quoted ("").             
ByteString    Byte string. Is always preceded by an attribute      
              telling the length of the byte string.               
-----------------------------------------------------------------

Files

The files are found in the directory $sdtdir/INCLUDE.

Interpretation of a Service Description

Below is an explanation of the different sections found in a service description.

Description

A brief textual description of the service.

Tools Supporting the Service

The tool type(s) providing the service. Corresponds to definitions in the file sdt.h.

Service Request

Message name. Corresponds to a definition in the file sdt.h.

The service request is presented in a table of service parameters, with the appearance below. The parameters must appear in the order they are listed in the table. Usually, a parameter cannot be omitted. If it is optional, this is explicitly mentioned.

-----------------------------------------------------------
Parameter   Type       Description                           
-----------------------------------------------------------
symbolic    parameter  Brief description of the parameters.  

parameter  
type                                            

name                                                        
-----------------------------------------------------------

Service Reply

Message name. Corresponds to a definition in the file sdt.h.

The table below is similar to the service request parameter table above. A service reply always contains a status code in the first parameter. Additional parameters are only valid if the status code was OK (0).

-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Errors additional to the common errors are listed in this section.

Emitted Notifications

Notifications emitted as a result of the service being successfully processed.

SDT Services

PostMaster Services

Start Tool

Description

This service will start the specified tool. On UNIX platforms, start means that a new UNIX process is "fork'ed" and "exec'ed".

The Service adds "-post" to the argv[1] variable.

The parameters are recognized by the started tool in the argv[] variable starting from index 2.

The started tool inherits the environment used by the PostMaster.

The service behaves somewhat differently from other services since it is performed both in the PostMaster and in the PostMaster library in the started tool. The service is initiated in the PostMaster creating the new tool, but the service is recognized to be completed when the started tool calls the PostMaster function SPInit. This call causes a SESTARTNOTIFY message to be sent. This message is recognized by the PostMaster which upon reception of the SESTARTNOTIFY also sends a SESTARTREPLY to the issues of the start service.

The service is also different in its nature since it will cause a time-out to expire if the started tool does not call the SPInit function within a certain time limit.

The started tool must have an entry in the PostMaster configuration and the associated file containing the tool to start must exist.

The service will return to the caller:

The following MSC diagram shows the protocol when a tool is started normally (the Organizer starts the Editor).

Figure 563 : Protocol to Start a Tool. 
-----
(fig)  
       
-----

Tools Supporting the Service

SET_POST

Service Request

SESTART
-------------------------------------------------------------
Parameter  Type     Description                                
-------------------------------------------------------------
toolType   integer  Tool type to be started                    
params     string   Optional.                                  
                    Parameters for the started tool. More      
                    than one parameter allowed. If sepa        
                    rated with blanks, each item will be       
                    inserted into the argv[] string list for   
                    the started application. The PostMaster    
                    will add a parameter -post as the first    
                    parameter in the argv[] list.              
-------------------------------------------------------------

Service Reply

SESTARTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

No such tool
Max instances of tool
Already started
File not found
+ Operating System file access and process creation 
error messages

Emitted Notifications

-----------------------------------------------------------
Notification   Description                                   
-----------------------------------------------------------
SESTARTNOTIFY  Broadcasted by the started application when   
               calling SPInit.                               
-----------------------------------------------------------

Get Tool Type

Description

Returns the process type for a given process id.

Tools Supporting the Service

SET_POST

Service Request

SEGETTOOLTYPE
-------------------------------------------------------------
Parameter  Type     Description                                
-------------------------------------------------------------
pId        integer  A pId identifying the tool type of which   
                    the corresponding type is wanted.          
-------------------------------------------------------------

Service Reply

SEGETTOOLTYPEREPLY
--------------------------------------------------------------
Parameter  Type     Description                                 
--------------------------------------------------------------
status     integer  Service reply status.                       
toolType   integer  The type of tool. If the requested pid is   
                    not found, toolType 0 is returned           
--------------------------------------------------------------

Errors

-

Get Tool Pid

Description

Returns the process id for the requested tool type. If multiple instances of the tool type exist, all pid values are returned.

Tools Supporting the Service

SET_POST

Service Request

SEGETTOOLPID
-------------------------------------------------------------
Parameter  Type     Description                                
-------------------------------------------------------------
toolType   integer  An identifier for the tool type of which   
                    the corresponding pid(s) are wanted.       
-------------------------------------------------------------

Service Reply

SEGETTOOLPIDREPLY
-------------------------------------------------------------
Parameter  Type     Description                                
-------------------------------------------------------------
status     integer  Service reply status.                      
noOfPid    integer  Number of pid values corresponding to      
                    the toolType. If the requested tool        
                    type was not found in the configuration,   
                    noOfPid is set to 0.                       
pId        integer  A pid value corresponding to               
                    toolType                                   
-------------------------------------------------------------

Errors

-

Add Tool

Description

Dynamically adds a tool type to the PostMaster configuration.

Tools Supporting the Service

SET_POST

Service Request

SEADDTOOL
------------------------------------------------------------
Parameter  Type     Description                               
------------------------------------------------------------
toolType   integer  An identifier for the tool. Should be a   
                    value within the allowed range.           
filename   string   The filename of the executable tool.      
                    Should be a pure filename and must        
                    not include a directory path. The file    
                    should be stored on a directory that is   
                    included in the directories designated    
                    by the environment variable POSTPATH.     
------------------------------------------------------------

Service Reply

SEADDTOOLREPLY
------------------------------------------------------------
Parameter  Type     Description                               
------------------------------------------------------------
status     integer  Service reply status.                     
exist      bool     Returns false if the tool was inserted,   
                    true if it already existed.               
------------------------------------------------------------

Errors

Operation failed

Add Tool Subscription

Description

Dynamically adds a message to a tool's subscription list.

Tools Supporting the Service

SET_POST

Service Request

SEADDTOOLSUBSCRIPTION 
-----------------------------------------------------------
Parameter  Type     Description                              
-----------------------------------------------------------
tooltype   integer  The tool type to which a message sub     
                    scription should be added.               
message    integer  The message to add to the subscription   
                    list.                                    
-----------------------------------------------------------

Service Reply

SEADDTOOLSUBSCRIPTIONREPLY
---------------------------------------------------------
Parameter  Type     Description                            
---------------------------------------------------------
status     integer  Service reply status.                  
exist      bool     Returns false if the message was       
                    inserted, true if it already existed.  
---------------------------------------------------------

Errors

No such tool
Operation failed

Start MSC Log

Description

Starts the logging of messages sent by tools connected to the PostMaster. The format used by the log is event-oriented MSC-PR.

Tools Supporting the Service

SET_POST

Service Request

SESTARTTRACE
----------------------------------------------------------
Parameter  Type    Description                              
----------------------------------------------------------
filename   string  The name of the file on which the log    
                   should be stored. If the parameter is    
                   omitted, the default log file post.mpr   
                   will be used.                            
----------------------------------------------------------

Service Reply

SESTARTTRACEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

-

Stop MSC Log

Description

Stops the logging of messages sent by PostMaster tools.

Tools Supporting the Service

SET_POST

Service Request

SESTOPTRACE
----------------------------
Parameter  Type  Description  
----------------------------
-          -     N/A.         
----------------------------

Service Reply

SESTOPTRACEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

-

Organizer Services

Show SDT Source

Description

Selects the SDT reference in an editor. A reference could be:

For a complete description of the format of an SDT reference, please see chapter 41, References in SDT-3.

Tools Supporting the Service

SET_ORGANIZER

Service Request

SESHOWREF
-----------------------------------------
Parameter  Type    Description             
-----------------------------------------
SDTRef     string  A valid SDT reference.  
-----------------------------------------

Service Reply

SESHOWREFREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

SDT Reference Errors

Emitted Notifications

--------------------------------------------------------------
Notification     Description                                    
--------------------------------------------------------------
SELOADNOTIFY     If any Editor loaded the required diagram.     
SELOADSDLNOTIFY  If the SDL Editor loaded the required dia      
                 gram.                                          
SESHOWNOTIFY     If the diagram to show was not loaded in the   
                 editor.                                        
SESTARTNOTIFY    If the Editor was started.                     
--------------------------------------------------------------

List System Files

Description

Lists the files currently held in the Diagram Structure Area in the Organizer. The files will be returned in the order they are found in the Organizer (i.e. top-down, left-right).

Tools Supporting the Service

SET_ORGANIZER

Service Request

SELISTSYSTEMFILES
----------------------------
Parameter  Type  Description  
----------------------------
-          -     N/A.         
----------------------------

Service Reply

SELISTSYSTEMFILESREPLY
---------------------------------------------------------------
Parameter  Type     Description                                  
---------------------------------------------------------------
status     integer  Service reply status.                        
file(s)    string   A list of files, with a complete directory   
                    path. Each file specification is ended by    
                    a newline.                                   
---------------------------------------------------------------

Errors

-

Open System

Description

Opens a system file and displays the file contents in the Organizer. Corresponds to the Organizer menu command Open.

Tools Supporting the Service

SET_ORGANIZER

Service Request

SEOPEN
-------------------------------------------------------
Parameter  Type    Description                           
-------------------------------------------------------
filename   string  The system file to open.              
forceQuit  bool    If true, quit modified diagrams. If   
                   false and modified diagram(s)         
                   exist(s), the service is denied.      
-------------------------------------------------------

Service Reply

SEOPENREPLY
--------------------------------------------------------------
Parameter  Type     Description                                 
--------------------------------------------------------------
status     integer  Service reply status.                       
toolType   integer  The type of tool. If the requested pid is   
                    not found, toolType 0 is returned.          
--------------------------------------------------------------

Errors

Service request denied. No license available
Cannot open, system modified
Error opening system A message box displays the error

Save System

Description

Corresponds to the Organizer menu command Save. Unconnected diagrams are saved in default file names. See "Default file names" on page 1190 and page 1314 for information on how default file names are assigned.

Tools Supporting the Service

SET_ORGANIZER

Service Request

SESAVEALL
---------------------------------------------------------
Parameter            Type  Description                     
---------------------------------------------------------
systemStructureOnly  bool  If true, only the system struc  
                           ture is saved.                  
---------------------------------------------------------

Service Reply

SESAVEALLREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Service request denied. No license available
Error save all A message box displays the error

Editor - Diagram Services

The Buffer Concept

The Editor defines the concept buffer, which basically identifies a diagram currently loaded in the Editor. Each buffer is identified with a buffer id which is unique within one session of the Editor as long as the Editor is not stopped)

An buffer id is returned when an existing diagram is successfully loaded in an Editor or a new diagram is created and implicitly loaded in the Editor. Then, most services manipulating diagrams in Editors, refer to the buffer containing the diagram via the buffer id.

Obtain GR Reference

Description

Returns the SDT references for the current selection(s) in the Editors.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEOBTAINGRREF 
----------------------------
Parameter  Type  Description  
----------------------------
-          -     N/A          
----------------------------

Service Reply

SEOBTAINGRREFREPLY
---------------------------------------------------
Parameter  Type     Description                      
---------------------------------------------------
status     integer  Service reply status.            
NoOfRef    integer  The number of references found.  
ref*       string   A complete SDT reference.        
---------------------------------------------------

Errors

SDT Reference Errors
Illegal use of qualifier
Illegal reference type

Load Diagram

Description

Loads an SDL or MSC diagram specified by filename in an Editor buffer. If the diagram was already loaded, the existing buffer id will be returned.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SELOADDIAGRAM
-----------------------------------------------------------
Parameter  Type    Description                               
-----------------------------------------------------------
filename   string  The diagram file to load specified with   
                   the full directory path.                  
-----------------------------------------------------------

Service Reply

SELOADDIAGRAMREPLY
------------------------------------------------------------
Parameter  Type     Description                               
------------------------------------------------------------
status     integer  Service reply status.                     
bufId      integer  Refers to an allocated buffer in the Edi  
                    tor.                                      
type       integer  The type of diagram.                      
name       string   The name of the loaded diagram.           
------------------------------------------------------------

Errors

Can not read file <filename> <error message> 
SDLE is busy, syntax error in text (SDLE only)

Emitted Notifications

---------------------------------------------------
Notification     Description                         
---------------------------------------------------
SELOADNOTIFY     If the diagram was loaded.          
SELOADSDLNOTIFY  Only if an SDL diagram was loaded.  
---------------------------------------------------

Unload Diagram

Description

Unloads a diagram from an Editor.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEUNLOAD
----------------------------------------------------------------
Parameter    Type     Description                                 
----------------------------------------------------------------
bufId        integer  Refers to a buffer in the Editor.           
forceUnload  bool     If true, the Editor will force a modified   
                      diagram to be unloaded. If false, the       
                      Editor will not unload the diagram if it    
                      is modified.                                
----------------------------------------------------------------

Service Reply

SEUNLOADREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Diagram is changed If force Unload is false
SDLE is busy, syntax error in text SDLE only

Emitted Notifications

--------------------------------------------
Notification    Description                   
--------------------------------------------
SEUNLOADNOTIFY  If the diagram was unloaded.  
--------------------------------------------

Show Diagram

Description

The service will raise a window in the Editor showing the specified buffer.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEHSHOW
-------------------------------------------------------------
Parameter  Type          Description                           
-------------------------------------------------------------
bufId      integer       Refers to a buffer in the editor.     
pageName   QuotedString  Name of the page to show. If the      
                         string is empty, the last recently    
                         used, or if no such page exist, the   
                         default page will be shown.           
                         Only applicable to SDL diagrams.      
                         For MSC diagrams this parameter       
                         may be omitted or left empty.         
-------------------------------------------------------------

Service Reply

SESHOWREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Unable to open page SDLE only
SDLE is busy, syntax error in text SDLE only

Emitted Notifications

----------------------------------------
Notification  Description                 
----------------------------------------
SESHOWNOTIFY  If the diagram was raised.  
----------------------------------------

Save Diagram

Description

The service will save the diagram in the specified file. If not a valid filename or if there is no permission to save the file, an error will be returned. When saved, the editor buffer is marked as not edited.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SESAVE
------------------------------------------------------
Parameter  Type     Description                         
------------------------------------------------------
bufId      integer  Refers to a buffer in the Editor.   
filename   string   The file where to save the buffer.  
------------------------------------------------------

Service Reply

SESAVEREPLY
----------------------------------------------------------
Parameter  Type     Description                             
----------------------------------------------------------
status     integer  Service reply status.                   
toolType   bool     Returns true if the buffer was success  
                    fully saved.                            
----------------------------------------------------------

Errors

Invalid diagram buffer Id
Diagram is new. Filename is missing. 
Cannot save file <filename> <error message>
SDLE is busy, syntax error in text (SDLE only)

Emitted Notifications

---------------------------------------
Notification  Description                
---------------------------------------
SESAVENOTIFY  If the diagram was saved.  
---------------------------------------

Create SDL Diagram

Description

Creates an empty SDL diagram in a new buffer. The diagram gets an unconnected status. Corresponds to SDL Editor command New.

Tools Supporting the Service

SET_SDLE

Service Request

SESDLCREATE 
------------------------------------------------------------
Parameter    Type          Description                        
------------------------------------------------------------
virtuality   integer       Kind of virtuality. Only applica   
                           ble to typed diagrams. Other dia   
                           grams should use the value         
                           NOVIRTUAL Possible values are:     
                           NOVIRTUAL                          
                           VIRTUAL                            
                           REDEFINED                          
                           FINALIZED                          
                           These values are defined in        
                           sdtsym.h                           
DiagramType  integer       Diagram type. See sdtsym.h for     
                           valid diagram types.               
name         string        Diagram name.                      
qualifier    QuotedString  SDL qualifier. Could be empty.     
pageType     integer       Type of the first page in the dia  
                           gram. See sdtsym.h for valid       
                           page types. Note that the          
                           pageType must correspond with      
                           the diagramType.                   
pageName     QuotedString  Name of the first page in the dia  
                           gram.                              
------------------------------------------------------------

Service Reply

SESDLCREATEREPLY
-----------------------------------------------------
Parameter  Type     Description                        
-----------------------------------------------------
status     integer  Service reply status.              
bufId      integer  Refers to a buffer in the editor.  
-----------------------------------------------------

Errors

SDLE is busy, syntax error in text

Emitted Notifications

-------------------------------------------------------
Notification       Description                           
-------------------------------------------------------
SESDLCREATENOTIFY  As a result of creating the diagram.  
SESDLPAGENOTIFY    As a result of creating a page.       
-------------------------------------------------------

Create MSC Diagram

Description

Creates an empty MSC diagram in new buffer. Corresponds to MSC Editor command New.

Tools Supporting the Service

SET_MSCE

Service Request

SEMSCCREATE
-------------------------------------------------
Parameter  Type    Description                     
-------------------------------------------------
name       string  Name of the diagram to create.  
-------------------------------------------------

Service Reply

SEMSCCREATEREPLY
-----------------------------------------------------
Parameter  Type     Description                        
-----------------------------------------------------
status     integer  Service reply status.              
bufId      integer  Refers to a buffer in the editor.  
-----------------------------------------------------

Errors

-

Emitted Notifications

-------------------------------------------------------
Notification       Description                           
-------------------------------------------------------
SEMSCCREATENOTIFY  As a result of creating the diagram.  
-------------------------------------------------------

Editor - Object Services

Select Object

Description

The Select Object service will highlight an object in a diagram. Note that this command does not show the buffer and the selected object in a window. The difference between this service and the Obtain GR Reference service is that the Select Object service does not require the diagram to be saved on a file.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SESELECTOBJECT
-----------------------------------------------------------
Parameter       Type     Description                         
-----------------------------------------------------------
bufId           integer  Buffer referencing the diagram in   
                         which an object should be shown.    
row             integer  The row where to put the text       
                         cursor.                             
column          integer  The column where to put the text    
                         cursor in the row.                  
keepSelections  bool     Flag indicating if old selections   
                         should be kept.                     
-----------------------------------------------------------

Service Reply

SESELECTOBJECTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Invalid object id
SDLE is busy, syntax error in text (SDLE only)

Show Object

Description

The Show Object service will make sure that the specified object is visible in a window. This means that it will display the buffer in a window and if necessary scroll into the position where the object is. Often used in combination with Select Object.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SESHOWOBJECT
------------------------------------------------------
Parameter  Type     Description                         
------------------------------------------------------
bufId      integer  Buffer referencing the diagram in   
                    which an object should be shown.    
objectId   integer  Identifier to the object to show.   
------------------------------------------------------

Service Reply

SESHOWOBJECTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Invalid object id
SDLE is busy, syntax error in text (SDLE only)

Insert SDL Object

Description

Adds an object to the SDL diagram.

Tools Supporting the Service

SET_SDLE

Service Request

SESDLINSERTOBJECT
------------------------------------------------------------
Parameter    Type          Description                        
------------------------------------------------------------
bufId        integer       Buffer in which to insert the      
                           object.                            
pageName     string        Page to insert the object on.      
shiftIsDown  bool          Emulate behavior of having shift   
                           pressed when inserting an sym      
                           bol.                               
objectType   integer       Type of object. Valid objects      
                           depend on the type of diagram      
                           and if syntax checking is on. Cor  
                           responds to available symbols in   
                           the editor symbol menu. 
NOTE: SDL reference symbols are not possible to add using this service.
Definitions of symbols are found in sdtsym.h. objectText QuotedString Text in object. ------------------------------------------------------------

Service Reply

SESDLINSERTOBJECTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Invalid object id
A reference symbol containing text\
cannot be inserted in diagram <diagram>
Object type <objectType> is not allowed\
in diagram <diagram>
Unable to open page 
The page is too small to insert the object
SDLE is busy, syntax error in text

Insert MSC Object

Description

The Insert Object service will create a new object in the diagram identified by the parameter and return an object identification (an integer) to the client. It will not display the new object.

For a full specification of how to specify the object to insert, the specification of Message Sequence Charts Z.120 should be consulted or the document "MSC Trace and Log Format 2.0 Specification" available from Telelogic.

Tools Supporting the Service

SET_MSCE

Service Request

SEINSERTOBJECT
------------------------------------------------------------
Parameter          Type          Description                  
------------------------------------------------------------
bufId              integer       Buffer in which to insert    
                                 the object.                  
afterObject        integer       Only object id 0 is          
                                 allowed, and adds the        
                                 object as the last object.   
objectDescription  QuotedString  Description of the object    
                                 to insert. The description   
                                 should be in accordance      
                                 with Z.120 using event       
                                 oriented PR. Only one        
                                 object at the time can be    
                                 inserted.                    
------------------------------------------------------------

Service Reply

SEINSERTOBJECTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
objectId   integer  Identifier to object.  
-----------------------------------------

Errors

Invalid diagram buffer id
Errors from parsing objectDescription

Remove Object

Description

The Remove Object service will delete an object in a diagram.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEREMOVEOBJECT 
------------------------------------------------------
Parameter  Type     Description                         
------------------------------------------------------
bufId      integer  Buffer referencing the diagram in   
                    which an object should be removed.  
objectId   integer  The object to remove.               
------------------------------------------------------

Service Reply

SEREMOVEOBJECTREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

Invalid diagram buffer id
Invalid object id
Object can not be removed (MSCE only)

Editor - Menu manipulation Services

Introduction

The SDT tools SDL Editor and MSC Editor support dynamic menus. These menus will be displayed in the tool's menu bar. The exact location will defined by the tool, depending on the abilities of the graphical framework the tool is built upon.

The intention is to have an external tool configure an SDT tool in order to provide the necessary UI. SDT tools could also take advantage of these dynamic menus; for instance a Simulator UI could configure an SDL editor to serve as extended Simulator UI, where breakpoints can be set on symbols.

The following operations are available through a set of well defined PostMaster messages:

For each menu choice can be associated any to the following:

Add Menu

Description

Adds a new menu to the menu bar.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEMENUADD
-------------------------------------------------
Parameter  Type          Description               
-------------------------------------------------
menuName   QuotedString  Name of the menu to add.  
-------------------------------------------------

Service Reply

SEMENUADDREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

-

Delete Menu

Description

Removes the menu and its menu choices from the menu bar.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEMENUDELETE
----------------------------------------------------
Parameter  Type          Description                  
----------------------------------------------------
menuName   QuotedString  Name of the menu to delete.  
----------------------------------------------------

Service Reply

SEMENUDELETEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

-

Clear Menu

Description

Clears the menu bar from a menu item.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEMENUCLEAR
---------------------------------------------------
Parameter  Type          Description                 
---------------------------------------------------
menuName   QuotedString  Name of the menu to clear.  
---------------------------------------------------

Service Reply

SEMENUCLEARREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

-

Add Item to Menu

Description

Adds a menu choice to the specified menu. The menu choice could either perform an OS command or issue a PostMaster notification when selected. The OS command to perform or the message to broadcast could be sensitive on a selected symbol. Format codes could be used in the command string or as message parameter, providing additional context sensitive information.

The following format codes are recognized.

-----------------------------------------------------------------
Format code  Description                                           
-----------------------------------------------------------------
%a           The absolute name of the file associated with the     
             selected object. Extracted from the SDT reference.    
%b           The absolute name of the file associated to the win   
             dow.                                                  
%c           If the selected object uses extended data, the com    
             ment is extracted.                                    
%d           If the selected object uses extended data, the data   
             part is extracted.                                    
%e           The text in the object. (Only in the SDL Editor)      
%f           The name of the file that contains the object.        
%g           The SDT reference to the object.                      
%p           The page name currently shown in the window.          
%s           The name of the file shown in the window.             
%t           The page name for the object. Extracted from the      
             SDT reference.                                        
-----------------------------------------------------------------

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEMENUADDITEM
-------------------------------------------------------------
Parameter       Type          Description                      
-------------------------------------------------------------
menuName        QuotedString  The menu in which an item        
                              should be added.                 
menuItem        QuotedString  Name of QuotedString item        
                              to add.                          
separator       bool          If a separator should precede    
                              the item                         
statusText      QuotedString  The status text to show when     
                              the menu item is selected.       
ProprietaryKey  integer       The keys ProprietaryKey          
                              and AttributeKey are used        
                              to determine whether or not a    
                              menu choice should be avail      
                              able (i.e. dimmed or not).       
AttributeKey    integer       See description of Propri        
                              etaryKey.                        
scope           integer       This attribute should be one     
                              of the following:                
                              ALWAYS (0)                       
                              The menu choice will             
                              always be available, inde        
                              pendently of the selection       
                              in the tool's active win         
                              dow. The keys Propri             
                              etaryKey and                     
                              AttributeKey are han             
                              dled as don't care.              
                              ONE_SELECTED_OBJECT(a)           
                              
(1)                             
                              The menu choice is avail         
                              able only if exactly one         
                              object is selected. The          
                              keys ProprietaryKey              
                              and AttributeKey are             
                              handled as don't care.           
                              MATCHING_KEYS (2)                
                              The menu choice is avail         
                              able only if at least one of     
                              the selected objects has an      
                              attribute that matches the       
                              keys above                       
                              MATCHING_KEYS_ONE_SELEC          
                              
TED_OBJECT (3)(b)               
                              The menu choice is avail         
                              able only if exactly one         
                              object is selected and it        
                              has an attribute that            
                              matches the keys above           
confirmText     QuotedString  If no text is provided, no con   
                              firmation is assumed. A non-     
                              empty text denotes confirma      
                              tion, a two button dialog will   
                              be issued with the choices OK    
                              and Cancel. The dialog text is   
                              defined in confirmText.          
actionType      integer       The value controls the last      
                              part of the message which is     
                              variant.                         
                              0 = PostMaster message           
                              1 = OS command.                  
-------------------------------------------------------------
(a)
Each tool should define and adopt conventions for when exactly one object only is considered as selected. For instance, selecting a task symbol in an SDL Editor also selects the from and to lines. However, attaching information to these lines does not fill any meaningful purpose; the SDL Editor considers the situation as if one object only (i.e. the task symbol) was selected.
(b)
See a. above

Service Reply

SEMENUADDITEMREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Editor - Object attribute services

Introduction

Is possible to extend the data associated to an object managed by SDT with the user's own data. How this is done is described in Figure 564.

Figure 564 : Extending the Attributes Associated to a Symbol.Figure legend: 
		Theobject can have any number of attributes associated to it, not necessarily 2 
		asillustrated. The number of extended data attributes is arbitrary. 
-----
(fig)  
       
       
       
       
-----
An object is potentially any item that is handled as a source component by SDT, or any of the sub-components of which it consists. Objects are thus:

The purpose of the extended data attribute is:

Extended Data Attribute

An extended data attribute defines a number of fields. Below is a few of them further elaborated.

Display Key

Description

Request to display, i.e. select, all symbols referred by SDTRef, that have at least one associated attribute that matches the keys ProprietaryKey and AttributeKey.

SDTRef is typically a diagram, but could also be a page or a specific symbol. The symbols that match the criteria will be marked as selected in the drawing area. Other symbols will be de-selected.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEDISPLAYKEY
----------------------------------------------------------
Parameter       Type          Description                   
----------------------------------------------------------
ProprietaryKey  integer       See the introductory descrip  
                              tion.                         
AttributeKey    integer       See the introductory descrip  
                              tion.                         
SDTRef          QuotedString  See the introductory descrip  
                              tion.                         
----------------------------------------------------------

Service Reply

SEDISPLAYKEYREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

SDT Reference Errors

List Key

Description

Request to list all objects referred by SDTRef, that have at least one associated attribute that matches the keys ProprietaryKey and AttributeKey.

SDTRef is typically a diagram, but could also be a page or a specific symbol. The response is a count and a list of SDTRef to all objects that match the keys.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SELISTKEY
---------------------------------------------------
Parameter       Type          Description            
---------------------------------------------------
ProprietaryKey  integer       See the introductory   
                              description.           
AttributeKey    integer       See the introductory   
                              description.           
SDTRef          QuotedString  See the introductory   
                              description.           
---------------------------------------------------

Service Reply

SELISTKEYREPLY
---------------------------------------------------
Parameter  Type          Description                 
---------------------------------------------------
status     integer       Service reply status.       
NoOfKeys   integer       Number of matching keys.    
SDTRef+    QuotedString  A list of SDT references.   
---------------------------------------------------

Errors

SDT Reference Errors

Create Attribute

Description

Request add a new attribute to the symbol that matches the SDT reference SDTRef.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SECREATEATTRIBUTE
--------------------------------------------------------------
Parameter       Type          Description                       
--------------------------------------------------------------
ProprietaryKey  integer       A key that allows the external    
                              user / tool to distinguish his    
                              extensions from other users' /    
                              tools'.                           
AttributeKey    integer       A key that allows the external    
                              user / tool to classify his own   
                              extension.                        
SDTRef          QuotedString  A valid SDT reference identi      
                              fying the object.                 
datainterpret   integer       Defines how data is to be         
                              interpreted. The following        
                              values are recognized:            
                              Should be set to 0.               
comment         QuotedString  An explanatory (readable)         
                              comment.                          
MenuChoice      QuotedString  The name of the pop-up            
                              menu choice that will be          
                              appended to the tool's pop-up     
                              menu, upon selection of the       
                              symbol.                           
dataLen         integer       Length of data.                   
data            ByteString    The user's data. A byte string    
                              from SDT's point of view.         
--------------------------------------------------------------

Service Reply

SECREATEATTRIBUTEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

SDT Reference Errors
Error in match

Update Attribute

Description

Request to update the attribute that matches the search criteria (SDTRef, ProprietaryKey, AttributeKey). If an attribute matches the search keys, then the entire attribute's contents will be updated (replaced) with new contents.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEUPDATEATTRIBUTE
----------------------------------------------------------
Parameter       Type          Description                   
----------------------------------------------------------
ProprietaryKey  integer       A key that allows the         
                              external user / tool to dis   
                              tinguish his extensions       
                              from other users' / tools'.   
AttributeKey    integer       A key that allows the         
                              external user / tool to clas  
                              sify his own extension.       
SDTRef          QuotedString  A valid SDT reference         
                              identifying the object.       
datainterpret   integer       Defines how data is to be     
                              interpreted. The following    
                              values are recognized:        
                              Should be set to 0.           
comment         QuotedString  An explanatory (readable)     
                              comment.                      
MenuCchoice     QuotedString  The name of the pop-up        
                              menu choice that will be      
                              appended to the tool's pop-   
                              up menu, upon selection of    
                              the symbol.                   
dataLen         integer       Length of data.               
data            ByteString    The user's data. A byte       
                              string from SDT's point of    
                              view.                         
----------------------------------------------------------

Service Reply

SEUPDATEATTRIBUTEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

SDT Reference Errors
Error in match

Read Attribute

Description

Request to read the attribute(s) that match(es) the keys and the diagram identified by SDTRef. The SDTRef reference should contain a page attribute.

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEREADATTRIBUTE
----------------------------------------------------------
Parameter       Type          Description                   
----------------------------------------------------------
ProprietaryKey  integer       See the introductory descrip  
                              tion.                         
AttributeKey    integer       See the introductory descrip  
                              tion.                         
SDTRef          QuotedString  See the introductory descrip  
                              tion.                         
----------------------------------------------------------

Service Reply

SEREADATTRIBUTEREPLY
-------------------------------------------------------------
Parameter      Type          Description                       
-------------------------------------------------------------
status         integer       Service reply status.             
DataInterpret  integer       Type of data, always 0.           
comment        QuotedString  Comment text.                     
MenuChoice     QuotedString  The defined menu choice.          
dataLen        integer       Length of binary data.            
data           ByteString    Data associated to the extended   
                             attribute.                        
-------------------------------------------------------------

Errors

SDT Reference Errors
Error in match

Delete Attribute

Description

Request to delete the attribute that matches the search criteria (SDTRef, ProprietaryKey, AttributeKey).

Tools Supporting the Service

SET_SDLE
SET_MSCE

Service Request

SEDELETEATTRIBUTE
----------------------------------------------------------
Parameter       Type          Description                   
----------------------------------------------------------
ProprietaryKey  integer       See the introductory descrip  
                              tion.                         
AttributeKey    integer       See the introductory descrip  
                              tion.                         
SDTRef          QuotedString  See the introductory descrip  
                              tion.                         
----------------------------------------------------------

Service Reply

SEDELETEATTRIBUTEREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

SDT Reference Errors
More than one object match the search
No object match the search

Information Server Services

Load Definition File

Description

Loads a file containing external signal definitions into the Information Server. The contents of such a file are then made available via the Signal Dictionary functionality found in the SDL Editor.

The Information Server could read any ASCII file, but for efficient usage, the format of the files should contain one signal definition per line.

Tools Supporting the Service

SET_INFOSERVER

Service Request

SELOADDEFINITIONMAP
-----------------------------------------------------------
Parameter  Type     Description                              
-----------------------------------------------------------
fileName   string   Name of the file to load.                
tag        integer  Is used to either add or remove a file.  
                    0 = Add definition                       
                    1 = Remove definition.                   
-----------------------------------------------------------

Service Reply

SELOADDEFINITIONMAPREPLY
-----------------------------------------
Parameter  Type     Description            
-----------------------------------------
status     integer  Service reply status.  
-----------------------------------------

Errors

File already added
File was not added before

Notifications

The notifications inform the environment when something significantly in SDT happens. Notifications are only available as PostMaster messages.

To receive a notification one must subscribe on that particular notification (or on all notifications). This is accomplished either statically, by an entry in an additional configuration file, or dynamically by the SDT services Add Tool and Add Tool Subscription.

Overview Of Available Notifications

Tool notifications

--------------------------------------
Message        Description              
--------------------------------------
SESTARTNOTIFY  When a tool is started.  
SESTOPNOTIFY   When a tool is stopped.  
--------------------------------------

Diagram notifications

------------------------------------------------
Message         Description                       
------------------------------------------------
SELOADNOTIFY    When a diagram is loaded.         
SEUNLOADNOTIFY  When a diagram is unloaded.       
SEDIRTYNOTIFY   When a diagram becomes modified.  
SESAVENOTIFY    When a diagram is saved.          
SESDLNEWNOTIFY  When an SDL diagram is created.   
SEMSCNEWNOTIFY  When an MSC diagram is created.   
------------------------------------------------

Start Notify

Description

This message is broadcasted when a new tool is started. That is, when it connects to the PostMaster. It is sent automatically by the SPInit function.

Tools Issuing the Notification

The started tool

Notification

SESTARTNOTIFY
------------------------------------------------------------
Parameter  Type     Description                               
------------------------------------------------------------
toolType   integer  The kind of tool that was started.        
argv0      string   The filename (with a complete path) of    
                    the started tool as obtained by reading   
                    argv[0].                                  
------------------------------------------------------------

Stop Notify

Description

This message is broadcasted when the tool disconnects from the PostMaster and terminates.

Tools Issuing the Notification

The tool which stops

Notification

SESTOPNOTIFY
--------------------------------------------------
Parameter  Type     Description                     
--------------------------------------------------
toolType   integer  The kind of tool that stopped.  
--------------------------------------------------

Load Notify

Description

Broadcasted when the diagram is loaded in an editor.

Tools Issuing the Notification

SET_SDLE
SET_MSCE

Notification

SELOADNOTIFY
---------------------------------------------------------
Parameter    Type     Description                          
---------------------------------------------------------
bufId        integer  Buffer id of the loaded diagram.     
fileName     string   Name of the loaded file.             
diagramType  integer  Diagram type of the loaded diagram.  
diagramName  string   Diagram name of the loaded diagram.  
---------------------------------------------------------

Unload Notify

Description

Broadcasted when the diagram is unloaded in the Editor. No assumptions could be made whether or not the diagram was saved. The buffer id of the unloaded diagram is then not longer valid and cannot be used anymore.

Tools Issuing the Notification

SET_SDLE
SET_MSCE

Notification

SEUNLOADNOTIFY
------------------------------------------------------
Parameter  Type     Description                         
------------------------------------------------------
bufId      integer  Buffer id of the unloaded diagram.  
------------------------------------------------------

Dirty Notify

Description

Broadcasted when a diagram becomes dirty, i.e. when the user has modified the diagram.

Tools Issuing the Notification

SET_SDLE
SET_MSCE

Notification

SEDIRTYNOTIFY
---------------------------------------------------------------
Parameter  Type     Description                                  
---------------------------------------------------------------
bufId      integer  Buffer id of the diagram that became dirty.  
---------------------------------------------------------------

Save Notify

Description

The message is broadcasted when a diagram is saved.

Tools Issuing the Notification

SET_SDLE SET_MSCE

Notification

SESAVENOTIFY
----------------------------------------------------------
Parameter  Type     Description                             
----------------------------------------------------------
bufId      integer  Buffer id of the saved diagram.         
fileName   string   The filename in which the diagram was   
                    saved.                                  
----------------------------------------------------------

SDL New Notify

Description

Broadcasted when a diagram is created in the SDL Editor. In this case a Load Notify is not broadcasted.

Tools Issuing the Notification

SET_SDLE

Notification

SESDLNEWNOTIFY
---------------------------------------------------------------
Parameter    Type          Description                           
---------------------------------------------------------------
bufId        integer       Buffer id of the new diagram.         
virtuality   string        Kind of virtuality                    
diagramType  integer       Type of diagram.                      
diagramName  string        Name of the diagram.                  
qualifier    QuotedString  A qualifier for the new diagram.      
                           The qualifier is not a full quali     
                           fier, since it does not include the   
                           diagram path to the root dia          
                           gram.                                 
---------------------------------------------------------------

MSC New Notify

Description

Broadcasted when a diagram is created in the MSC Editor. In this case a Load Notify is not broadcasted.

Tools Issuing the Notification

SET_MSCE

Notification

SEMSCNEWNOTIFY
---------------------------------------------------
Parameter    Type     Description                    
---------------------------------------------------
bufId        integer  Buffer id of the new diagram.  
diagramName  string   Name of the new diagram.       
---------------------------------------------------

Auxiliary messages

Communicating with Simulators

Description

SESDLSIGNAL is sent by an SDT simulator when it sends an SDL signal to its SDL environment. Other simulators (or any applications connected to the PostMaster) can then receive the message and send back messages of the same type.

The PIds consist of a UNIX PId (an integer) and an SDL process instance number (a hex number), which normally is used only in comparisons. The PIds may be used to uniquely identify a single receiver if several receivers exist, but can be ignored if only two tools are communicating

Tools Issuing and Recognizing the Message

SET_SDLENV

Message

SESDLSIGNAL
-------------------------------------------
Parameter          Type     Description      
-------------------------------------------
signalName         integer  SDL name of      
                            the sent signal  
globalReceiverPid  integer  See above.       
localReceiverPid   string   See above.       
globalSenderPid    integer  See above.       
localsenderPid     string   See above.       
signalParam        string   Sea above.       
-------------------------------------------

PostMaster Operation Failed

SEOPFAILED

Description

SEOPFAILED is sent by the PostMaster when an internal problem inhibited a message to be handled properly. Three major categories of errors exists:

Tools Issuing and Recognizing the Message

SET_POST

Message

SEOPFAILED
---------------------------------------------------------------
Parameter     Type     Description                               
---------------------------------------------------------------
message       integer  The message causing the error.            
severity      integer  Kind of error.                            
pid           integer  The PId of the subscriber (if a spe       
                       cific subscriber was involved).           
errorCode     integer  The error itself.                         
messageParam  string   The remaining information is the          
                       data (or the first part of the data) of   
                       the message causing the error.            
---------------------------------------------------------------
 
Table of Contents Next Chapter