//---------------------------------------------------------------------------
// $Id$
//
-// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
//
// This file is subject to QPL and may not be distributed
// without copyright and license information. Please refer
* non-member or static member
* functions with no arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
+ spawn (RT (*fun_ptr)()) DEAL_II_DEPRECATED;
+
+
template <typename RT>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
* function for member functions with
* no arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
+ spawn (C &c, RT (C::*fun_ptr)()) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
* const member functions with no
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
+ spawn (const C &c, RT (C::*fun_ptr)() const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<>,0>
* non-member or static member
* functions with 1 argument.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename Arg1>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
+ spawn (RT (*fun_ptr)(Arg1)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename Arg1>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
* function for member functions with
* 1 argument.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C, typename Arg1>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C, typename Arg1>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
* const member functions with 1
* argument.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C, typename Arg1>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C, typename Arg1>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1>,1>
* non-member or static member
* functions with 2 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename Arg1, typename Arg2>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
+ spawn (RT (*fun_ptr)(Arg1,Arg2)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename Arg1, typename Arg2>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
* function for member functions with
* 2 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C, typename Arg1, typename Arg2>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C, typename Arg1, typename Arg2>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
* const member functions with 2
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C, typename Arg1, typename Arg2>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C, typename Arg1, typename Arg2>
inline
internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2>,2>
* non-member or static member
* functions with 3 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3>,3>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3>
inline
* function for member functions with
* 3 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3>,3>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3>
inline
* const member functions with 3
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3>,3>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3>
inline
* non-member or static member
* functions with 4 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3, typename Arg4>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4>,4>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3, typename Arg4>
inline
* function for member functions with
* 4 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3, typename Arg4>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4>,4>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3, typename Arg4>
inline
* const member functions with 4
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3, typename Arg4>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4>,4>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3, typename Arg4>
inline
* non-member or static member
* functions with 5 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5>,5>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5>
* function for member functions with
* 5 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5>,5>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5>
* const member functions with 5
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5>,5>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5>
* non-member or static member
* functions with 6 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5, Arg6>,6>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6>
* function for member functions with
* 6 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5, Arg6>,6>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6>
* const member functions with 6
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6>
+ inline
+ internal::fun_encapsulator<RT,
+ std_cxx1x::tuple<Arg1, Arg2, Arg3, Arg4, Arg5, Arg6>,6>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6>
* non-member or static member
* functions with 7 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6, Arg7>,7>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6,Arg7)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* function for member functions with
* 7 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6, Arg7>,7>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6,Arg7)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* const member functions with 7
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7>
+ inline
+ internal::fun_encapsulator<RT,
+ std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6, Arg7>,7>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,Arg6,Arg7) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* non-member or static member
* functions with 8 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8>,8>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* function for member functions with
* 8 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8>,8>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* const member functions with 8
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8>
+ inline
+ internal::fun_encapsulator<RT,
+ std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8>,8>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* non-member or static member
* functions with 9 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8, typename Arg9>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8, Arg9>,9>
+ spawn (RT (*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8,Arg9)) DEAL_II_DEPRECATED;
+
+
template <typename RT,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* function for member functions with
* 9 arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8, typename Arg9>
+ inline
+ internal::fun_encapsulator<RT,std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8, Arg9>,9>
+ spawn (C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8,Arg9)) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,
* const member functions with 9
* arguments.
*
- * @deprecated
+ * @deprecated Use new_thread() instead.
*/
+ template <typename RT, typename C,
+ typename Arg1, typename Arg2, typename Arg3,
+ typename Arg4, typename Arg5, typename Arg6,
+ typename Arg7, typename Arg8, typename Arg9>
+ inline
+ internal::fun_encapsulator<RT,
+ std_cxx1x::tuple<Arg1, Arg2, Arg3,
+ Arg4, Arg5, Arg6,
+ Arg7, Arg8, Arg9>,9>
+ spawn (const C &c, RT (C::*fun_ptr)(Arg1,Arg2,Arg3,Arg4,Arg5,
+ Arg6,Arg7,Arg8,Arg9) const) DEAL_II_DEPRECATED;
+
+
template <typename RT, typename C,
typename Arg1, typename Arg2, typename Arg3,
typename Arg4, typename Arg5, typename Arg6,