Interface of general layout algorithms that also allow a MultilevelGraph as call parameter, extending the interface of a simple LayoutModule. More...
#include <ogdf/energybased/multilevel_mixer/MultilevelLayoutModule.h>
Public Member Functions | |
MultilevelLayoutModule () | |
Initializes a multilevel layout module. More... | |
virtual | ~MultilevelLayoutModule () |
virtual void | call (GraphAttributes &GA) override=0 |
Computes a layout of graph GA . More... | |
virtual void | call (MultilevelGraph &MLG) |
Computes a layout of graph MLG. More... | |
Public Member Functions inherited from ogdf::LayoutModule | |
LayoutModule () | |
Initializes a layout module. More... | |
virtual | ~LayoutModule () |
void | operator() (GraphAttributes &GA) |
Computes a layout of graph GA . More... | |
Interface of general layout algorithms that also allow a MultilevelGraph as call parameter, extending the interface of a simple LayoutModule.
Definition at line 48 of file MultilevelLayoutModule.h.
|
inline |
Initializes a multilevel layout module.
Definition at line 51 of file MultilevelLayoutModule.h.
|
inlinevirtual |
Definition at line 53 of file MultilevelLayoutModule.h.
|
overridepure virtual |
Computes a layout of graph GA
.
This method is the actual algorithm call and must be implemented by derived classes.
GA | is the input graph and will also be assigned the layout information. |
Implements ogdf::LayoutModule.
Implemented in ogdf::PreprocessorLayout, and ogdf::ScalingLayout.
|
inlinevirtual |
Computes a layout of graph MLG.
This method can be implemented optionally to allow a LayoutModule to modify the Graph. This allows some Layout Algorithms to save Memory, compared to a normal call(GA) DO NOT implement this if you are not sure whether this would save you Memory! This method only helps if the Graph is already in the MultiLevelGraph Format (or can be converted without creating a copy) AND the layout would need a copy otherwise. All Incremental Layouts (especially energy based) CAN be called by ModularMultilevelMixer. The standard implementation converts the MLG to GA and uses call(GA).
If implemented, the following Implementation of call(GA) is advised to ensure consistent behaviour of the two call Methods: void YourLayout::call(GraphAttributes &GA) { MultilevelGraph MLG(GA); call(MLG); MLG.exportAttributes(GA); }
MLG | is the input graph and will also be assigned the layout information. |
Reimplemented in ogdf::PreprocessorLayout, and ogdf::ScalingLayout.
Definition at line 86 of file MultilevelLayoutModule.h.