Revised OpenFlow Library  v0.6.0dev
 All Classes Files Functions Variables Friends Groups Pages
Public Member Functions | Protected Member Functions | Friends | List of all members
rofl::crofchan_env Interface Referenceabstract

Environment expected by a rofl::crofchan instance. More...

#include <crofchan.h>

Public Member Functions

 crofchan_env ()
 crofchan_env constructor
 
virtual ~crofchan_env ()
 crofchan_env destructor
 

Protected Member Functions

virtual void handle_conn_established (crofchan &chan, const rofl::cauxid &auxid)
 Called upon establishment of a control connection within the control channel.
 
virtual void handle_conn_terminated (crofchan &chan, const rofl::cauxid &auxid)
 Called upon a peer initiated termination of a control connection within the control channel.
 
virtual void handle_conn_refused (crofchan &chan, const rofl::cauxid &auxid)
 Called in the event of a connection refused.
 
virtual void handle_conn_failed (crofchan &chan, const rofl::cauxid &auxid)
 Called in the event of a connection failed (except refused)
 
virtual void handle_write (crofchan &chan, const cauxid &auxid)=0
 Called after a congestion situation has been resolved. More...
 
virtual void recv_message (crofchan &chan, const cauxid &aux_id, rofl::openflow::cofmsg *msg)=0
 Called upon reception of an OpenFlow message by the peer entity. More...
 
virtual uint32_t get_async_xid (crofchan &chan)=0
 Acquires an OpenFlow transaction ID for an asynchronous message. More...
 
virtual uint32_t get_sync_xid (crofchan &chan, uint8_t msg_type=0, uint16_t msg_sub_type=0)=0
 Acquires an OpenFlow transaction ID for a synchronous message. More...
 
virtual void release_sync_xid (crofchan &chan, uint32_t xid)=0
 Releases a synchronous transaction ID after reception of an OpenFlow reply. More...
 

Friends

class crofchan
 

Detailed Description

Environment expected by a rofl::crofchan instance.

Inheritance diagram for rofl::crofchan_env:
rofl::crofctl rofl::crofdpt

Member Function Documentation

virtual uint32_t rofl::crofchan_env::get_async_xid ( crofchan chan)
protectedpure virtual

Acquires an OpenFlow transaction ID for an asynchronous message.

Parameters
chancrofchan instance
virtual uint32_t rofl::crofchan_env::get_sync_xid ( crofchan chan,
uint8_t  msg_type = 0,
uint16_t  msg_sub_type = 0 
)
protectedpure virtual

Acquires an OpenFlow transaction ID for a synchronous message.

Parameters
chancrofchan instance
virtual void rofl::crofchan_env::handle_write ( crofchan chan,
const cauxid auxid 
)
protectedpure virtual

Called after a congestion situation has been resolved.

Note: This method is executed in the thread context of the underlying socket instance.

Parameters
chancrofchan instance
auxidauxiliary connection that is usable again
virtual void rofl::crofchan_env::recv_message ( crofchan chan,
const cauxid aux_id,
rofl::openflow::cofmsg msg 
)
protectedpure virtual

Called upon reception of an OpenFlow message by the peer entity.

Note: This method is executed in the thread context of the underlying socket instance.

Parameters
chancrofchan instance
auxidauxiliary connection
msgpointer to cofmsg instance
virtual void rofl::crofchan_env::release_sync_xid ( crofchan chan,
uint32_t  xid 
)
protectedpure virtual

Releases a synchronous transaction ID after reception of an OpenFlow reply.

Parameters
chancrofchan instance

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