tesl
Class ClockSet
java.lang.Object
tesl.ClockSet
public class ClockSet
- extends java.lang.Object
|
Method Summary |
<T extends java.lang.Comparable<? super T>>
Clock<T> |
|
addClock(Clock<T> c)
|
ImplicationRelation |
addImplicationRelation(ImplicationRelation r)
|
TagRelation<?,?> |
addTagRelation(TagRelation<?,?> t)
|
private boolean |
alignFloatingTime()
|
protected
<T extends java.lang.Comparable<? super T>>
boolean |
|
checkFirstTick(Clock<T> clk)
|
boolean |
checkNoNow()
|
private void |
cleanUpClocks()
|
private static
<T extends java.lang.Comparable<? super T>,U extends java.lang.Comparable<? super U>>
int |
|
compareTags(Tag<T> t1,
Tag<U> t2)
|
boolean |
dependsOn(ImplicationRelation r1,
ImplicationRelation r2)
|
protected void |
doTopoSort()
|
private void |
findTimeIslands()
|
java.lang.Iterable<Clock<?>> |
getClocks()
|
java.lang.Iterable<ImplicationRelation> |
getImplicationRelations()
|
ClockSetMark |
getMark()
|
java.lang.Iterable<TagRelation<?,?>> |
getTagRelations()
|
private static
<T extends java.lang.Comparable<? super T>>
Tick<T> |
|
getTickWithTag(Clock<T> clk,
Tag<? extends java.lang.Comparable<?>> tag)
|
private
<T extends java.lang.Comparable<? super T>>
void |
|
mergeNullTick(Clock<T> clock)
|
protected boolean |
mergeTicks()
|
void |
printClocks(java.util.logging.Level level,
java.lang.String message)
|
private static
<U extends java.lang.Comparable<? super U>,V extends java.lang.Comparable<? super V>>
Tag<V> |
|
processConversion(TagRelation<U,V> rel,
Tag<?> tag)
|
private static
<U extends java.lang.Comparable<? super U>,V extends java.lang.Comparable<? super V>>
Tag<U> |
|
processRevConversion(TagRelation<U,V> rel,
Tag<?> tag)
|
private static
<T extends java.lang.Comparable<? super T>>
void |
|
removeTick(Clock<T> clk,
Tick<? extends java.lang.Comparable<?>> tick)
|
void |
resetClocks()
|
void |
setMark(ClockSetMark mark)
|
private static
<T extends java.lang.Comparable<? super T>>
void |
|
setTag(Tick<T> tick,
Tag<? extends java.lang.Comparable<?>> tag)
|
ClockSet |
solve()
|
<T extends java.lang.Comparable<T>>
ClockSet |
|
solve(Tick<T> tick)
|
protected boolean |
solveTags()
|
protected boolean |
solveTicks()
|
private java.util.Map<Clock<? extends java.lang.Comparable<?>>,Tag<? extends java.lang.Comparable<?>>> |
tagClosure(Clock<? extends java.lang.Comparable<?>> clock,
Tag<? extends java.lang.Comparable<?>> tag)
|
java.lang.String |
toString()
|
java.lang.String |
toString(java.lang.String message)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ClockLogger
public static final java.lang.String ClockLogger
- See Also:
- Constant Field Values
clocks_
private java.util.List<Clock<?>> clocks_
c_implications_
private java.util.List<ImplicationRelation> c_implications_
t_relations_
private java.util.List<TagRelation<?,?>> t_relations_
masters_
private java.util.Map<Clock<?>,java.util.List<ImplicationRelation>> masters_
slaves_
private java.util.Map<Clock<?>,java.util.List<ImplicationRelation>> slaves_
floatingGhosts_
private java.util.List<Tick<? extends java.lang.Comparable<?>>> floatingGhosts_
time_islands_
private java.util.Map<Clock<? extends java.lang.Comparable<?>>,java.util.Set<Clock<? extends java.lang.Comparable<?>>>> time_islands_
ClockSet
public ClockSet()
addClock
public <T extends java.lang.Comparable<? super T>> Clock<T> addClock(Clock<T> c)
addImplicationRelation
public ImplicationRelation addImplicationRelation(ImplicationRelation r)
addTagRelation
public TagRelation<?,?> addTagRelation(TagRelation<?,?> t)
getClocks
public java.lang.Iterable<Clock<?>> getClocks()
resetClocks
public void resetClocks()
getImplicationRelations
public java.lang.Iterable<ImplicationRelation> getImplicationRelations()
getTagRelations
public java.lang.Iterable<TagRelation<?,?>> getTagRelations()
getMark
public ClockSetMark getMark()
setMark
public void setMark(ClockSetMark mark)
findTimeIslands
private void findTimeIslands()
solve
public ClockSet solve()
throws java.lang.Exception
- Throws:
java.lang.Exception
solve
public <T extends java.lang.Comparable<T>> ClockSet solve(Tick<T> tick)
throws java.lang.Exception
- Throws:
java.lang.Exception
cleanUpClocks
private void cleanUpClocks()
checkNoNow
public boolean checkNoNow()
checkFirstTick
protected <T extends java.lang.Comparable<? super T>> boolean checkFirstTick(Clock<T> clk)
dependsOn
public boolean dependsOn(ImplicationRelation r1,
ImplicationRelation r2)
doTopoSort
protected void doTopoSort()
solveTicks
protected boolean solveTicks()
solveTags
protected boolean solveTags()
throws java.lang.Exception
- Throws:
java.lang.Exception
setTag
private static <T extends java.lang.Comparable<? super T>> void setTag(Tick<T> tick,
Tag<? extends java.lang.Comparable<?>> tag)
removeTick
private static <T extends java.lang.Comparable<? super T>> void removeTick(Clock<T> clk,
Tick<? extends java.lang.Comparable<?>> tick)
getTickWithTag
private static <T extends java.lang.Comparable<? super T>> Tick<T> getTickWithTag(Clock<T> clk,
Tag<? extends java.lang.Comparable<?>> tag)
tagClosure
private java.util.Map<Clock<? extends java.lang.Comparable<?>>,Tag<? extends java.lang.Comparable<?>>> tagClosure(Clock<? extends java.lang.Comparable<?>> clock,
Tag<? extends java.lang.Comparable<?>> tag)
throws java.lang.Exception
- Throws:
java.lang.Exception
mergeTicks
protected boolean mergeTicks()
throws java.lang.Exception
- Throws:
java.lang.Exception
processConversion
private static <U extends java.lang.Comparable<? super U>,V extends java.lang.Comparable<? super V>> Tag<V> processConversion(TagRelation<U,V> rel,
Tag<?> tag)
processRevConversion
private static <U extends java.lang.Comparable<? super U>,V extends java.lang.Comparable<? super V>> Tag<U> processRevConversion(TagRelation<U,V> rel,
Tag<?> tag)
compareTags
private static <T extends java.lang.Comparable<? super T>,U extends java.lang.Comparable<? super U>> int compareTags(Tag<T> t1,
Tag<U> t2)
mergeNullTick
private <T extends java.lang.Comparable<? super T>> void mergeNullTick(Clock<T> clock)
alignFloatingTime
private boolean alignFloatingTime()
throws java.lang.Exception
- Throws:
java.lang.Exception
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
toString
public java.lang.String toString(java.lang.String message)
printClocks
public void printClocks(java.util.logging.Level level,
java.lang.String message)