choco.cp.common.util.preprocessor.detector.scheduling
Class DisjunctiveGraph<E extends ITemporalRelation<?,?>>

java.lang.Object
  extended by choco.cp.common.util.preprocessor.detector.scheduling.DisjunctiveGraph<E>
All Implemented Interfaces:
IDotty
Direct Known Subclasses:
DisjunctiveModel, DisjunctiveSModel

public class DisjunctiveGraph<E extends ITemporalRelation<?,?>>
extends Object
implements IDotty


Field Summary
protected static String ARC_COLOR
           
protected static String ARROW_BIG
           
protected static String ARROW_DOT
           
protected static String DIR_BWD
           
protected  BitSet[] disjGraph
           
protected static String EDGE_COLOR
           
protected  int nbArcs
           
protected  int nbEdges
           
 int nbNodes
           
protected  BitSet[] precGraph
           
protected  gnu.trove.TIntIntHashMap setupTimes
           
 gnu.trove.TIntObjectHashMap<E> storedConstraints
           
protected static String STY_BOLD
           
protected static String STY_BOLD_DASHED
           
 
Constructor Summary
DisjunctiveGraph(int n)
           
 
Method Summary
 void addArc(int i, int j, int setupTime)
           
 void addArc(int i, int j, int setupTime, E rel)
           
 void addEdge(int i, int j, E rel)
           
protected  void addEdge(int i, int j, int forwardSetup, int backwardSetup, E rel)
           
static void andNot(BitSet[] graph, BitSet[] reduction)
           
 boolean containsArc(int i, int j)
           
 boolean containsConstraint(int i, int j)
           
 boolean containsEdge(int i, int j)
           
 boolean containsRelation(int i, int j)
           
static BitSet[] copy(BitSet[] graph)
           
 BitSet[] copyPrecGraph()
           
protected  void deleteArc(int i, int j)
           
static void floydMarshallClosure(BitSet[] graph)
           
static void floydMarshallReduction(BitSet[] graph)
           
protected  String getArcLabel(int i, int j)
           
static BitSet[] getClosure(BitSet[] graph)
           
 E getConstraint(int i, int j)
           
 E getEdgeConstraint(int i, int j)
           
protected  String getEdgeLabel(int i, int j)
           
 int getKey(int i, int j)
           
 int getNbArcs()
           
 int getNbEdges()
           
 int getNbNodes()
           
 BitSet[] getPrecClosure()
           
static BitSet[] getReduction(BitSet[] graph)
           
static BitSet[] getTransitive(BitSet[] graph)
           
 boolean isEmpty()
           
 boolean isFixed()
           
 void safeAddArc(int i, int j, int setupTime)
           
protected  void setPrecClosure()
           
 int setupTime(int i, int j)
           
 String setupTimesToString()
           
 String toDotty()
           
protected  StringBuilder toDottyNodes()
           
 String toString()
           
protected  void unsetPrecClosure()
           
protected  void writeArcAttributes(StringBuilder b, int i, int j)
           
protected  void writeAttributes(StringBuilder b, String... options)
           
protected  void writeEdge(StringBuilder b, E rel, int i, int j)
           
protected  void writeEdgeAttributes(StringBuilder b, E rel, int i, int j)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

nbNodes

public final int nbNodes

nbArcs

protected int nbArcs

nbEdges

protected int nbEdges

precGraph

protected final BitSet[] precGraph

disjGraph

protected final BitSet[] disjGraph

setupTimes

protected final gnu.trove.TIntIntHashMap setupTimes

storedConstraints

public final gnu.trove.TIntObjectHashMap<E extends ITemporalRelation<?,?>> storedConstraints

ARC_COLOR

protected static final String ARC_COLOR
See Also:
Constant Field Values

EDGE_COLOR

protected static final String EDGE_COLOR
See Also:
Constant Field Values

STY_BOLD_DASHED

protected static final String STY_BOLD_DASHED
See Also:
Constant Field Values

STY_BOLD

protected static final String STY_BOLD
See Also:
Constant Field Values

ARROW_DOT

protected static final String ARROW_DOT
See Also:
Constant Field Values

ARROW_BIG

protected static final String ARROW_BIG
See Also:
Constant Field Values

DIR_BWD

protected static final String DIR_BWD
See Also:
Constant Field Values
Constructor Detail

DisjunctiveGraph

public DisjunctiveGraph(int n)
Method Detail

getNbNodes

public final int getNbNodes()

getNbArcs

public final int getNbArcs()

getNbEdges

public final int getNbEdges()

getKey

public final int getKey(int i,
                        int j)

isEmpty

public final boolean isEmpty()

setPrecClosure

protected final void setPrecClosure()

unsetPrecClosure

protected final void unsetPrecClosure()

copyPrecGraph

public final BitSet[] copyPrecGraph()

getPrecClosure

public final BitSet[] getPrecClosure()

copy

public static final BitSet[] copy(BitSet[] graph)

getClosure

public static final BitSet[] getClosure(BitSet[] graph)

floydMarshallClosure

public static final void floydMarshallClosure(BitSet[] graph)

getReduction

public static final BitSet[] getReduction(BitSet[] graph)

floydMarshallReduction

public static final void floydMarshallReduction(BitSet[] graph)

getTransitive

public static final BitSet[] getTransitive(BitSet[] graph)

andNot

public static final void andNot(BitSet[] graph,
                                BitSet[] reduction)

addArc

public final void addArc(int i,
                         int j,
                         int setupTime)

addArc

public final void addArc(int i,
                         int j,
                         int setupTime,
                         E rel)

deleteArc

protected void deleteArc(int i,
                         int j)

safeAddArc

public final void safeAddArc(int i,
                             int j,
                             int setupTime)

addEdge

public final void addEdge(int i,
                          int j,
                          E rel)

addEdge

protected final void addEdge(int i,
                             int j,
                             int forwardSetup,
                             int backwardSetup,
                             E rel)

isFixed

public final boolean isFixed()

setupTime

public final int setupTime(int i,
                           int j)

containsArc

public final boolean containsArc(int i,
                                 int j)

containsEdge

public final boolean containsEdge(int i,
                                  int j)

containsRelation

public final boolean containsRelation(int i,
                                      int j)

containsConstraint

public final boolean containsConstraint(int i,
                                        int j)

getConstraint

public final E getConstraint(int i,
                             int j)

getEdgeConstraint

public final E getEdgeConstraint(int i,
                                 int j)

toString

public String toString()
Overrides:
toString in class Object

setupTimesToString

public final String setupTimesToString()

getArcLabel

protected final String getArcLabel(int i,
                                   int j)

getEdgeLabel

protected final String getEdgeLabel(int i,
                                    int j)

writeAttributes

protected void writeAttributes(StringBuilder b,
                               String... options)

writeArcAttributes

protected void writeArcAttributes(StringBuilder b,
                                  int i,
                                  int j)

writeEdge

protected void writeEdge(StringBuilder b,
                         E rel,
                         int i,
                         int j)

writeEdgeAttributes

protected void writeEdgeAttributes(StringBuilder b,
                                   E rel,
                                   int i,
                                   int j)

toDottyNodes

protected StringBuilder toDottyNodes()

toDotty

public final String toDotty()
Specified by:
toDotty in interface IDotty


Copyright © 2012. All Rights Reserved.