S3FC project page S3FC home page

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

s3_post_office_switch::txp_event_queuer Struct Reference

TCP transport event handler. More...

Inheritance diagram for s3_post_office_switch::txp_event_queuer:

Inheritance graph
[legend]
Collaboration diagram for s3_post_office_switch::txp_event_queuer:

Collaboration graph
[legend]
List of all members.

Public Types

typedef s3_growable_fifo_queue<
s3_txport_event
ev_queue_t
 Type of the event queue. More...


Public Methods

virtual ~txp_event_queuer ()
virtual void operator() (const s3_txport_event &event)
 Push the event into the event queue and return. More...


Public Attributes

ev_queue_t ev_queue

Detailed Description

TCP transport event handler.

It pushes any received events into an internal queue, so it can be popped and handled in the main loop at a time.

Definition at line 916 of file s3_message.h.


Member Typedef Documentation

typedef s3_growable_fifo_queue<s3_txport_event> s3_post_office_switch::txp_event_queuer::ev_queue_t
 

Type of the event queue.

It is important that this be a growable queue, as a queue with fixed size can result in deadlock (by stalling the txp_transport calling the event handler (pushes the queue), which can in turn stall the post_office_switch which (pops the queue).

Definition at line 927 of file s3_message.h.


Constructor & Destructor Documentation

s3_post_office_switch::txp_event_queuer::~txp_event_queuer   [virtual]
 

Definition at line 1069 of file s3_message.cc.


Member Function Documentation

void s3_post_office_switch::txp_event_queuer::operator() const s3_txport_event   event [virtual]
 

Push the event into the event queue and return.

Parameters:
event  The event.

Definition at line 1074 of file s3_message.cc.

References ev_queue, and s3_growable_fifo_queue< s3_txport_event >::push.


Member Data Documentation

ev_queue_t s3_post_office_switch::txp_event_queuer::ev_queue
 

Definition at line 929 of file s3_message.h.

Referenced by s3_post_office_switch::handle_transport_events, s3_post_office_switch::main_loop, and operator().


The documentation for this struct was generated from the following files:
Send comments to: s3fc@stonethree.com SourceForge Logo