6 #ifndef BOOST_ABSTRACT_FACTORY_VP_2004_08_25
7 #define BOOST_ABSTRACT_FACTORY_VP_2004_08_25
9 #include <boost/mpl/inherit_linearly.hpp>
10 #include <boost/mpl/list.hpp>
11 #include <boost/shared_ptr.hpp>
15 namespace utilmm {
namespace plugin {
25 template<
class BasePlugin,
class Parameters>
29 template<
class BasePlugin>
34 template<
class BasePlugin,
class A1>
39 template<
class BasePlugin,
class A1,
class A2>
45 template<
class BasePlugin,
class Base,
class Parameters>
54 using namespace boost::mpl::placeholders;
56 template<
class BasePlugin>
58 public boost::mpl::inherit_linearly<
59 typename virtual_constructors<BasePlugin>::type,
60 abstract_factory_item<BasePlugin, _, _>,
61 empty_abstract_factory_item>::type
boost::shared_ptr< std::map< std::string, boost::any > &()> dll_handle
Definition: virtual_constructors.hh:19
Definition: abstract_factory.hh:46
Definition: abstract_factory.hh:26
Definition: abstract_factory.hh:17
Definition: abstract_factory.hh:57