1 #ifndef _SIGX_SIGNAL_BASE_HPP_
2 #define _SIGX_SIGNAL_BASE_HPP_
25 #include <sigxconfig.h>
64 std::pair<connection_wrapper, std::tr1::shared_ptr<sigc_connection_ptr> >
65 prepare_connection(
const tunnel_base& _A_tunnel)
const;
71 template<
typename T_functor,
typename T_functor_conn_handler>
72 connection_wrapper connect(
const T_functor& _A_func,
const T_functor_conn_handler& _A_func_conn_handler)
const;
83 template<
typename T_functor,
typename T_functor_conn_handler>
95 SIGX_STATIC_ASSERT((sigc::is_base_and_derived<tunnel_base, typename auto_tunneler_t::functor_type>::value ==
true));
97 typename auto_tunneler_t::functor_type functor2connect =
98 auto_tunneler_t::auto_open_tunnel(_A_func);
101 functor2connect.activate_validity_tracking();
103 const std::pair<connection_wrapper, std::tr1::shared_ptr<sigc_connection_ptr> >& ret =
112 _A_func_conn_handler,
133 sigc::exception_catch(functor2connect,
157 #endif // end file guard