ROSE 0.11.145.147
|
Emits a modified function call graph.
The function call graph is modified by removing all vertices whose function names match a user-specified pattern and compensating by listing the names of removed functions in the vertices of the callers. This is a little bit like inlining, thus the name of the class.
Definition at line 829 of file GraphViz.h.
#include <Rose/BinaryAnalysis/Partitioner2/GraphViz.h>
Public Member Functions | |
CgInlinedEmitter (const PartitionerConstPtr &partitioner, const boost::regex &nameMatcher) | |
CgInlinedEmitter (const PartitionerConstPtr &partitioner, const FunctionCallGraph &cg, const boost::regex &nameMatcher) | |
virtual const FunctionCallGraph & | callGraph () const override |
virtual void | callGraph (const FunctionCallGraph &) override |
virtual std::string | functionLabel (const FunctionPtr &) const override |
virtual bool | shouldInline (const FunctionPtr &) const |
Public Member Functions inherited from Rose::BinaryAnalysis::Partitioner2::GraphViz::CgEmitter | |
CgEmitter (const PartitionerConstPtr &partitioner) | |
CgEmitter (const PartitionerConstPtr &partitioner, const FunctionCallGraph &cg) | |
virtual Attributes | functionAttributes (const FunctionPtr &) const |
virtual void | emitCallGraph (std::ostream &out) const |
virtual void | highlight (const boost::regex &) |
Public Member Functions inherited from Rose::BinaryAnalysis::Partitioner2::GraphViz::BaseEmitter< FunctionCallGraph::Graph > | |
BaseEmitter () | |
Default constructor. | |
BaseEmitter (const Graph &g) | |
Constructor. | |
void | graph (const Graph &g) |
Reset the graph. | |
void | selectAll (bool b=true) |
Causes all vertices and edges to be selected. | |
void | selectNone () |
Deselects all vertices and edges. | |
void | selectAllVertices (bool b=true) |
Causes all vertices to be selected. | |
void | selectAllEdges (bool b=true) |
Causes all edges to be selected. | |
void | deselectParallelEdges () |
Deselect all but one parallel edge. | |
virtual void | emit (std::ostream &) const |
Dump selected vertices, edges, and subgraphs. | |
Attributes & | defaultGraphAttributes () |
Property: default graph attributes. | |
const Attributes & | defaultGraphAttributes () const |
Property: default graph attributes. | |
Attributes & | defaultNodeAttributes () |
Property: default graph node attributes. | |
const Attributes & | defaultNodeAttributes () const |
Property: default graph node attributes. | |
Attributes & | defaultEdgeAttributes () |
Property: default graph edge attributes. | |
const Attributes & | defaultEdgeAttributes () const |
Property: default graph edge attributes. | |
const Color::HSV & | subgraphColor () const |
Property: color to use for function subgraph background. | |
void | subgraphColor (const Color::HSV &bg) |
Property: color to use for function subgraph background. | |
const VertexOrganization & | vertexOrganization () const |
Property: Controls which vertices are to appear in the output, and how. | |
VertexOrganization & | vertexOrganization () |
Property: Controls which vertices are to appear in the output, and how. | |
const Organization & | vertexOrganization (size_t vertexId) const |
Property: Controls which vertices are to appear in the output, and how. | |
Organization & | vertexOrganization (size_t vertexId) |
Property: Controls which vertices are to appear in the output, and how. | |
const Organization & | vertexOrganization (const typename G::ConstVertexIterator &vertex) const |
Property: Controls which vertices are to appear in the output, and how. | |
const Organization & | vertexOrganization (const typename G::Vertex &vertex) const |
Property: Controls which vertices are to appear in the output, and how. | |
Organization & | vertexOrganization (const typename G::ConstVertexIterator &vertex) |
Property: Controls which vertices are to appear in the output, and how. | |
Organization & | vertexOrganization (const typename G::Vertex &vertex) |
Property: Controls which vertices are to appear in the output, and how. | |
const EdgeOrganization & | edgeOrganization () const |
Property: Controls which edges are to appear in the output, and how. | |
EdgeOrganization & | edgeOrganization () |
Property: Controls which edges are to appear in the output, and how. | |
const Organization & | edgeOrganization (size_t edgeId) const |
Property: Controls which edges are to appear in the output, and how. | |
Organization & | edgeOrganization (size_t edgeId) |
Property: Controls which edges are to appear in the output, and how. | |
const Organization & | edgeOrganization (const typename G::ConstEdgeIterator &edge) const |
Property: Controls which edges are to appear in the output, and how. | |
const Organization & | edgeOrganization (const typename G::Edge &edge) const |
Property: Controls which edges are to appear in the output, and how. | |
Organization & | edgeOrganization (const typename G::ConstEdgeIterator &edge) |
Property: Controls which edges are to appear in the output, and how. | |
Organization & | edgeOrganization (const typename G::Edge &edge) |
Property: Controls which edges are to appear in the output, and how. | |
const SubgraphOrganization & | subgraphOrganization () const |
Property: Controls which subgraphs appear in the output, and how. | |
SubgraphOrganization & | subgraphOrganization () |
Property: Controls which subgraphs appear in the output, and how. | |
const Organization & | subgraphOrganization (const std::string &name) const |
Property: Controls which subgraphs appear in the output, and how. | |
Organization & | subgraphOrganization (const std::string &name) |
Property: Controls which subgraphs appear in the output, and how. | |
|
inlineoverridevirtual |
Reimplemented from Rose::BinaryAnalysis::Partitioner2::GraphViz::CgEmitter.
Definition at line 837 of file GraphViz.h.
|
overridevirtual |
Reimplemented from Rose::BinaryAnalysis::Partitioner2::GraphViz::CgEmitter.
|
overridevirtual |
Reimplemented from Rose::BinaryAnalysis::Partitioner2::GraphViz::CgEmitter.