[#cluster_linearize-SpanningForestState-GetDiagram]
= xref:cluster_linearize.adoc[cluster&lowbar;linearize]::xref:cluster_linearize/SpanningForestState.adoc[SpanningForestState]::GetDiagram
:relfileprefix: ../../
:mrdocs:

Get the diagram for the current state, which must be topological&period; Test&hyphen;only&period;

== Synopsis

Declared in `&lt;cluster&lowbar;linearize&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
std::vector&lt;FeeFrac&gt;
GetDiagram() const noexcept;
----

== Description

The linearization produced by GetLinearization() is always at least as good (in the CompareChunks() sense) as this diagram, but may be better&period;

After an OptimizeStep(), the diagram will always be at least as good as before&period; Once OptimizeStep() returns false, the diagram will be equivalent to that produced by GetLinearization(), and optimal&period;

After a MinimizeStep(), the diagram cannot change anymore (in the CompareChunks() sense), but its number of segments can increase still&period; Once MinimizeStep() returns false, the number of chunks of the produced linearization will match the number of segments in the diagram&period;

== Return Value

The feerates of the current chunks, sorted from highest to lowest&period;


[.small]#Created with https://www.mrdocs.com[MrDocs]#
