KLay Layered - Intermediate Processors 

Page / - last modified by Alexander Schulz-Rosengarten on 2023/07/11 10:33 

Intermediate Processors 
last modified by Alexander Schulz-Rosengarten
on 2023/07/11 10:33

Table of Contents

This section lists the intermediate processors that are available. For a description of what intermediate processors actually are, see KLay Layered.
To add a new intermediate processor, create a corresponding class in the ...klay.layered.intermediate package and add proper documentation (refer to existing intermediate processors). Choose which intermediate processing slot(s) the processor can be run in. Then think about possible dependencies to other processors in that slot. Add the processor to the IntermediateProcessingStrategy enumeration such, that all processors it depends on precede the definition of the new processor.
The following table provides an overview of all available layout processors and the slots they can be placed in. Note that a processor may appear in more than one slot. Within each slot, processors are ordered by theirs dependencies on each other. For more documentation on how the processors actually work, refer to their Javadoc documentation.
Slot	Processor	Tested	
Before phase 1	Graph Transformer
Comment Preprocessor
Edge And Layer Constraint Edge Reverser		
Before phase 2	Label Dummy Inserter		
Before phase 3	Layer Constraint Processor
Hierarchical Port Constraint Processor
Long Edge Splitter
Port Side Processor
Label Dummy Switcher
Inverted Port Processor
Self Loop Processor
Port List Sorter
North South Port Preprocessor	

Before phase 4	In Layer Constraint Processor
Hierarchical Port Dummy Size Processor
Hyperedge Dummy Merger
Label Side Selector
Label And Node Size Processor
Node Margin Calculator		
Before phase 5	Layer Size and Graph Height Calculator
Hierarchical Port Position Processor		
After phase 5	Comment Postprocessor
Hypernode Processor
Hierarchical Port Orthogonal Edge Router
Long Edge Joiner
North South Port Postprocessor
Label Dummy Remover
Reversed Edge Restorer
Graph Transformer
End Label Processor