OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BFD::UDPConnectionManager Class Reference

#include <bfd_udp_connection.h>

Inheritance diagram for BFD::UDPConnectionManager:
Collaboration diagram for BFD::UDPConnectionManager:

Classes

class  UDPCommunicator
 
class  UDPRecvServer
 

Public Types

typedef boost::function< void(boost::asio::ip::udp::endpoint
remote_endpoint, const
boost::asio::const_buffer
&recv_buffer, std::size_t
bytes_transferred, const
boost::system::error_code
&error)> 
RecvCallback
 

Public Member Functions

 UDPConnectionManager (EventManager *evm, int recvPort=kSingleHop, int remotePort=kSingleHop)
 
 ~UDPConnectionManager ()
 
void RegisterCallback (RecvCallback callback)
 
virtual void SendPacket (const boost::asio::ip::udp::endpoint &local_endpoint, const boost::asio::ip::udp::endpoint &remote_endpoint, const SessionIndex &session_index, const boost::asio::mutable_buffer &send, int pktSize)
 
void SendPacket (boost::asio::ip::address remoteHost, const ControlPacket *packet)
 
virtual ServerGetServer () const
 
virtual void SetServer (Server *server)
 
virtual void NotifyStateChange (const SessionKey &key, const bool &up)
 
- Public Member Functions inherited from BFD::Connection
virtual void HandleReceive (const boost::asio::const_buffer &recv_buffer, const boost::asio::ip::udp::endpoint &local_endpoint, const boost::asio::ip::udp::endpoint &remote_endpoint, const SessionIndex &session_index, std::size_t bytes_transferred, const boost::system::error_code &error)
 

Private Attributes

BFD::UDPConnectionManager::UDPRecvServerudpRecv_
 
BFD::UDPConnectionManager::UDPCommunicatorudpSend_
 
Serverserver_
 

Detailed Description

Definition at line 15 of file bfd_udp_connection.h.

Member Typedef Documentation

typedef boost::function<void(boost::asio::ip::udp::endpoint remote_endpoint, const boost::asio::const_buffer &recv_buffer, std::size_t bytes_transferred, const boost::system::error_code& error)> BFD::UDPConnectionManager::RecvCallback

Definition at line 21 of file bfd_udp_connection.h.

Constructor & Destructor Documentation

BFD::UDPConnectionManager::UDPConnectionManager ( EventManager evm,
int  recvPort = kSingleHop,
int  remotePort = kSingleHop 
)

Definition at line 66 of file bfd_udp_connection.cc.

Here is the call graph for this function:

BFD::UDPConnectionManager::~UDPConnectionManager ( )

Definition at line 118 of file bfd_udp_connection.cc.

Here is the call graph for this function:

Member Function Documentation

Server * BFD::UDPConnectionManager::GetServer ( ) const
virtual

Implements BFD::Connection.

Definition at line 78 of file bfd_udp_connection.cc.

void BFD::UDPConnectionManager::NotifyStateChange ( const SessionKey key,
const bool &  up 
)
virtual

Implements BFD::Connection.

Definition at line 125 of file bfd_udp_connection.cc.

void BFD::UDPConnectionManager::RegisterCallback ( RecvCallback  callback)

Definition at line 86 of file bfd_udp_connection.cc.

Here is the call graph for this function:

void BFD::UDPConnectionManager::SendPacket ( const boost::asio::ip::udp::endpoint &  local_endpoint,
const boost::asio::ip::udp::endpoint &  remote_endpoint,
const SessionIndex session_index,
const boost::asio::mutable_buffer &  send,
int  pktSize 
)
virtual

Implements BFD::Connection.

Definition at line 110 of file bfd_udp_connection.cc.

Here is the call graph for this function:

void BFD::UDPConnectionManager::SendPacket ( boost::asio::ip::address  remoteHost,
const ControlPacket packet 
)

Definition at line 90 of file bfd_udp_connection.cc.

Here is the call graph for this function:

void BFD::UDPConnectionManager::SetServer ( Server server)
virtual

Implements BFD::Connection.

Definition at line 82 of file bfd_udp_connection.cc.

Member Data Documentation

Server* BFD::UDPConnectionManager::server_
private

Definition at line 65 of file bfd_udp_connection.h.

BFD::UDPConnectionManager::UDPRecvServer * BFD::UDPConnectionManager::udpRecv_
private
BFD::UDPConnectionManager::UDPCommunicator * BFD::UDPConnectionManager::udpSend_
private

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