Sequence Chart Studio  svn HEAD revision
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Static Public Member Functions | Private Types | Private Attributes | Friends | List of all members
MscTimeIntervalSet< T > Class Template Reference

List of intervals Keeping sorted list of intervals, dont have intersection. More...

#include <time.h>

Collaboration diagram for MscTimeIntervalSet< T >:
Collaboration graph

Public Member Functions

 MscTimeIntervalSet ()
 
 MscTimeIntervalSet (const std::string &s_interval)
 
void assign (const std::string &s_interval)
 
 MscTimeIntervalSet (const MscTimeInterval< T > &interval)
 
 MscTimeIntervalSet (const MscTimeIntervalSet &set)
 
MscTimeInterval< T > insert (const MscTimeInterval< T > &interval)
 inserts interval to the list on the right possition find the right place in the list for m_begin and eats all the interval on the way to the right place of m_end More...
 
const MscTimeIntervalSet operator+ (const MscTimeIntervalSet &set)
 
MscTimeIntervalSet operator- (const MscTimeIntervalSet &set)
 
const MscTimeIntervalSetoperator= (const MscTimeIntervalSet &set)
 
const bool operator== (const MscTimeIntervalSet &set)
 
const bool operator!= (const MscTimeIntervalSet &set)
 
bool includes (const T &value) const
 
void clear ()
 
const IntervalListget_set () const
 
bool is_empty () const
 
void set_infinity ()
 
bool is_infinity () const
 
std::string to_string ()
 prints interval set to the string More...
 

Static Public Member Functions

static MscTimeIntervalSet< T > set_union (const MscTimeIntervalSet &left, const MscTimeIntervalSet &right)
 
static MscTimeIntervalSet< T > set_intersection (const MscTimeIntervalSet &left, const MscTimeIntervalSet &right)
 
static MscTimeIntervalSet< T > components_max (const MscTimeIntervalSet &left, const MscTimeIntervalSet &right)
 
static MscTimeIntervalSet interval_inverse (const MscTimeIntervalSet &inter)
 
static MscTimeIntervalSet< T > zero_max_interval (const MscTimeIntervalSet &left, const MscTimeIntervalSet &right)
 makes intersection of arguments if intersection is empty set returns empty set else returns interval [0,maxValue(intersection) with appropriate right boundary ("]" or ")") More...
 

Private Types

typedef std::list
< MscTimeInterval< T > > 
IntervalList
 

Private Attributes

IntervalList m_set
 

Friends

std::ostream & operator<< (std::ostream &os, const MscTimeIntervalSet< T > &interval)
 output stream of interval set Intervals are connected by "+" character interval+interval+interval+interval+... (3,4)+(5,6)+[10,13] More...
 

Detailed Description

template<class T>
class MscTimeIntervalSet< T >

List of intervals Keeping sorted list of intervals, dont have intersection.

Definition at line 994 of file time.h.

Member Typedef Documentation

template<class T>
typedef std::list< MscTimeInterval<T> > MscTimeIntervalSet< T >::IntervalList
private

Definition at line 997 of file time.h.

Constructor & Destructor Documentation

template<class T>
MscTimeIntervalSet< T >::MscTimeIntervalSet ( )
inline

Definition at line 1001 of file time.h.

template<class T>
MscTimeIntervalSet< T >::MscTimeIntervalSet ( const std::string s_interval)
inline

Definition at line 1003 of file time.h.

template<class T>
MscTimeIntervalSet< T >::MscTimeIntervalSet ( const MscTimeInterval< T > &  interval)
inline

Definition at line 1034 of file time.h.

template<class T>
MscTimeIntervalSet< T >::MscTimeIntervalSet ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1039 of file time.h.

Member Function Documentation

template<class T>
void MscTimeIntervalSet< T >::assign ( const std::string s_interval)
inline

Definition at line 1008 of file time.h.

Referenced by TimeRelation::assign_label().

template<class T>
void MscTimeIntervalSet< T >::clear ( void  )
inline

Definition at line 1254 of file time.h.

template<class T>
static MscTimeIntervalSet<T> MscTimeIntervalSet< T >::components_max ( const MscTimeIntervalSet< T > &  left,
const MscTimeIntervalSet< T > &  right 
)
inlinestatic

Definition at line 1324 of file time.h.

template<class T>
const IntervalList& MscTimeIntervalSet< T >::get_set ( ) const
inline
template<class T>
bool MscTimeIntervalSet< T >::includes ( const T &  value) const
inline

Definition at line 1241 of file time.h.

template<class T>
MscTimeInterval<T> MscTimeIntervalSet< T >::insert ( const MscTimeInterval< T > &  interval)
inline
template<class T>
static MscTimeIntervalSet MscTimeIntervalSet< T >::interval_inverse ( const MscTimeIntervalSet< T > &  inter)
inlinestatic

Definition at line 1343 of file time.h.

template<class T>
bool MscTimeIntervalSet< T >::is_empty ( ) const
inline
template<class T>
bool MscTimeIntervalSet< T >::is_infinity ( ) const
inline

Definition at line 1277 of file time.h.

Referenced by TimeRelation::get_label().

template<class T>
const bool MscTimeIntervalSet< T >::operator!= ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1234 of file time.h.

template<class T>
const MscTimeIntervalSet MscTimeIntervalSet< T >::operator+ ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1185 of file time.h.

template<class T>
MscTimeIntervalSet MscTimeIntervalSet< T >::operator- ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1202 of file time.h.

template<class T>
const MscTimeIntervalSet& MscTimeIntervalSet< T >::operator= ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1219 of file time.h.

template<class T>
const bool MscTimeIntervalSet< T >::operator== ( const MscTimeIntervalSet< T > &  set)
inline

Definition at line 1227 of file time.h.

template<class T>
void MscTimeIntervalSet< T >::set_infinity ( )
inline

Definition at line 1268 of file time.h.

Referenced by TimeRelation::assign_label().

template<class T>
static MscTimeIntervalSet<T> MscTimeIntervalSet< T >::set_intersection ( const MscTimeIntervalSet< T > &  left,
const MscTimeIntervalSet< T > &  right 
)
inlinestatic

Definition at line 1303 of file time.h.

template<class T>
static MscTimeIntervalSet<T> MscTimeIntervalSet< T >::set_union ( const MscTimeIntervalSet< T > &  left,
const MscTimeIntervalSet< T > &  right 
)
inlinestatic

Definition at line 1290 of file time.h.

template<class T>
std::string MscTimeIntervalSet< T >::to_string ( )
inline

prints interval set to the string

Returns
interval set string

Definition at line 1381 of file time.h.

template<class T>
static MscTimeIntervalSet<T> MscTimeIntervalSet< T >::zero_max_interval ( const MscTimeIntervalSet< T > &  left,
const MscTimeIntervalSet< T > &  right 
)
inlinestatic

makes intersection of arguments if intersection is empty set returns empty set else returns interval [0,maxValue(intersection) with appropriate right boundary ("]" or ")")

Definition at line 1362 of file time.h.

Friends And Related Function Documentation

template<class T>
std::ostream& operator<< ( std::ostream &  os,
const MscTimeIntervalSet< T > &  interval 
)
friend

output stream of interval set Intervals are connected by "+" character interval+interval+interval+interval+... (3,4)+(5,6)+[10,13]

Returns
stream with printed interval set

Definition at line 1396 of file time.h.

Member Data Documentation

template<class T>
IntervalList MscTimeIntervalSet< T >::m_set
private

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

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