Sequence Chart Studio  svn HEAD revision
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | List of all members
DFSAreaTraverser Class Reference

#include <dfs_area_traverser.h>

Inheritance diagram for DFSAreaTraverser:
Inheritance graph
Collaboration diagram for DFSAreaTraverser:
Collaboration graph

Public Member Functions

 DFSAreaTraverser (const std::string &color="color")
 
void traverse (BMscPtr bmsc)
 
- Public Member Functions inherited from DFSEventsTraverser
 DFSEventsTraverser (const std::string &color="color")
 
virtual ~DFSEventsTraverser ()
 
void add_event_finished_listener (EventFinishedListener *l)
 
void add_white_event_found_listener (WhiteEventFoundListener *l)
 
void add_gray_event_found_listener (GrayEventFoundListener *l)
 
void add_black_event_found_listener (BlackEventFoundListener *l)
 
void add_event_successor_listener (EventSuccessorListener *l)
 
void add_send_receive_pair_listener (SendReceivePairListener *l)
 
void add_instance_finished_listener (InstanceFinishedListener *l)
 
virtual void cleanup_traversing_attributes ()
 
const MscElementPListget_reached_elements ()
 
void remove_white_event_found_listeners ()
 
void remove_gray_event_found_listeners ()
 
void remove_black_event_found_listeners ()
 
void remove_event_finished_listeners ()
 
void remove_event_successor_listeners ()
 
void remove_send_receive_pair_listeners ()
 
void remove_instance_finished_listeners ()
 
void remove_all_listeners ()
 

Protected Member Functions

void traverse_area (EventArea *area)
 
void traverse_event (Event *event)
 
- Protected Member Functions inherited from DFSEventsTraverser
virtual void traverse_area (EventArea *area, Event *predecessor=NULL)
 
virtual void traverse_matching_event (Event *event)
 
bool is_processed (Event *event)
 
void white_event_found (Event *e)
 
void gray_event_found (Event *e)
 
void black_event_found (Event *e)
 
void event_finished (Event *e)
 
void event_successor (Event *event, Event *successor)
 
void send_receive_pair (MessageEvent *send, MessageEvent *receive)
 
void instance_finished (Instance *i)
 
void set_color (Event *e, NodeColor c)
 
NodeColor get_color (Event *e)
 

Additional Inherited Members

- Static Public Member Functions inherited from DFSEventsTraverser
static EventPListPtr topology_order (BMscPtr b)
 
- Protected Attributes inherited from DFSEventsTraverser
MscElementPList m_reached_elements
 
EventPList m_colored_events
 
std::string m_color
 
EventFinishedListenerPList event_finished_listeners
 
WhiteEventFoundListenerPList white_event_found_listeners
 
GrayEventFoundListenerPList gray_event_found_listeners
 
BlackEventFoundListenerPList black_event_found_listeners
 
GrayEventFoundListenerPList grey_event_found_listeners
 
EventSuccessorListenerPList event_successor_listeners
 
SendReceivePairListenerPList send_receive_pair_listeners
 
InstanceFinishedListenerPList instance_finished_listeners
 

Detailed Description

Processes EventAreas' events in sequence and do not follow matching events during traversing.

Single EventAreas are traversed in depth first search manner.

Definition at line 30 of file dfs_area_traverser.h.

Constructor & Destructor Documentation

DFSAreaTraverser::DFSAreaTraverser ( const std::string color = "color")
inline

Definition at line 35 of file dfs_area_traverser.h.

Member Function Documentation

void DFSAreaTraverser::traverse ( BMscPtr  bmsc)
virtual

Traverses events in bmsc.

Events are traversed in depth first search manner.

Reimplemented from DFSEventsTraverser.

Definition at line 22 of file dfs_area_traverser.cpp.

References DFSEventsTraverser::cleanup_traversing_attributes(), and traverse_area().

void DFSAreaTraverser::traverse_area ( EventArea area)
protected

Definition at line 35 of file dfs_area_traverser.cpp.

References EventArea::get_minimal_events(), EventArea::is_empty(), and traverse_event().

Referenced by traverse().

void DFSAreaTraverser::traverse_event ( Event event)
protectedvirtual

The documentation for this class was generated from the following files:

SourceForge.net Logo
Generated on Fri Jan 15 2016 16:26:58 for Sequence Chart Studio by  doxygen