5
// Copyright (c) 2003-2008 Christopher M. Kohlhoff (chris at kohlhoff dot com)
7
// Distributed under the Boost Software License, Version 1.0. (See accompanying
8
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
11
#ifndef ASIO_DETAIL_SERVICE_BASE_HPP
12
#define ASIO_DETAIL_SERVICE_BASE_HPP
14
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
16
#endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
18
#include "asio/detail/push_options.hpp"
20
#include "asio/io_service.hpp"
21
#include "asio/detail/service_id.hpp"
26
// Special service base class to keep classes header-file only.
27
template <typename Type>
29
: public asio::io_service::service
32
static asio::detail::service_id<Type> id;
35
service_base(asio::io_service& io_service)
36
: asio::io_service::service(io_service)
41
template <typename Type>
42
asio::detail::service_id<Type> service_base<Type>::id;
47
#include "asio/detail/pop_options.hpp"
49
#endif // ASIO_DETAIL_SERVICE_BASE_HPP