cutter/src/widgets/GraphvizLayout.h

33 lines
747 B
C
Raw Normal View History

2019-08-03 13:10:44 +00:00
#ifndef GRAPHVIZLAYOUT_H
#define GRAPHVIZLAYOUT_H
#include "core/Cutter.h"
#include "GraphLayout.h"
class GraphvizLayout : public GraphLayout
{
public:
enum class LayoutType {
DotOrtho,
DotPolyline,
Sfdp,
Neato,
TwoPi,
Circo,
2019-08-03 13:10:44 +00:00
};
enum class Direction {
TB,
LR
};
GraphvizLayout(LayoutType layoutType, Direction direction = Direction::TB);
2019-08-03 13:10:44 +00:00
virtual void CalculateLayout(std::unordered_map<ut64, GraphBlock> &blocks,
ut64 entry,
int &width,
int &height) const override;
private:
Direction direction;
LayoutType layoutType;
2019-08-03 13:10:44 +00:00
};
#endif // GRAPHVIZLAYOUT_H