Filtering sequence diagram events

Runtime Tracing for C and C++

Use the Event Editor to create or modify event triggers or filters for UML sequence diagrams:

  • Filters: Specified events are hidden or shown in the UML sequence diagram.

  • Start triggers: The UML/SD Viewer starts displaying the sequence diagram when a specified event is encountered. If no event matches the output of the application, the diagram will appear blank.

  • Stop triggers: The UML/SD Viewer stops displaying the sequence diagram when a specified event is encountered.

Events can be related to messages, instances, notes, synchronizations, actions or loops.

To define an event or filter:

  1. Specify a name for the event.

  2. Select the type of UML element you want to define for the event and select Activate. Several types of elements can be activated for a single filter or trigger event.

  3. Click More or Fewer to add or remove line to the event criteria.

  4. From the drop-down criteria box, select a criteria for the filter, and an argument.

  5. Arguments must reflect an exact match for the criteria. Pay particular attention when referring to labels that appear in the sequence diagram since they may be truncated.

  6. You can use wildcards (*) or regular expressions by selecting the corresponding option.

  7. Click the button to enable or disable case sensitivity in the criteria.

  8. You can add or remove a criteria by clicking the More or Fewer buttons.

  9. Click Ok.

Message Criteria

  • Name: Specifies a message name as the filter criteria.

  • Internal message: Considers all messages other than constructor calls coming from any internal source, as opposed to those messages coming from the World instance.

  • From Instance: Considers all messages other than constructor calls prior to the first message sent from the specified object

  • To Instance: Considers out all messages other than constructor calls if any message is sent to the specified object

  • From World: Considers all messages received from the World instance

  • To World: Considers all messages sent to the World instance

Instance Criteria

  • Name: Specifies an instance name as the filter criteria

  • Instance child of: Specifies a child instance of the specified class.

Note Criteria

  • All: Considers all notes

  • Name: Specifies a note name

  • All message notes: Considers any note attached to a message

  • All instance notes: Considers any note attached to an instance

  • Instance child of: Specifies a note attached to an instance of the specified class

  • Note on message named: Considers a note attached to a specified message

  • With style named: Considers a note with the specified style attributes

Synchronization Criteria

  • All: Considers all synchronization events

  • Name: Specifies a synchronization name

Action Criteria

  • All: Considers all actions

  • Name: Specifies an action name

  • From Instance: Considers an action performed by the specified object

  • From World: Considers all actions performed by the World instance

  • Instance child of: Specifies an action performed by an instance of the specified class

  • With style named: Considers an action with the specified style attributes

Loop Criteria

  • All: Considers all loops

  • Name: Specifies a loop name

Boolean Operators

  • All Except expresses a NOT operation on the criteria

  • Match All performs an AND operation on the series of criteria

  • Match Any performs an OR operation on the series of criteria

Related Topics

Applying Filters | Sequence Diagram Triggers | Understanding UML Sequence Diagrams