Implementation detail of a Boost.Asio-based stream-oriented transport. More...
#include <ndn-cxx/transport/detail/stream-transport-impl.hpp>
Inheritance diagram for ndn::detail::StreamTransportImpl< BaseTransport, Protocol >:
Collaboration diagram for ndn::detail::StreamTransportImpl< BaseTransport, Protocol >:Public Types | |
| typedef std::list< Block > | BlockSequence |
| typedef StreamTransportImpl< BaseTransport, Protocol > | Impl |
| typedef std::list< BlockSequence > | TransmissionQueue |
Public Member Functions | |
| StreamTransportImpl (BaseTransport &transport, boost::asio::io_service &ioService) | |
| void | close () |
| void | connect (const typename Protocol::endpoint &endpoint) |
| void | pause () |
| void | resume () |
| void | send (const Block &wire) |
| void | send (const Block &header, const Block &payload) |
Protected Member Functions | |
| void | asyncReceive () |
| void | asyncWrite () |
| void | connectHandler (const boost::system::error_code &error) |
| void | connectTimeoutHandler (const boost::system::error_code &error) |
| void | handleAsyncReceive (const boost::system::error_code &error, std::size_t nBytesRecvd) |
| void | handleAsyncWrite (const boost::system::error_code &error, TransmissionQueue::iterator queueItem) |
| bool | processAllReceived (uint8_t *buffer, size_t &offset, size_t nBytesAvailable) |
| void | send (BlockSequence &&sequence) |
Protected Attributes | |
| boost::asio::deadline_timer | m_connectTimer |
| uint8_t | m_inputBuffer [MAX_NDN_PACKET_SIZE] |
| size_t | m_inputBufferSize |
| bool | m_isConnecting |
| Protocol::socket | m_socket |
| TransmissionQueue | m_transmissionQueue |
| BaseTransport & | m_transport |
Implementation detail of a Boost.Asio-based stream-oriented transport.
| BaseTransport | a subclass of Transport |
| Protocol | a Boost.Asio stream-oriented protocol, e.g. boost::asio::ip::tcp or boost::asio::local::stream_protocol |
Definition at line 41 of file stream-transport-impl.hpp.
| typedef std::list<Block> ndn::detail::StreamTransportImpl< BaseTransport, Protocol >::BlockSequence |
Definition at line 45 of file stream-transport-impl.hpp.
| typedef StreamTransportImpl<BaseTransport, Protocol> ndn::detail::StreamTransportImpl< BaseTransport, Protocol >::Impl |
Definition at line 44 of file stream-transport-impl.hpp.
| typedef std::list<BlockSequence> ndn::detail::StreamTransportImpl< BaseTransport, Protocol >::TransmissionQueue |
Definition at line 46 of file stream-transport-impl.hpp.
|
inline |
Definition at line 48 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 208 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 176 of file stream-transport-impl.hpp.
|
inline |
Definition at line 74 of file stream-transport-impl.hpp.
|
inline |
Definition at line 58 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 132 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 153 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 216 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 184 of file stream-transport-impl.hpp.
|
inline |
Definition at line 89 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 254 of file stream-transport-impl.hpp.
|
inline |
Definition at line 101 of file stream-transport-impl.hpp.
|
inline |
Definition at line 114 of file stream-transport-impl.hpp.
|
inline |
Definition at line 122 of file stream-transport-impl.hpp.
|
inlineprotected |
Definition at line 163 of file stream-transport-impl.hpp.
|
protected |
Definition at line 279 of file stream-transport-impl.hpp.
|
protected |
Definition at line 273 of file stream-transport-impl.hpp.
|
protected |
Definition at line 274 of file stream-transport-impl.hpp.
|
protected |
Definition at line 277 of file stream-transport-impl.hpp.
|
protected |
Definition at line 272 of file stream-transport-impl.hpp.
|
protected |
Definition at line 276 of file stream-transport-impl.hpp.
|
protected |
Definition at line 270 of file stream-transport-impl.hpp.