gr_flowgraph Class Reference

#include <gr_flowgraph.h>

Inheritance diagram for gr_flowgraph:

Inheritance graph
[legend]
Collaboration diagram for gr_flowgraph:

Collaboration graph
[legend]

List of all members.


Detailed Description

Class representing a directed, acyclic graph of basic blocks.

Public Member Functions

 ~gr_flowgraph ()
void connect (const gr_endpoint &src, const gr_endpoint &dst)
void disconnect (const gr_endpoint &src, const gr_endpoint &dst)
void connect (gr_basic_block_sptr src_block, int src_port, gr_basic_block_sptr dst_block, int dst_port)
void disconnect (gr_basic_block_sptr src_block, int src_port, gr_basic_block_sptr dst_block, int dst_port)
void validate ()
void clear ()
const gr_edge_vector_tedges () const
gr_basic_block_vector_t calc_used_blocks ()
std::vector
< gr_basic_block_vector_t
partition ()

Protected Member Functions

 gr_flowgraph ()
std::vector< int > calc_used_ports (gr_basic_block_sptr block, bool check_inputs)
gr_basic_block_vector_t calc_downstream_blocks (gr_basic_block_sptr block, int port)
gr_edge_vector_t calc_upstream_edges (gr_basic_block_sptr block)
bool has_block_p (gr_basic_block_sptr block)
gr_edge calc_upstream_edge (gr_basic_block_sptr block, int port)

Protected Attributes

gr_basic_block_vector_t d_blocks
gr_edge_vector_t d_edges

Friends

gr_flowgraph_sptr gr_make_flowgraph ()

Constructor & Destructor Documentation

gr_flowgraph::~gr_flowgraph (  ) 

gr_flowgraph::gr_flowgraph (  )  [protected]


Member Function Documentation

void gr_flowgraph::connect ( const gr_endpoint src,
const gr_endpoint dst 
)

References gr_endpoint::block(), d_edges, and gr_endpoint::port().

Referenced by connect().

void gr_flowgraph::disconnect ( const gr_endpoint src,
const gr_endpoint dst 
)

References d_edges.

Referenced by disconnect().

void gr_flowgraph::connect ( gr_basic_block_sptr  src_block,
int  src_port,
gr_basic_block_sptr  dst_block,
int  dst_port 
) [inline]

References connect().

void gr_flowgraph::disconnect ( gr_basic_block_sptr  src_block,
int  src_port,
gr_basic_block_sptr  dst_block,
int  dst_port 
) [inline]

References disconnect().

void gr_flowgraph::validate (  ) 

void gr_flowgraph::clear (  ) 

References d_blocks, and d_edges.

const gr_edge_vector_t& gr_flowgraph::edges (  )  const [inline]

Referenced by calc_used_ports().

gr_basic_block_vector_t gr_flowgraph::calc_used_blocks (  ) 

std::vector< gr_basic_block_vector_t > gr_flowgraph::partition (  ) 

References calc_used_blocks().

std::vector< int > gr_flowgraph::calc_used_ports ( gr_basic_block_sptr  block,
bool  check_inputs 
) [protected]

References edges().

Referenced by validate().

gr_basic_block_vector_t gr_flowgraph::calc_downstream_blocks ( gr_basic_block_sptr  block,
int  port 
) [protected]

References d_edges.

gr_edge_vector_t gr_flowgraph::calc_upstream_edges ( gr_basic_block_sptr  block  )  [protected]

References d_edges.

bool gr_flowgraph::has_block_p ( gr_basic_block_sptr  block  )  [protected]

References d_blocks.

gr_edge gr_flowgraph::calc_upstream_edge ( gr_basic_block_sptr  block,
int  port 
) [protected]

References d_edges.

Referenced by gr_flat_flowgraph::merge_connections().


Friends And Related Function Documentation

gr_flowgraph_sptr gr_make_flowgraph (  )  [friend]


Member Data Documentation


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

Generated on Thu Mar 27 15:00:55 2008 for GNU Radio 3.1.1 by  doxygen 1.5.5