net.xqhs.graphs.matchingPlatform
Class GMPImplementation.PrincipalGraph

java.lang.Object
  extended by net.xqhs.util.config.Config
      extended by net.xqhs.util.logging.Unit
          extended by net.xqhs.graphs.graph.SimpleGraph
              extended by net.xqhs.graphs.matchingPlatform.TrackingGraph
                  extended by net.xqhs.graphs.matchingPlatform.GMPImplementation.PrincipalGraph
All Implemented Interfaces:
Graph, GraphMatchingPlatform.PlatformPrincipalGraph, GraphMatchingPlatform.PlatformShadowGraph, net.xqhs.util.config.Configurable
Direct Known Subclasses:
ContextGraph
Enclosing class:
GMPImplementation

public static class GMPImplementation.PrincipalGraph
extends TrackingGraph
implements GraphMatchingPlatform.PlatformPrincipalGraph, GraphMatchingPlatform.PlatformShadowGraph

An implementation of GraphMatchingPlatform.PlatformPrincipalGraph and GraphMatchingPlatform.PlatformShadowGraph that extends TrackingGraph.

Author:
Andrei Olaru

Nested Class Summary
 
Nested classes/interfaces inherited from class net.xqhs.graphs.matchingPlatform.TrackingGraph
TrackingGraph.Operation, TrackingGraph.Transaction
 
Nested classes/interfaces inherited from class net.xqhs.graphs.graph.SimpleGraph
SimpleGraph.NodeData
 
Nested classes/interfaces inherited from class net.xqhs.util.config.Config
net.xqhs.util.config.Config.ConfigLockedException
 
Field Summary
 
Fields inherited from class net.xqhs.graphs.matchingPlatform.TrackingGraph
history, isShadow, keepHistory, sequence, shadowQueues, transactionQueue
 
Fields inherited from class net.xqhs.graphs.graph.SimpleGraph
EDGE_LINE, EDGE_SEPARATOR, EDGE_TARGET, edges, nodes
 
Fields inherited from class net.xqhs.util.logging.Unit
DEFAULT_LEVEL, DEFAULT_UNIT_NAME
 
Constructor Summary
  GMPImplementation.PrincipalGraph()
          Default constructor.
protected GMPImplementation.PrincipalGraph(java.util.Queue<TrackingGraph.Transaction> transactionsLink, int initialSequence, Graph initialGraph)
          Protected constructor for constructing shadows of the principal graph.
 
Method Summary
 GraphMatchingPlatform.PlatformShadowGraph createShadowGraph()
          Creates a new shadow graph of this graph, based on the current state of the graph.
 
Methods inherited from class net.xqhs.graphs.matchingPlatform.TrackingGraph
add, addAll, addTransaction, applyTransaction, applyTransactionInternal, canIncrement, createShadow, createShadowQueue, getNextSequenceOperations, getSequence, incrementSequence, incrementSequence, incrementSequenceFastForward, incrementSequenceInternal, isShadow, keepHistory, performOperation, readFrom, remove, removeAll, toString, toString, toStringBasic
 
Methods inherited from class net.xqhs.graphs.graph.SimpleGraph
addEdge, addNode, computeDistancesFromUndirected, contains, getComponents, getEdges, getInEdges, getNodes, getNodesNamed, getOutEdges, getUnitName, m, n, removeEdge, removeNode, size, toDot
 
Methods inherited from class net.xqhs.util.logging.Unit
compose, dbg, doExit, getDefaultUnitName, l, le, lf, li, lock, lockedR, lr, lr, lw, setLink, setLink, setLogDisplay, setLogEnsureNew, setLoggerClass, setLoggerType, setLoggerTypeClass, setLogLevel, setLogReporter, setUnitName, setUnitName
 
Methods inherited from class net.xqhs.util.config.Config
build, ensureLocked, locked, lockedEx, makeDefaults
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.xqhs.graphs.matchingPlatform.GraphMatchingPlatform.PlatformPrincipalGraph
getSequence
 
Methods inherited from interface net.xqhs.graphs.matchingPlatform.GraphMatchingPlatform.PlatformShadowGraph
canIncrement, getNextSequenceOperations, getSequence, incrementSequence, incrementSequence, incrementSequenceFastForward
 
Methods inherited from interface net.xqhs.graphs.graph.Graph
add, addAll, addEdge, addNode, contains, getComponents, getEdges, getInEdges, getNodes, getNodesNamed, getOutEdges, m, n, remove, removeAll, removeEdge, removeNode, size
 

Constructor Detail

GMPImplementation.PrincipalGraph

public GMPImplementation.PrincipalGraph()
Default constructor.


GMPImplementation.PrincipalGraph

protected GMPImplementation.PrincipalGraph(java.util.Queue<TrackingGraph.Transaction> transactionsLink,
                                           int initialSequence,
                                           Graph initialGraph)
Protected constructor for constructing shadows of the principal graph.

Parameters:
transactionsLink - - the transaction queue.
initialSequence - - the initial sequence.
initialGraph - - the Graph containing the initial nodes and edges.
Method Detail

createShadowGraph

public GraphMatchingPlatform.PlatformShadowGraph createShadowGraph()
Description copied from interface: GraphMatchingPlatform.PlatformPrincipalGraph
Creates a new shadow graph of this graph, based on the current state of the graph.

Specified by:
createShadowGraph in interface GraphMatchingPlatform.PlatformPrincipalGraph
Returns:
the newly created shadow graph.