#include <datagram-face.hpp>
Public Types | |
typedef Protocol | protocol |
Public Member Functions | |
DatagramFace (const FaceUri &remoteUri, const FaceUri &localUri, typename protocol::socket socket) | |
Construct datagram face. More... | |
void | sendInterest (const Interest &interest) 1 |
send an Interest More... | |
void | sendData (const Data &data) 1 |
send a Data More... | |
void | close () 1 |
Close the face. More... | |
void | receiveDatagram (const uint8_t *buffer, size_t nBytesReceived, const boost::system::error_code &error) |
Public Member Functions inherited from nfd::Face | |
Face (const FaceUri &remoteUri, const FaceUri &localUri, bool isLocal=false, bool isMultiAccess=false) | |
virtual | ~Face () |
FaceId | getId () const |
const std::string & | getDescription () const |
Get the description. More... | |
void | setDescription (const std::string &description) |
Set the face description. More... | |
void | setMetric (uint64_t metric) |
uint64_t | getMetric () const |
bool | isLocal () const |
Get whether face is connected to a local app. More... | |
ndn::nfd::FacePersistency | getPersistency () const |
Get the persistency setting. More... | |
bool | isMultiAccess () const |
Get whether packets sent by this face may reach multiple peers. More... | |
virtual bool | isUp () const |
Get whether underlying communication is up. More... | |
const FaceCounters & | getCounters () const |
const FaceUri & | getRemoteUri () const |
const FaceUri & | getLocalUri () const |
template<typename FaceTraits > | |
void | copyStatusTo (FaceTraits &traits) const |
virtual ndn::nfd::FaceStatus | getFaceStatus () const |
Protected Member Functions | |
void | processErrorCode (const boost::system::error_code &error) |
void | handleSend (const boost::system::error_code &error, size_t nBytesSent, const Block &payload) |
void | handleReceive (const boost::system::error_code &error, size_t nBytesReceived) |
void | keepFaceAliveUntilAllHandlersExecuted (const shared_ptr< Face > &face) |
void | closeSocket () |
bool | hasBeenUsedRecently () const |
void | resetRecentUsage () |
Set m_hasBeenUsedRecently to false. More... | |
NFD_LOG_INCLASS_DECLARE () | |
Protected Member Functions inherited from nfd::Face | |
void | setPersistency (ndn::nfd::FacePersistency persistency) |
bool | decodeAndDispatchInput (const Block &element) |
void | fail (const std::string &reason) |
fail the face and raise onFail event if it's UP; otherwise do nothing More... | |
FaceCounters & | getMutableCounters () |
Protected Attributes | |
protocol::socket | m_socket |
Additional Inherited Members | |
Public Attributes inherited from nfd::Face | |
signal::Signal< Face, Interest > | onReceiveInterest |
fires when an Interest is received More... | |
signal::Signal< Face, Data > | onReceiveData |
fires when a Data is received More... | |
signal::Signal< Face, Interest > | onSendInterest |
fires when an Interest is sent out More... | |
signal::Signal< Face, Data > | onSendData |
fires when a Data is sent out More... | |
signal::Signal< Face, std::string > | onFail |
fires when face disconnects or fails to perform properly More... | |
Definition at line 38 of file datagram-face.hpp.
typedef Protocol nfd::DatagramFace< Protocol, Addressing >::protocol |
Definition at line 41 of file datagram-face.hpp.
|
inline |
Construct datagram face.
socket | Protocol-specific socket for the created face |
Definition at line 106 of file datagram-face.hpp.
References ndn::MAX_NDN_PACKET_SIZE, and NFD_LOG_FACE_INFO.
|
inlinevirtual |
send an Interest
Implements nfd::Face.
Definition at line 121 of file datagram-face.hpp.
References emitSignal, NFD_LOG_FACE_TRACE, ndn::Block::size(), ndn::Block::wire(), and ndn::Interest::wireEncode().
|
inlinevirtual |
send a Data
Implements nfd::Face.
Definition at line 137 of file datagram-face.hpp.
References emitSignal, NFD_LOG_FACE_TRACE, ndn::Block::size(), ndn::Block::wire(), and ndn::Data::wireEncode().
|
inlinevirtual |
Close the face.
This terminates all communication on the face and cause onFail() method event to be invoked
Implements nfd::Face.
Definition at line 153 of file datagram-face.hpp.
References NFD_LOG_FACE_INFO.
|
inline |
Definition at line 222 of file datagram-face.hpp.
References ndn::Block::fromBuffer(), NFD_LOG_FACE_TRACE, NFD_LOG_FACE_WARN, ndn::Block::size(), and ndn::Block::type().
|
inlineprotected |
Definition at line 166 of file datagram-face.hpp.
References ndn::nfd::FACE_PERSISTENCY_PERMANENT, NFD_LOG_FACE_DEBUG, and NFD_LOG_FACE_WARN.
|
inlineprotected |
Definition at line 194 of file datagram-face.hpp.
References NFD_LOG_FACE_TRACE.
|
inlineprotected |
Definition at line 208 of file datagram-face.hpp.
References ndn::MAX_NDN_PACKET_SIZE.
|
inlineprotected |
Definition at line 261 of file datagram-face.hpp.
References NFD_LOG_FACE_TRACE.
|
inlineprotected |
Definition at line 268 of file datagram-face.hpp.
References nfd::getGlobalIoService(), and NFD_LOG_FACE_TRACE.
|
inlineprotected |
Definition at line 286 of file datagram-face.hpp.
|
inlineprotected |
Set m_hasBeenUsedRecently to false.
Definition at line 293 of file datagram-face.hpp.
|
protected |
|
protected |
Definition at line 94 of file datagram-face.hpp.