An OpenFlow control channel grouping multiple control connections. More...
#include <crofchan.h>
Public Member Functions | |
| crofchan (crofchan_env *env, rofl::openflow::cofhello_elem_versionbitmap const &versionbitmap) | |
| bool | is_established () const |
| uint8_t | get_version () const |
|
const rofl::openflow::cofhello_elem_versionbitmap & | get_versionbitmap () const |
| void | close () |
| unsigned int | send_message (const cauxid &aux_id, rofl::openflow::cofmsg *msg) |
| cauxid | get_next_auxid () |
| std::list< cauxid > | get_conn_index () const |
| crofconn & | add_conn (const cauxid &aux_id, enum rofl::csocket::socket_type_t socket_type, cparams const &socket_params) |
| Add a new connection while creating a new crofconn instance and do a socket connect. | |
| crofconn & | add_conn (const cauxid &aux_id, crofconn *conn) |
| Add a new connection with an existing crofconn instance obtained from a listening socket. | |
| crofconn & | set_conn (const cauxid &aux_id) |
| const crofconn & | get_conn (const cauxid &aux_id) const |
| void | drop_conn (const cauxid &aux_id) |
| bool | has_conn (const cauxid &aux_id) const |
| std::string | str () const |
Public Member Functions inherited from rofl::ciosrv | |
| ciosrv (pthread_t tid=0) | |
| Initializes all structures for this ciosrv object. | |
| virtual | ~ciosrv () |
| Deallocates resources for this ciosrv object. | |
| ciosrv (const ciosrv &iosrv) | |
| Initializes all structures for this ciosrv object. | |
| ciosrv & | operator= (const ciosrv &iosrv) |
| void | notify (const cevent &event) |
| Sends a notification to this ciosrv instance. More... | |
| pthread_t | get_thread_id () const |
| Returns thread-id of local thread. More... | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, crofchan const &chan) |
Additional Inherited Members | |
Static Public Member Functions inherited from rofl::crofconn_env | |
| static crofconn_env & | set_env (crofconn_env *env) |
| static bool | has_env (crofconn_env *env) |
Protected Member Functions inherited from rofl::ciosrv | |
| ctimer | get_next_timer () |
| virtual void | handle_event (const rofl::cevent &event) |
| Handler for event notifications using cevent instances. More... | |
| virtual void | handle_revent (int fd) |
| Handler for read events on file descriptors. More... | |
| virtual void | handle_wevent (int fd) |
| Handler for write events on file descriptors. More... | |
| virtual void | handle_xevent (int fd) |
| Handler for exceptions on file descriptors. More... | |
| void | register_filedesc_r (int fd) |
| Registers a file descriptor for read events. More... | |
| void | deregister_filedesc_r (int fd) |
| Deregisters a file descriptor from read events. More... | |
| void | register_filedesc_w (int fd) |
| Registers a file descriptor for write events. More... | |
| void | deregister_filedesc_w (int fd) |
| Deregisters a file descriptor from write events. More... | |
| const rofl::ctimerid & | register_timer (int opaque, const rofl::ctimespec ×pec) |
| Installs a new timer to fire in t seconds. More... | |
| const rofl::ctimerid & | reset_timer (const rofl::ctimerid &timer_id, const rofl::ctimespec ×pec) |
| Resets a running timer of type opaque. More... | |
| ctimerid & | restart_timer (rofl::ctimerid &timer_id, int opaque, const rofl::ctimespec ×pec) |
| Resets an existing or creates a new timer. More... | |
| bool | pending_timer (const rofl::ctimerid &timer_id) |
| Checks for a pending timer of type opaque. More... | |
| void | cancel_timer (const rofl::ctimerid &timer_id) |
| Cancels a pending timer. More... | |
| void | cancel_all_timers () |
| Cancels all pending timers of this instance. | |
| void | cancel_all_events () |
| Cancels all pending events of this instance. | |
An OpenFlow control channel grouping multiple control connections.
1.8.6