63 #define DATA_SELECTOR 1 64 #define CLOCK_SELECTOR 2 66 #define CHANNEL_SELECTOR 4 68 #define ALL_LINES_SELECTOR (DATA_SELECTOR | CLOCK_SELECTOR | CHANNEL_SELECTOR) 70 #define PURE_DATA_SELECTOR (DATA_SELECTOR | CHANNEL_SELECTOR) 88 void print(std::ostream& os,
int detail_level = 0)
const override 91 os <<
" " << reference << std::endl;
100 #define GET_REFERENCE(data, node_index) Cget_node_info<cg_node_info>(node_index, *(data))->reference 102 #define GET_CRITICAL(data, node_index) Cget_node_info<cg_node_info>(node_index, *(data))->is_critical 119 void print(std::ostream& os)
const;
132 #define GET_FROM_PORT(data, edge_index) Cget_edge_info<cg_edge_info>(edge_index, *(data))->from_port 139 #define GET_EDGE_CRITICAL(data, edge_index) Cget_node_info<cg_edge_info>(edge_index, *(data))->is_critical 147 #define EDGE_ADD_FROM_PORT(data, edge_index, from) get_edge_info<cg_edge_info>(edge_index, *(data))->from_port = from 154 #define GET_TO_PORT(data, edge_index) Cget_edge_info<cg_edge_info>(edge_index, *(data))->to_port 162 #define EDGE_ADD_TO_PORT(data, edge_index, _to) get_edge_info<cg_edge_info>(edge_index, *(data))->to_port = _to 169 #define EDGE_SET_CRITICAL(data, edge_index, critical) \ 170 get_edge_info<cg_edge_info>(edge_index, *(data))->is_critical = critical 193 os <<
"Entry " << Entry_name <<
"Exit " << Exit_name << std::endl;
200 : Entry(en), Exit(ex), Entry_name(en_name), Exit_name(ex_name)
221 void operator()(std::ostream& out,
const EdgeDescriptor& e)
const;
232 void operator()(std::ostream& out,
const vertex& v)
const;
cg_graph_info(vertex en, const std::string &en_name, vertex ex, const std::string &ex_name)
Constructor.
REF_FORWARD_DECL(structural_object)
void print(std::ostream &os) const
Print the information associated with the current node of the graph.
Base class storing user data information to the whole graph.
void print(std::ostream &, int detail_level=0) const override
Print the information associated with the node of the graph.
Class specification of the graph structures.
structural_objectRef to_port
destination port/channel to the edge is attached
cg_node_info()
Constructor.
Base class description of data information associated with each node of a graph.
vertex Entry
primary input node.
cg_edge_info()
Constructor.
Information associated with a circuit graph edge.
#define ENTRY
Superclass include.
void print(std::ostream &os, int detail_level=0) const override
Print the information associated with the current node of the graph.
boost::graph_traits< graph >::vertex_descriptor vertex
vertex definition.
General class used to describe a graph in PandA.
Base class storing user data information.
Base class for graph property.
Information associated with a circuit graph node.
Template definition of refcount.
Base class description of data information associated with each edge of a graph.
structural_objectRef reference
Definition of the internal graph associated with the node.
structural_objectRef from_port
port from which the edge is generated
Information associated with the whole graph of a circuit.
bool is_critical
flag to check if the edge is involved into the critical path
cg_graph_info()
Empty constructor.
Base object for all the structural objects.
vertex Exit
primary output node
boost::graph_traits< graph >::edge_descriptor EdgeDescriptor
edge definition.