Forwards messages in priority order. More...
#include <flow_graph.h>
Public Types | |
typedef T | input_type |
The input type of this receiver. | |
typedef T | output_type |
The output type of this sender. | |
typedef buffer_node< T, A > | base_type |
typedef sender< input_type > | predecessor_type |
The predecessor type for this node. | |
typedef receiver< output_type > | successor_type |
The successor type for this node. | |
Public Member Functions | |
priority_queue_node (graph &g) | |
Constructor. | |
priority_queue_node (const priority_queue_node &src) | |
Copy constructor. | |
Protected Types | |
enum | op_stat { WAIT = 0, SUCCEEDED, FAILED } |
typedef buffer_node< T, A > ::size_type | size_type |
typedef buffer_node< T, A > ::item_type | item_type |
typedef buffer_node< T, A > ::buffer_operation | prio_operation |
Protected Member Functions | |
void | reset () |
void | handle_operations (prio_operation *op_list) |
void | internal_forward_task (prio_operation *op) |
Tries to forward valid items to successors. | |
void | internal_push (prio_operation *op) |
void | internal_pop (prio_operation *op) |
void | internal_reserve (prio_operation *op) |
void | internal_consume (prio_operation *op) |
void | internal_release (prio_operation *op) |
Forwards messages in priority order.