public abstract class Partitioner
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.util.Map |
mGraph
The map containing all the graph nodes.
|
protected LogManager |
mLogger
The handle to the internal logging object.
|
protected PegasusProperties |
mProps
The object holding all the properties pertaining to Pegasus.
|
protected GraphNode |
mRoot
The root node of the graph from where to start the BFS.
|
static java.lang.String |
PACKAGE_NAME
The package name where the implementing classes of this interface reside.
|
static java.lang.String |
VERSION
The version number associated with this API of Code Generator.
|
Constructor and Description |
---|
Partitioner(GraphNode root,
java.util.Map graph,
PegasusProperties properties)
The overloaded constructor.
|
Modifier and Type | Method and Description |
---|---|
abstract java.lang.String |
description()
Returns a textual description of the transfer implementation.
|
abstract void |
determinePartitions(Callback c)
The main function that ends up traversing the graph structure corrsponding
to the dax and creates the smaller dax files(one dax file per partition)
and the .pdax file that illustrates the partition graph.
|
public static final java.lang.String PACKAGE_NAME
public static final java.lang.String VERSION
protected GraphNode mRoot
protected java.util.Map mGraph
protected LogManager mLogger
protected PegasusProperties mProps
public Partitioner(GraphNode root, java.util.Map graph, PegasusProperties properties)
root
- the dummy root node of the graph.graph
- the map containing all the nodes of the graph keyed by
the logical id of the nodes.properties
- the properties passed out to the planner.public abstract void determinePartitions(Callback c)
c
- the callback object that the partitioner calls out to.public abstract java.lang.String description()