|
Protocol & | protocol () |
| Access the protocol interface. More...
|
|
Protocol const & | protocol () const |
|
void | state (SocketStateMap &map, unsigned lod=0) |
|
std::string | dumpState (unsigned lod=0) |
|
Public Member Functions inherited from senf::ClientSocketHandle< SocketProtocol::Policy > |
void | state (SocketStateMap &map, unsigned lod=0) |
|
std::string | dumpState (unsigned lod=0) |
|
unsigned | available () |
|
| ClientSocketHandle () |
|
| ClientSocketHandle (ClientSocketHandle< OtherPolicy > other) |
|
ClientSocketHandle< OtherPolicy > const & | operator= (ClientSocketHandle< OtherPolicy > other) |
|
std::string | read (unsigned limit=0) |
| Read data from socket. More...
|
|
boost::range_iterator< ForwardWritableRange >::type | read (ForwardWritableRange const &range) |
| Read data into range. More...
|
|
boost::range_iterator< ForwardWritableRange >::type | read (ForwardWritableRange &range) |
| Read data into range. More...
|
|
void | read (Sequence &container, unsigned limit) |
| Read data into container. More...
|
|
char * | read (char *start, char *end) |
| Read data into memory area. More...
|
|
std::pair< std::string, Address > | readfrom (unsigned limit=0) |
| Read data from unconnected socket returning address. More...
|
|
boost::range_iterator< ForwardWritableRange const >::type | readfrom (ForwardWritableRange const &range, Address &from) |
| Read data into range. More...
|
|
boost::range_iterator< ForwardWritableRange >::type | readfrom (ForwardWritableRange &range, Address &from) |
| Read data into range. More...
|
|
void | readfrom (Sequence &container, Address &from, unsigned limit) |
| Read data into container. More...
|
|
char * | readfrom (char *start, char *end, Address &from) |
| Read data into memory buffer. More...
|
|
boost::range_const_iterator< ForwardReadableRange const >::type | write (ForwardReadableRange const &range) |
| Write data to socket. More...
|
|
char const * | write (char const *start, char const *end) |
| Write data to socket from memory buffer. More...
|
|
boost::range_const_iterator< ForwardReadableRange const >::type | writeto (AddressParam addr, ForwardReadableRange const &range) |
| Write data to unconnected socket. More...
|
|
char const * | writeto (AddressParam addr, char const *start, char const *end) |
| Write data from memory buffer to unconnected socket. More...
|
|
boost::optional< typename SocketProtocol::Policy ::ReadPolicy::Buffer > | dequeue () |
| Read data from packet queue. More...
|
|
void | release () |
| Release all queue frames to the kernel. More...
|
|
boost::optional< typename SocketProtocol::Policy ::WritePolicy::Buffer > | enqueue () |
| Write data to packet queue. More...
|
|
bool | send () |
| Send all data in the write queue. More...
|
|
void | connect (AddressParam addr) const |
| Connect to remote peer. More...
|
|
void | bind (AddressParam addr) const |
| Set local address. More...
|
|
Address | peer () const |
| Query remote address. More...
|
|
void | peer (Address &addr) const |
| Query remote address. More...
|
|
Address | local () const |
| Query local address. More...
|
|
void | local (Address &addr) const |
| Query local address. More...
|
|
Public Member Functions inherited from senf::SocketHandle< SPolicy > |
template<class OtherPolicy > |
IsCompatible< OtherPolicy >::type const & | operator= (SocketHandle< OtherPolicy > other) |
| Assign from other socket handle checking policy compatibility. More...
|
|
void | state (SocketStateMap &map, unsigned lod=0) |
| Inquire state information of socket handle. More...
|
|
std::string | dumpState (unsigned lod=0) |
| Format complete state information as string. More...
|
|
template<class Facet > |
Facet & | facet () |
| Access a protocol facet. More...
|
|
| SocketHandle () |
|
template<class OtherPolicy > |
| SocketHandle (SocketHandle< OtherPolicy > other, typename IsCompatible< OtherPolicy >::type *=0) |
| Convert from other socket handle checking policy compatibility. More...
|
|
Public Member Functions inherited from senf::FileHandle |
void | close () |
| Close filehandle. More...
|
|
void | terminate () |
| Close filehandle ignoring error conditions. More...
|
|
bool | readable () const |
| Check, whether a read on the handle would not block (ignoring blocking state) More...
|
|
bool | waitReadable (senf::ClockService::clock_type timeout=senf::ClockService::clock_type(-1)) const |
| Wait, until read on the handle would not block (ignoring blocking state) More...
|
|
bool | writeable () const |
| Check, whether a write on the handle would not block (ignoring blocking state) More...
|
|
bool | waitWriteable (senf::ClockService::clock_type timeout=senf::ClockService::clock_type(-1)) const |
| Wait, until a write on the handle would not block (ignoring blocking state) More...
|
|
bool | oobReadable () const |
| Check, whether a read of prioritized data on the handle would not block (ignoring blocking state) More...
|
|
bool | waitOOBReadable (senf::ClockService::clock_type timeout=senf::ClockService::clock_type(-1)) const |
| Wait, until read of prioritized data on the handle does not block (ignoring blocking state) More...
|
|
bool | blocking () const |
| Return current blocking state. More...
|
|
void | blocking (bool status) |
| Set blocking state. More...
|
|
bool | eof () const |
| Check EOF condition. More...
|
|
bool | valid () const |
| Check filehandle validity. More...
|
|
bool | boolean_test () const |
| Short for valid() && ! eof() More...
|
|
int | fd () const |
| Return the raw FileHandle. More...
|
|
int | refcount () const |
|
bool | is_shared () const |
|
| FileHandle () |
|
| ~FileHandle () |
|
| operator bool_type () const |
|
bool | operator! () const |
|
template<class SocketProtocol>
class senf::ProtocolClientSocketHandle< SocketProtocol >
Protocol specific socket handle (client interface)
The ProtocolClientSocketHandle is the client interface leaf class of the handle hierarchy. This is the class to instantiate to open a new socket. This is also the only class, which can be used to open a client socket.
The Protocol template argument defines the protocol of the socket. This protocol provides the protocol interface of the socket as well as the complete socket policy of this protocol.
The ProtocolClientSocketHandle adds the protocol interface as an additional interface to the socket handle. This interface is only accessible via the protocol class. All socket functionality not available through the policy interface (see ClientSocketHandle) is accessible via the protocol() member.
- See also
- The Protocol Classes
Definition at line 53 of file ProtocolClientSocketHandle.hh.