Printer to produce a dot representation of the current state of the graph.
More...
#include "dot_printer.h"
|
| | DotPrinter (std::filesystem::path const &dotFilePath, ColorScheme colorScheme, StructureOptions structureOptions, DebugOptions debugOptions, core::CoreNode *graph) |
| | DotPrinter constructor, opens the file for writing. More...
|
| |
|
| ~DotPrinter () override |
| | Destructor, close the file.
|
| |
| void | printNodeInformation (core::CoreNode *node) final |
| | Print node main information. More...
|
| |
| void | printGraphHeader (core::CoreNode const *node) final |
| | Print header for the graph. More...
|
| |
| void | printClusterHeader (core::CoreNode const *clusterNode) final |
| | Print the header of a cluster. More...
|
| |
|
void | printClusterFooter () final |
| | Print the footer of a task cluster.
|
| |
| void | printGraphFooter (core::CoreNode const *graph) final |
| | Print the graph footer. More...
|
| |
| void | printClusterEdge (core::CoreNode const *clusterNode) final |
| | Print the inside edges of a cluster for a task. More...
|
| |
| void | printExecutionPipelineHeader (core::CoreNode *epNode, core::CoreNode *switchNode) override |
| | Print the execution pipeline header. More...
|
| |
|
void | printExecutionPipelineFooter () override |
| | Print the footer for the execution pipeline.
|
| |
| void | printEdgeSwitchGraphs (core::CoreNode *to, std::string const &idSwitch, std::string_view const &edgeType, size_t const &queueSize, size_t const &maxQueueSize, bool isMemoryManaged) override |
| | Print an edge between the switch and a graph's input node. More...
|
| |
| void | printEdge (core::CoreNode const *from, core::CoreNode const *to, std::string_view const &edgeType, size_t const &queueSize, size_t const &maxQueueSize, bool isMemoryManaged) final |
| | Create an edge between from and to. More...
|
| |
|
| AbstractPrinter ()=default |
| | Default constructor.
|
| |
|
virtual | ~AbstractPrinter ()=default |
| | Default destructor.
|
| |
| bool | hasNotBeenVisited (core::CoreNode const *node) |
| | Accessor to check if a node has been visited by the printer. More...
|
| |
Printer to produce a dot representation of the current state of the graph.
https://www.graphviz.org/doc/info/lang.html
Definition at line 59 of file dot_printer.h.
◆ DotPrinter()
DotPrinter constructor, opens the file for writing.
- Parameters
-
| dotFilePath | File's path to store the dot file |
| colorScheme | Color scheme chosen |
| structureOptions | Structure option chosen |
| debugOptions | Debug option chosen |
| graph | Graph to visit and create dot file |
Definition at line 84 of file dot_printer.h.
◆ durationPrinter()
| std::string hh::DotPrinter::durationPrinter |
( |
uint64_t |
duration | ) |
|
|
inlineprivate |
Print a duration with the good unit.
- Parameters
-
| duration | Duration to print |
- Returns
- std::string with the duration and the unit
Definition at line 561 of file dot_printer.h.
◆ getExecRGB()
| std::string hh::DotPrinter::getExecRGB |
( |
uint64_t |
val | ) |
|
|
inlineprivate |
Get the rgb color for the execution time value.
- Parameters
-
| val | Execution value to get the RGB color |
- Returns
- RGB color for val
Definition at line 547 of file dot_printer.h.
◆ getNodeInformation()
| std::string hh::DotPrinter::getNodeInformation |
( |
core::CoreNode * |
node | ) |
|
|
inlineprivate |
Extract and create node information.
- Parameters
-
- Returns
- std::string with node information
Definition at line 393 of file dot_printer.h.
◆ getRGBFromRange()
| std::string hh::DotPrinter::getRGBFromRange |
( |
uint64_t const & |
val, |
|
|
uint64_t const & |
min, |
|
|
uint64_t const & |
range |
|
) |
| |
|
inlineprivate |
Return a RGB color for a value knowing the minimum value and the range, blue least, red highest.
- Parameters
-
| val | Value to get the color |
| min | Minimum value |
| range | Range value |
- Returns
- RGB color associated with the value
Definition at line 529 of file dot_printer.h.
◆ getWaitRGB()
| std::string hh::DotPrinter::getWaitRGB |
( |
uint64_t |
val | ) |
|
|
inlineprivate |
Get the rgb color for the wait time value.
- Parameters
-
| val | Execution value to get the RGB color |
- Returns
- RGB color for val
Definition at line 554 of file dot_printer.h.
◆ printClusterEdge()
| void hh::DotPrinter::printClusterEdge |
( |
core::CoreNode const * |
clusterNode | ) |
|
|
inlinefinalvirtual |
◆ printClusterHeader()
| void hh::DotPrinter::printClusterHeader |
( |
core::CoreNode const * |
clusterNode | ) |
|
|
inlinefinalvirtual |
◆ printEdge()
Create an edge between from and to.
- Parameters
-
| from | Edge origin node |
| to | Edge destination node |
| edgeType | Edge type |
| queueSize | Current queue size |
| maxQueueSize | Current maximum queue size |
| isMemoryManaged | Flag to determine if the edge data is memory managed |
Implements hh::AbstractPrinter.
Definition at line 314 of file dot_printer.h.
◆ printEdgeSwitchGraphs()
| void hh::DotPrinter::printEdgeSwitchGraphs |
( |
core::CoreNode * |
to, |
|
|
std::string const & |
idSwitch, |
|
|
std::string_view const & |
edgeType, |
|
|
size_t const & |
queueSize, |
|
|
size_t const & |
maxQueueSize, |
|
|
bool |
isMemoryManaged |
|
) |
| |
|
inlineoverridevirtual |
Print an edge between the switch and a graph's input node.
- Parameters
-
| to | Graph's input node |
| idSwitch | Switch id |
| edgeType | Edge's type |
| queueSize | Current queue size |
| maxQueueSize | Current max queue size |
| isMemoryManaged | Flag to tag if the data is memory managed |
Implements hh::AbstractPrinter.
Definition at line 254 of file dot_printer.h.
◆ printExecutionPipelineHeader()
Print the execution pipeline header.
- Parameters
-
| epNode | Execution pipeline to print |
| switchNode | Switch bound to the execution pipeline |
Implements hh::AbstractPrinter.
Definition at line 231 of file dot_printer.h.
◆ printGraphFooter()
◆ printGraphHeader()
◆ printNodeInformation()
The documentation for this class was generated from the following file: