Line data Source code
1 : // 2 : // Copyright (c) 2021 Vinnie Falco (vinnie.falco@gmail.com) 3 : // 4 : // Distributed under the Boost Software License, Version 1.0. (See accompanying 5 : // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 : // 7 : // Official repository: https://github.com/cppalliance/http_proto 8 : // 9 : 10 : #ifndef BOOST_HTTP_PROTO_SERVICE_SERVICE_HPP 11 : #define BOOST_HTTP_PROTO_SERVICE_SERVICE_HPP 12 : 13 : #include <boost/http_proto/detail/config.hpp> 14 : 15 : namespace boost { 16 : namespace http_proto { 17 : 18 : #ifndef BOOST_HTTP_PROTO_DOCS 19 : class services; 20 : #endif 21 : 22 : /** Base class for all context services 23 : */ 24 : struct BOOST_SYMBOL_VISIBLE 25 32 : service 26 : { 27 : BOOST_HTTP_PROTO_DECL 28 : virtual 29 : ~service() = 0; 30 : 31 : #if 0 32 : protected: 33 : /** Called to perform two-phase initialization 34 : */ 35 : BOOST_HTTP_PROTO_DECL 36 : virtual 37 : void 38 : start() = 0; 39 : #endif 40 : 41 : private: 42 : friend class services; 43 : }; 44 : 45 : } // http_proto 46 : } // boost 47 : 48 : #endif