PandA-2024.02
Public Member Functions | Protected Attributes
OpGraphsCollection Class Reference

This structure defines graphs where nodes are operations. More...

#include <op_graph.hpp>

Inheritance diagram for OpGraphsCollection:
Inheritance graph
[legend]
Collaboration diagram for OpGraphsCollection:
Collaboration graph
[legend]

Public Member Functions

 OpGraphsCollection (const OpGraphInfoRef info, const ParameterConstRef parameters)
 Empty Constructror. More...
 
 ~OpGraphsCollection () override
 Destructor. More...
 
EdgeDescriptor AddEdge (const vertex source, const vertex target, const int selector)
 Add an edge with empty information associated. More...
 
boost::graph_traits< boost_graphs_collection >::vertex_descriptor AddVertex (const NodeInfoRef info) override
 Add a vertex to this graph with a property. More...
 
void RemoveVertex (boost::graph_traits< boost_graphs_collection >::vertex_descriptor v) override
 Remove a vertex from this graph. More...
 
const OpVertexSet CGetOperations () const
 Return the vertices belonging to the graph. More...
 
void Clear ()
 Remove all the edges and vertices from the graph. More...
 
- Public Member Functions inherited from graphs_collection
 graphs_collection (GraphInfoRef info, const ParameterConstRef _parameters)
 Constructor of graph. More...
 
virtual ~graphs_collection ()=default
 Destructor. More...
 
boost::graph_traits< graphs_collection >::edge_descriptor AddSelector (const boost::graph_traits< graphs_collection >::edge_descriptor edge, const int selector)
 Add a selector to an existing edge. More...
 
boost::graph_traits< graphs_collection >::edge_descriptor AddSelector (const boost::graph_traits< graphs_collection >::vertex_descriptor source, const boost::graph_traits< graphs_collection >::vertex_descriptor target, const int selector)
 Add a selector to an existing edge. More...
 
void RemoveSelector (boost::graph_traits< graphs_collection >::edge_descriptor edge)
 Remove all the selectors of an edge from this graph. More...
 
void RemoveSelector (boost::graph_traits< graphs_collection >::edge_descriptor edge, const int selector)
 Remove an edge from this graph. More...
 
void RemoveSelector (boost::graph_traits< graphs_collection >::vertex_descriptor source, boost::graph_traits< graphs_collection >::vertex_descriptor target, const int selector)
 Remove an edge from this graph. More...
 
int GetSelector (const edge_descriptor e) const
 Return the selectors associated with an edge. More...
 
boost::graph_traits< graphs_collection >::edge_descriptor AddEdge (boost::graph_traits< graphs_collection >::vertex_descriptor, boost::graph_traits< graphs_collection >::vertex_descriptor, const int)
 Add an edge to this graph FIXME: this should be pure virtual. More...
 
boost::graph_traits< graphs_collection >::edge_descriptor InternalAddEdge (boost::graph_traits< graphs_collection >::vertex_descriptor source, boost::graph_traits< graphs_collection >::vertex_descriptor target, const int selector, const EdgeInfoRef info)
 Add an edge to this graph FIXME: this should be protected. More...
 
bool ExistsEdge (const boost::graph_traits< graphs_collection >::vertex_descriptor source, const boost::graph_traits< graphs_collection >::vertex_descriptor target) const
 Check if an edge exists. More...
 
void CompressEdges ()
 

Protected Attributes

OpVertexSet operations
 The set of operations. More...
 

Additional Inherited Members

- Data Fields inherited from graphs_collection
const ParameterConstRef parameters
 Set of input parameters. More...
 

Detailed Description

This structure defines graphs where nodes are operations.

Definition at line 715 of file op_graph.hpp.

Constructor & Destructor Documentation

◆ OpGraphsCollection()

OpGraphsCollection::OpGraphsCollection ( const OpGraphInfoRef  info,
const ParameterConstRef  parameters 
)

Empty Constructror.

Parameters
infois the info associated with the graph
parametersis the set of input parameters

Definition at line 249 of file op_graph.cpp.

References ~OpGraphsCollection().

Here is the call graph for this function:

◆ ~OpGraphsCollection()

OpGraphsCollection::~OpGraphsCollection ( )
overridedefault

Destructor.

Referenced by OpGraphsCollection().

Here is the caller graph for this function:

Member Function Documentation

◆ AddEdge()

EdgeDescriptor OpGraphsCollection::AddEdge ( const vertex  source,
const vertex  target,
const int  selector 
)
inline

Add an edge with empty information associated.

Parameters
sourceis the source of the edge
targetis the target of the edge
selectoris the selector to be added
Returns
the created edge

Definition at line 741 of file op_graph.hpp.

◆ AddVertex()

boost::graph_traits< boost_graphs_collection >::vertex_descriptor OpGraphsCollection::AddVertex ( const NodeInfoRef  info)
overridevirtual

Add a vertex to this graph with a property.

Parameters
infois the property to be associated with the new vertex
Returns
the added vertex

Reimplemented from graphs_collection.

Definition at line 268 of file op_graph.cpp.

References graphs_collection::AddVertex(), and operations.

Here is the call graph for this function:

◆ CGetOperations()

const OpVertexSet OpGraphsCollection::CGetOperations ( ) const

Return the vertices belonging to the graph.

Definition at line 257 of file op_graph.cpp.

References operations.

◆ Clear()

void OpGraphsCollection::Clear ( )

Remove all the edges and vertices from the graph.

Definition at line 275 of file op_graph.cpp.

References OpEdgeSet::OpEdgeSet(), operations, and OpVertexSet::OpVertexSet().

Here is the call graph for this function:

◆ RemoveVertex()

void OpGraphsCollection::RemoveVertex ( boost::graph_traits< boost_graphs_collection >::vertex_descriptor  v)
overridevirtual

Remove a vertex from this graph.

Parameters
vis the vertex to be removed

Reimplemented from graphs_collection.

Definition at line 262 of file op_graph.cpp.

References operations, and graphs_collection::RemoveVertex().

Here is the call graph for this function:

Field Documentation

◆ operations

OpVertexSet OpGraphsCollection::operations
protected

The set of operations.

Definition at line 719 of file op_graph.hpp.

Referenced by AddVertex(), CGetOperations(), Clear(), and RemoveVertex().


The documentation for this class was generated from the following files:

Generated on Mon Feb 12 2024 13:03:59 for PandA-2024.02 by doxygen 1.8.13