final class Period
extends AnyVal

A period is a contiguous sequence of phase ids in some run. It is coded as follows:

sign, always 0 1 bit runid 17 bits last phase id: 7 bits #phases before last: 7 bits

// Dmitry: sign == 0 isn't actually always true, in some cases phaseId == -1 is used for shifts, that easily creates code < 0

Constructors

Period ( code: Int )

Members

val code : Int
def & ( that: Period ) : Period

The intersection of two periods

The intersection of two periods

def contains ( that: Period ) : Boolean

Does this period contain given period?

Does this period contain given period?

def containsPhaseId ( id: PhaseId ) : Boolean
def firstPhaseId : Int

The first phase of this period

The first phase of this period

def lastPhaseId : PhaseId

The last phase of this period

The last phase of this period

def overlaps ( that: Period ) : Boolean

Does this period overlap with given period?

Does this period overlap with given period?

def phaseId : PhaseId

The phase identifier of this single-phase period.

The phase identifier of this single-phase period.

def runId : RunId

The run identifier of this period.

The run identifier of this period.

override def toString : String
def | ( that: Period ) : Period

The smallest period containing two periods

The smallest period containing two periods