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

#include <footprint.h>

Inheritance diagram for Footprint:
Inheritance graph
Collaboration diagram for Footprint:
Collaboration graph

Public Member Functions

 Footprint (StartNode *start, size_t instances_count)
 
 Footprint (FootprintPtr previous, const MscElementPList &path, const ExtremeEvents &max_events_less, const ExtremeEvents &max_events_greater)
 
HMscNodeget_node ()
 
const MscElementPListget_path () const
 
FootprintPtr get_previous ()
 
- Public Member Functions inherited from ExtremeEvents
 ExtremeEvents ()
 
 ExtremeEvents (size_t instances_count)
 
bool operator< (const ExtremeEvents &other) const
 
void add_extreme_event (size_t instance, EDInstancesPtr &edis)
 
const EDInstancesPtrSetVectorget_events_instances () const
 

Private Attributes

MscElementPList m_path
 
FootprintPtr m_previous
 

Additional Inherited Members

- Protected Member Functions inherited from ExtremeEvents
int compare (const EDInstancesPtrSet &first, const EDInstancesPtrSet &second) const
 
- Protected Attributes inherited from ExtremeEvents
EDInstancesPtrSetVector m_events_instances
 

Detailed Description

Footprint of path in BMsc-graph.

Footprint is implementation of footprint (with lowercase f) suggested in article Decidable Race Condition in High-Level Message Sequence Charts by Jan Fousek, Vojtech Rehak and Petr Slovak.

Definition at line 155 of file footprint.h.

Constructor & Destructor Documentation

Footprint::Footprint ( StartNode start,
size_t  instances_count 
)

Creates new initial Footprint

Created Footprint doesn't reference neither ReferenceNode nor Footprint and is supposed to be predecessor (not neccessary direct) of the others Footprints.

Definition at line 125 of file footprint.cpp.

References m_path.

Footprint::Footprint ( FootprintPtr  previous,
const MscElementPList path,
const ExtremeEvents max_events_less,
const ExtremeEvents max_events_greater 
)

Creates new Footprint from previous Footprint and maximal events (denoted as MaxP in the article) of particular BMsc b.

The new Footprint is created likewise construction of footprint (with lowercase f) in the article.

Parameters
path- members of this list are copied into m_path, see m_path property for details about neccessary properties of this list
max_events_less- ExtremeEvents of b whose m_instances attribute is supposed to have lesser semantic.
max_events_greater- ExtremeEvents of b whose m_instances attribute is supposed to have greater semantic.

Definition at line 130 of file footprint.cpp.

References ExtremeEvents::get_events_instances(), ExtremeEvents::m_events_instances, m_path, and m_previous.

Member Function Documentation

HMscNode * Footprint::get_node ( )

Definition at line 203 of file footprint.cpp.

References m_path.

const MscElementPList & Footprint::get_path ( ) const

Definition at line 208 of file footprint.cpp.

References m_path.

FootprintPtr Footprint::get_previous ( )

Definition at line 213 of file footprint.cpp.

References m_previous.

Member Data Documentation

MscElementPList Footprint::m_path
private

Path in HMsc which built this Footprint.

This path must contain exactly one ReferenceNode - the last one element of the m_path or must contain only one element - StartNode (initial Footprint). All remaining members of this m_path are supposed to be ConnectionNodes.

Definition at line 168 of file footprint.h.

Referenced by Footprint(), get_node(), and get_path().

FootprintPtr Footprint::m_previous
private

Previous Footprint which was this one created from.

Definition at line 173 of file footprint.h.

Referenced by Footprint(), and get_previous().


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