Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::asio::basic_io_object< IoObjectService > Class Template Reference

Base class for all I/O objects. More...

#include <basic_io_object.hpp>

Inheritance diagram for boost::asio::basic_io_object< IoObjectService >:

Public Types

typedef IoObjectService service_type
 The type of the service that will be used to provide I/O operations. More...
 
typedef
service_type::implementation_type 
implementation_type
 The underlying implementation type of I/O object. More...
 

Public Member Functions

boost::asio::io_serviceget_io_service ()
 Get the io_service associated with the object. More...
 

Protected Member Functions

 basic_io_object (boost::asio::io_service &io_service)
 Construct a basic_io_object. More...
 
 ~basic_io_object ()
 Protected destructor to prevent deletion through this type. More...
 
service_typeget_service ()
 Get the service associated with the I/O object. More...
 
const service_typeget_service () const
 Get the service associated with the I/O object. More...
 
implementation_typeget_implementation ()
 Get the underlying implementation of the I/O object. More...
 
const implementation_typeget_implementation () const
 Get the underlying implementation of the I/O object. More...
 

Protected Attributes

service_typeservice
 (Deprecated: Use get_service().) The service associated with the I/O object. More...
 
implementation_type implementation
 (Deprecated: Use get_implementation().) The underlying implementation of the I/O object. More...
 

Detailed Description

template<typename IoObjectService>
class boost::asio::basic_io_object< IoObjectService >

Base class for all I/O objects.

Note
All I/O objects are non-copyable. However, when using C++0x, certain I/O objects do support move construction and move assignment.

Member Typedef Documentation

template<typename IoObjectService>
typedef service_type::implementation_type boost::asio::basic_io_object< IoObjectService >::implementation_type

The underlying implementation type of I/O object.

template<typename IoObjectService>
typedef IoObjectService boost::asio::basic_io_object< IoObjectService >::service_type

The type of the service that will be used to provide I/O operations.

Constructor & Destructor Documentation

template<typename IoObjectService>
boost::asio::basic_io_object< IoObjectService >::basic_io_object ( boost::asio::io_service io_service)
inlineexplicitprotected

Construct a basic_io_object.

Performs:

template<typename IoObjectService>
boost::asio::basic_io_object< IoObjectService >::~basic_io_object ( )
inlineprotected

Protected destructor to prevent deletion through this type.

Performs:

Member Function Documentation

template<typename IoObjectService>
implementation_type& boost::asio::basic_io_object< IoObjectService >::get_implementation ( )
inlineprotected

Get the underlying implementation of the I/O object.

template<typename IoObjectService>
const implementation_type& boost::asio::basic_io_object< IoObjectService >::get_implementation ( ) const
inlineprotected

Get the underlying implementation of the I/O object.

template<typename IoObjectService>
boost::asio::io_service& boost::asio::basic_io_object< IoObjectService >::get_io_service ( )
inline

Get the io_service associated with the object.

This function may be used to obtain the io_service object that the I/O object uses to dispatch handlers for asynchronous operations.

Returns
A reference to the io_service object that the I/O object will use to dispatch handlers. Ownership is not transferred to the caller.
template<typename IoObjectService>
service_type& boost::asio::basic_io_object< IoObjectService >::get_service ( )
inlineprotected

Get the service associated with the I/O object.

template<typename IoObjectService>
const service_type& boost::asio::basic_io_object< IoObjectService >::get_service ( ) const
inlineprotected

Get the service associated with the I/O object.

Member Data Documentation

template<typename IoObjectService>
service_type& boost::asio::basic_io_object< IoObjectService >::service
protected

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